matrix:
include:
- platform: macos-10.15
- - platform: macos-11
+ # MacOS 11 is currently in private preview, we've applied for access
+ # - platform: macos-11
runs-on: ${{ matrix.platform }}
env:
TOOLCHAIN: stable
steps:
- name: Install other Rust platforms
run: rustup target install aarch64-apple-darwin
- - name: Cache upstream LLVM/clang
- id: cache-llvm
- uses: actions/cache@v2
- with:
- path: clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz
- key: clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz
- name: Fetch upstream LLVM/clang snapshot
- if: steps.cache-llvm.outputs.cache-hit != 'true'
run: |
wget -O clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.0/clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz
if [ "$(shasum -a 256 clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz | awk '{ print $1 }')" != "7bc2259bf75c003f644882460fc8e844ddb23b27236fe43a2787870a4cd8ab50" ]; then
LOCAL_CFLAGS="-Wall -Wno-nullability-completeness -pthread -Iinclude/"
if [ "$HOST_PLATFORM" = "host: x86_64-apple-darwin" ]; then
- LOCAL_CFLAGS="$LOCAL_CFLAGS -isysroot$(xcrun --show-sdk-path)"
- BASE_CFLAGS="$BASE_CFLAGS -isysroot$(xcrun --show-sdk-path)"
+ export MACOSX_DEPLOYMENT_TARGET=10.9
+ LOCAL_CFLAGS="$LOCAL_CFLAGS -isysroot$(xcrun --show-sdk-path) -mmacosx-version-min=10.9"
+ BASE_CFLAGS="$BASE_CFLAGS -isysroot$(xcrun --show-sdk-path) -mmacosx-version-min=10.9"
# Targeting aarch64 appears to be supported only starting with Big Sur, so check it before use
- clang -o /dev/null -target=aarch64-apple-darwin -mcpu=apple-a14 genbindings_path_map_test_file.c > /dev/null 2>&1 &&
- export CFLAGS_aarch64_apple_darwin="$BASE_CFLAGS -target=aarch64-apple-darwin -mcpu=apple-a14"
+ clang -o /dev/null $BASE_CFLAGS --target=aarch64-apple-darwin -mcpu=apple-a14 genbindings_path_map_test_file.c &&
+ export CFLAGS_aarch64_apple_darwin="$BASE_CFLAGS --target=aarch64-apple-darwin -mcpu=apple-a14" ||
+ echo "WARNING: Can not build targeting aarch64-apple-darin. Upgrade to Big Sur or try upstream clang"
fi
rm genbindings_path_map_test_file.c