67 lines
2.3 KiB
Batchfile
67 lines
2.3 KiB
Batchfile
:: Copyright 2021 The Android Open Source Project
|
|
::
|
|
:: Licensed under the Apache License, Version 2.0 (the "License");
|
|
:: you may not use this file except in compliance with the License.
|
|
:: You may obtain a copy of the License at
|
|
::
|
|
:: http://www.apache.org/licenses/LICENSE-2.0
|
|
::
|
|
:: Unless required by applicable law or agreed to in writing, software
|
|
:: distributed under the License is distributed on an "AS IS" BASIS,
|
|
:: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
:: See the License for the specific language governing permissions and
|
|
:: limitations under the License.
|
|
|
|
:: Expected arguments:
|
|
:: %1 = python_src
|
|
:: %2 = dest_dir
|
|
|
|
setlocal
|
|
set PYTHON_SRC=%1
|
|
set DEST=%2
|
|
|
|
cd %PYTHON_SRC%
|
|
rmdir /s/q %DEST% 2>NUL
|
|
md %DEST%
|
|
if %ERRORLEVEL% neq 0 goto :end
|
|
|
|
:: Deletes Android.bp or it will be packaged.
|
|
del Lib\Android.bp
|
|
if %ERRORLEVEL% neq 0 goto :end
|
|
|
|
echo ## Running prepare_windows_externals.py to configure XML files and build libffi...
|
|
py -3 %PYTHON_SRC%\kokoro\prepare_windows_externals.py
|
|
|
|
:: Find msbuild.exe. (The batch file sets %MSBUILD%.)
|
|
call %PYTHON_SRC%\PCbuild\find_msbuild.bat
|
|
if %ERRORLEVEL% neq 0 goto :end
|
|
|
|
:: Avoid calling PCbuild\build.bat directly because that script either downloads externals or
|
|
:: disables them, and we need to specify their locations. The batch file mostly reduces to this one
|
|
:: msbuild invocation.
|
|
echo ## Building python...
|
|
%MSBUILD% "%PYTHON_SRC%\PCbuild\pcbuild.proj" ^
|
|
-target:Build -maxCpuCount -nologo -verbosity:minimal -clp:summary ^
|
|
-property:Configuration=Release ^
|
|
-property:Platform=x64 ^
|
|
-property:IncludeExternals=true ^
|
|
-property:IncludeCTypes=true ^
|
|
-property:IncludeSSL=false ^
|
|
-property:IncludeTkinter=false ^
|
|
-property:UseTestMarker= ^
|
|
-property:GIT=git.exe
|
|
if %ERRORLEVEL% neq 0 goto :end
|
|
|
|
echo ## Packaging python...
|
|
set OUT_ARCHIVE=%DEST%\python3-windows-%KOKORO_BUILD_ID%.zip
|
|
PCBuild\amd64\python.exe PC\layout --zip %OUT_ARCHIVE% --include-dev
|
|
if %ERRORLEVEL% neq 0 goto :end
|
|
|
|
:: Linux/Darwin Python puts the LICENSE.txt file in lib/pythonX.Y with the Python libraries. For
|
|
:: consistency, move LICENSE.txt into Lib, which has the Python libraries on Windows.
|
|
echo ## Moving LICENSE.txt to Lib\LICENSE.txt...
|
|
7z rn %OUT_ARCHIVE% LICENSE.txt Lib\LICENSE.txt
|
|
|
|
:end
|
|
exit /b %ERRORLEVEL%
|