Merge pull request #31 from TheBlueMatt/main v0.0.98.1
authorMatt Corallo <649246+TheBlueMatt@users.noreply.github.com>
Tue, 15 Jun 2021 18:12:25 +0000 (18:12 +0000)
committerGitHub <noreply@github.com>
Tue, 15 Jun 2021 18:12:25 +0000 (18:12 +0000)
Fix aarch64 targeting and print an error if its disabled

.github/workflows/build.yml
genbindings.sh

index bf89b9f197f75533ddd074dfa3f8d2478c900c43..98f0e92bb269d40fe234838080112da5d30617eb 100644 (file)
@@ -53,21 +53,15 @@ jobs:
       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
index 812819dcbd3f98f98ab7195bfa8f9fcb85ad4647..fd1b7851981f332b2173f73a0dfe8a92421ded55 100755 (executable)
@@ -156,11 +156,13 @@ BASE_CFLAGS="$BASE_CFLAGS -frandom-seed=42"
 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