This commit is contained in:
Kendell R 2025-08-20 14:57:47 -07:00 committed by GitHub
parent 30a8f963f7
commit 99e244541d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -146,8 +146,10 @@ jobs:
fail-fast: false
matrix:
config:
- name: windows
- name: windows-x64
os: windows-2022
runner: windows-2022
arch: x86_64
preinstall: choco install ninja nasm
vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat
cflags: /O2 /DNDEBUG
@ -161,21 +163,80 @@ jobs:
grpc_cmake: >-
"-DgRPC_MSVC_STATIC_RUNTIME=ON"
binary_extension: ".exe"
- name: mac
- name: windows-arm64
os: windows-2022
runner: windows-2022
arch: aarch64
preinstall: choco install ninja nasm
vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsarm64.bat
cflags: /O2 /DNDEBUG
cmake: >-
"-DCMAKE_C_COMPILER=cl"
"-DCMAKE_CXX_COMPILER=cl"
"-DLLVM_ENABLE_ZLIB=OFF"
"-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded"
"-DLLVM_ENABLE_PDB=ON"
"-DLLVM_PARALLEL_LINK_JOBS=1"
"-DCMAKE_GENERATOR_PLATFORM=ARM64"
grpc_cmake: >-
"-DgRPC_MSVC_STATIC_RUNTIME=ON"
binary_extension: ".exe"
- name: mac-x64
os: macos-13
runner: macos-13
arch: x86_64
preinstall: brew install ninja zlib p7zip
cflags: -O3 -gline-tables-only -DNDEBUG
cmake: >-
"-DCMAKE_C_COMPILER=clang"
"-DCMAKE_CXX_COMPILER=clang++"
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
"-DCMAKE_OSX_ARCHITECTURES=x86_64;arm64"
"-DCMAKE_OSX_ARCHITECTURES=x86_64"
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13"
# BoringSSL doesn't support universal binaries when building with ASM.
grpc_cmake: >-
"-DOPENSSL_NO_ASM=ON"
- name: linux
- name: mac-arm64
os: macos-13
runner: macos-13
arch: aarch64
preinstall: brew install ninja zlib p7zip
cflags: -O3 -gline-tables-only -DNDEBUG
cmake: >-
"-DCMAKE_C_COMPILER=clang"
"-DCMAKE_CXX_COMPILER=clang++"
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
"-DCMAKE_OSX_ARCHITECTURES=arm64"
"-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0"
grpc_cmake: >-
"-DOPENSSL_NO_ASM=ON"
- name: linux-x64
os: ubuntu-latest
runner: ubuntu-latest
arch: x86_64
container: ubuntu:20.04
preinstall: >-
apt-get update &&
apt-get install -y ninja-build libz-dev libc-ares-dev wget clang-10
software-properties-common p7zip-full curl &&
add-apt-repository ppa:git-core/ppa &&
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - &&
apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' &&
apt-get update &&
apt-get install -y git cmake python3.8 python3.8-dev
cflags: -O3 -gline-tables-only -DNDEBUG -include $GITHUB_WORKSPACE/.github/workflows/lib_compat.h
cmake: >-
"-DCMAKE_C_COMPILER=clang-10"
"-DCMAKE_CXX_COMPILER=clang++-10"
"-DCMAKE_EXE_LINKER_FLAGS_RELEASE=-static-libgcc -Wl,--compress-debug-sections=zlib"
"-DLLVM_STATIC_LINK_CXX_STDLIB=ON"
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
"-DCMAKE_PROJECT_INCLUDE=$GITHUB_WORKSPACE/.github/workflows/linux-static-deps.cmake"
grpc_cmake: >-
"-DgRPC_CARES_PROVIDER=package"
- name: linux-arm64
os: ubuntu-latest
runner: ubuntu-24.04-arm64
arch: aarch64
container: ubuntu:20.04
preinstall: >-
apt-get update &&
@ -198,7 +259,7 @@ jobs:
# libraries. All other gRPC dependencies can be built from sources.
grpc_cmake: >-
"-DgRPC_CARES_PROVIDER=package"
runs-on: ${{ matrix.config.os }}
runs-on: ${{ matrix.config.runner }}
container: ${{ matrix.config.container }}
steps:
- name: Clone scripts