|
1 | | -@rem ########################################################################## |
2 | | -@rem |
3 | | -@rem Builds artifacts for x86_64 into %WORKSPACE%\artifacts\ |
4 | | -@rem |
5 | | -@rem ########################################################################## |
6 | | - |
7 | | -type c:\VERSION |
8 | | - |
9 | | -@rem Enter repo root |
10 | | -cd /d %~dp0\..\.. |
11 | | - |
12 | | -set WORKSPACE=T:\src\github\grpc-java |
13 | | -set ESCWORKSPACE=%WORKSPACE:\=\\% |
14 | | - |
15 | | -@rem Clear JAVA_HOME to prevent a different Java version from being used |
16 | | -set JAVA_HOME= |
17 | | -set PATH=C:\Program Files\OpenJDK\openjdk-11.0.12_7\bin;%PATH% |
18 | | - |
19 | | -mkdir grpc-java-helper64 |
20 | | -cd grpc-java-helper64 |
21 | | -call "%VS140COMNTOOLS%\..\..\VC\bin\amd64\vcvars64.bat" || exit /b 1 |
22 | | -call "%WORKSPACE%\buildscripts\make_dependencies.bat" || exit /b 1 |
23 | | - |
24 | | -cd "%WORKSPACE%" |
25 | | - |
26 | | -SET TARGET_ARCH=x86_64 |
27 | | -SET FAIL_ON_WARNINGS=true |
28 | | -SET VC_PROTOBUF_LIBS=%ESCWORKSPACE%\\grpc-java-helper64\\protobuf-%PROTOBUF_VER%\\build\\Release |
29 | | -SET VC_PROTOBUF_INCLUDE=%ESCWORKSPACE%\\grpc-java-helper64\\protobuf-%PROTOBUF_VER%\\build\\include |
30 | | -SET GRADLE_FLAGS=-PtargetArch=%TARGET_ARCH% -PfailOnWarnings=%FAIL_ON_WARNINGS% -PvcProtobufLibs=%VC_PROTOBUF_LIBS% -PvcProtobufInclude=%VC_PROTOBUF_INCLUDE% -PskipAndroid=true |
31 | | -SET GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx1g'" |
32 | | - |
33 | | -@rem make sure no daemons have any files open |
34 | | -cmd.exe /C "%WORKSPACE%\gradlew.bat --stop" |
35 | | - |
36 | | -cmd.exe /C "%WORKSPACE%\gradlew.bat %GRADLE_FLAGS% -Dorg.gradle.parallel=false -PrepositoryDir=%WORKSPACE%\artifacts grpc-compiler:clean grpc-compiler:build grpc-compiler:publish" || exit /b 1 |
| 1 | +@rem ########################################################################## |
| 2 | +@rem |
| 3 | +@rem Builds artifacts for x86_64 into %WORKSPACE%\artifacts\ |
| 4 | +@rem |
| 5 | +@rem ########################################################################## |
| 6 | + |
| 7 | +type c:\VERSION |
| 8 | + |
| 9 | +@rem Enter repo root |
| 10 | +cd /d %~dp0\..\.. |
| 11 | + |
| 12 | +set WORKSPACE=T:\src\github\grpc-java |
| 13 | +set ESCWORKSPACE=%WORKSPACE:\=\\% |
| 14 | + |
| 15 | +@rem Clear JAVA_HOME to prevent a different Java version from being used |
| 16 | +set JAVA_HOME= |
| 17 | + |
| 18 | +mkdir grpc-java-helper64 |
| 19 | +cd grpc-java-helper64 |
| 20 | +call "%VS170COMNTOOLS%\..\..\VC\Auxiliary\Build\vcvars64.bat" || exit /b 1 |
| 21 | +call "%WORKSPACE%\buildscripts\make_dependencies.bat" || exit /b 1 |
| 22 | + |
| 23 | +cd "%WORKSPACE%" |
| 24 | + |
| 25 | +SET TARGET_ARCH=x86_64 |
| 26 | +SET FAIL_ON_WARNINGS=true |
| 27 | +SET PROTOBUF_VER=22.5 |
| 28 | +SET PKG_CONFIG_PATH=%ESCWORKSPACE%\\grpc-java-helper64\\protobuf-%PROTOBUF_VER%\\build\\protobuf-%PROTOBUF_VER%\\lib\\pkgconfig |
| 29 | +SET VC_PROTOBUF_LIB_PATHS=%ESCWORKSPACE%\\grpc-java-helper64\\protobuf-%PROTOBUF_VER%\\build\\protobuf-%PROTOBUF_VER%\\lib |
| 30 | +SET VC_PROTOBUF_INCLUDE=%ESCWORKSPACE%\\grpc-java-helper64\\protobuf-%PROTOBUF_VER%\\build\\protobuf-%PROTOBUF_VER%\\include |
| 31 | +call :Get_Libs |
| 32 | +SET GRADLE_FLAGS=-PtargetArch=%TARGET_ARCH% -PfailOnWarnings=%FAIL_ON_WARNINGS% -PvcProtobufLibPaths=%VC_PROTOBUF_LIB_PATHS% -PvcProtobufInclude=%VC_PROTOBUF_INCLUDE% -PskipAndroid=true |
| 33 | +SET GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx1g'" |
| 34 | + |
| 35 | +@rem make sure no daemons have any files open |
| 36 | +cmd.exe /C "%WORKSPACE%\gradlew.bat --stop" |
| 37 | + |
| 38 | +cmd.exe /C "%WORKSPACE%\gradlew.bat %GRADLE_FLAGS% -Dorg.gradle.parallel=false -PrepositoryDir=%WORKSPACE%\artifacts grpc-compiler:clean grpc-compiler:build grpc-compiler:publish" || exit /b 1 |
| 39 | + |
| 40 | +goto :eof |
| 41 | +:Get_Libs |
| 42 | +SetLocal EnableDelayedExpansion |
| 43 | +set "libs_list=" |
| 44 | +for /f "tokens=*" %%a in ('pkg-config --libs protobuf') do ( |
| 45 | + for %%b in (%%a) do ( |
| 46 | + set lib=%%b |
| 47 | + set libfirst2char=!lib:~0,2! |
| 48 | + if !libfirst2char!==-l ( |
| 49 | + @rem remove the leading -l |
| 50 | + set lib=!lib:~2! |
| 51 | + @rem remove spaces |
| 52 | + set lib=!lib: =! |
| 53 | + @rem Because protobuf is specified as libprotobuf and elsewhere |
| 54 | + if !lib! NEQ protobuf ( |
| 55 | + set lib=!lib!.lib, |
| 56 | + set libs_list=!libs_list! !lib! |
| 57 | + ) |
| 58 | + ) |
| 59 | + ) |
| 60 | +) |
| 61 | +EndLocal & set "VC_PROTOBUF_LIBS=%libs_list%" |
| 62 | +exit /b 0 |
| 63 | + |
0 commit comments