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 fail-fast: false
matrix: matrix:
config: config:
- name: windows - name: windows-x64
os: windows-2022 os: windows-2022
runner: windows-2022
arch: x86_64
preinstall: choco install ninja nasm preinstall: choco install ninja nasm
vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat
cflags: /O2 /DNDEBUG cflags: /O2 /DNDEBUG
@ -161,21 +163,80 @@ jobs:
grpc_cmake: >- grpc_cmake: >-
"-DgRPC_MSVC_STATIC_RUNTIME=ON" "-DgRPC_MSVC_STATIC_RUNTIME=ON"
binary_extension: ".exe" 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 os: macos-13
runner: macos-13
arch: x86_64
preinstall: brew install ninja zlib p7zip preinstall: brew install ninja zlib p7zip
cflags: -O3 -gline-tables-only -DNDEBUG cflags: -O3 -gline-tables-only -DNDEBUG
cmake: >- cmake: >-
"-DCMAKE_C_COMPILER=clang" "-DCMAKE_C_COMPILER=clang"
"-DCMAKE_CXX_COMPILER=clang++" "-DCMAKE_CXX_COMPILER=clang++"
"-DLLVM_ENABLE_ZLIB=FORCE_ON" "-DLLVM_ENABLE_ZLIB=FORCE_ON"
"-DCMAKE_OSX_ARCHITECTURES=x86_64;arm64" "-DCMAKE_OSX_ARCHITECTURES=x86_64"
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13" "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13"
# BoringSSL doesn't support universal binaries when building with ASM.
grpc_cmake: >- grpc_cmake: >-
"-DOPENSSL_NO_ASM=ON" "-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 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 container: ubuntu:20.04
preinstall: >- preinstall: >-
apt-get update && apt-get update &&
@ -198,7 +259,7 @@ jobs:
# libraries. All other gRPC dependencies can be built from sources. # libraries. All other gRPC dependencies can be built from sources.
grpc_cmake: >- grpc_cmake: >-
"-DgRPC_CARES_PROVIDER=package" "-DgRPC_CARES_PROVIDER=package"
runs-on: ${{ matrix.config.os }} runs-on: ${{ matrix.config.runner }}
container: ${{ matrix.config.container }} container: ${{ matrix.config.container }}
steps: steps:
- name: Clone scripts - name: Clone scripts