Protocol Buffers - Google's data interchange format (grpc依赖)
https://developers.google.com/protocol-buffers/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.8 KiB
62 lines
1.8 KiB
setlocal |
|
|
|
if %PYTHON%==C:\python35_32bit set generator=Visual Studio 14 |
|
if %PYTHON%==C:\python35_32bit set vcplatform=Win32 |
|
|
|
if %PYTHON%==C:\python35 set generator=Visual Studio 14 Win64 |
|
if %PYTHON%==C:\python35 set vcplatform=x64 |
|
|
|
if %PYTHON%==C:\python36_32bit set generator=Visual Studio 14 |
|
if %PYTHON%==C:\python36_32bit set vcplatform=Win32 |
|
|
|
if %PYTHON%==C:\python36 set generator=Visual Studio 14 Win64 |
|
if %PYTHON%==C:\python36 set vcplatform=x64 |
|
|
|
REM Prepend newly installed Python to the PATH of this build (this cannot be |
|
REM done from inside the powershell script as it would require to restart |
|
REM the parent CMD process). |
|
SET PATH=%PYTHON%;%PYTHON%\Scripts;%OLD_PATH% |
|
python -m pip install -U pip |
|
pip install wheel |
|
|
|
REM Check that we have the expected version and architecture for Python |
|
python --version |
|
python -c "import struct; print(struct.calcsize('P') * 8)" |
|
|
|
rmdir /s/q protobuf |
|
git clone https://github.com/google/protobuf.git |
|
|
|
REM Checkout release commit |
|
cd %REPO_DIR% |
|
git checkout %BUILD_COMMIT% |
|
|
|
REM ====================== |
|
REM Build Protobuf Library |
|
REM ====================== |
|
|
|
mkdir src\.libs |
|
|
|
mkdir vcprojects |
|
pushd vcprojects |
|
cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% -Dprotobuf_UNICODE=%UNICODE% -Dprotobuf_BUILD_TESTS=OFF ../cmake |
|
msbuild protobuf.sln /p:Platform=%vcplatform% /p:Configuration=Release |
|
dir /s /b |
|
popd |
|
copy vcprojects\Release\libprotobuf.lib src\.libs\libprotobuf.a |
|
copy vcprojects\Release\libprotobuf-lite.lib src\.libs\libprotobuf-lite.a |
|
SET PATH=%cd%\vcprojects\Release;%PATH% |
|
dir vcprojects\Release |
|
|
|
REM ====================== |
|
REM Build python library |
|
REM ====================== |
|
|
|
cd python |
|
|
|
REM sed -i 's/\ extra_compile_args\ =\ \[\]/\ extra_compile_args\ =\ \[\'\/MT\'\]/g' setup.py |
|
|
|
python setup.py bdist_wheel --cpp_implementation --compile_static_extension |
|
dir dist |
|
copy dist\* %ARTIFACT_DIR% |
|
dir %ARTIFACT_DIR% |
|
cd ..\..
|
|
|