X-Git-Url: http://git.bitcoin.ninja/index.cgi?p=ldk-c-bindings;a=blobdiff_plain;f=.github%2Fworkflows%2Fbuild.yml;h=796a10c99f6bb9a27df60b1040396ee7e535af14;hp=2db5936984a1cbf9c77170372b6be8d9ab5cdcb6;hb=3559b05697ad226c82994bfb6b3d09657d21bbe2;hpb=b25e291110094bb9b59bc05f3f233c1b5d37b6e6 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2db5936..796a10c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,12 +15,17 @@ jobs: run: | apt-get update apt-get -y dist-upgrade - apt-get -y install cargo valgrind lld git g++ clang + apt-get -y install cargo libstd-rust-dev-wasm32 valgrind lld git g++ clang - name: Checkout source code uses: actions/checkout@v2 + with: + fetch-depth: 0 - name: Sanity test bindings against Cargo.toml RL working-directory: lightning-c-bindings - run: cargo check + run: | + # Note that the version tags aren't checked into git + touch src/version.rs + cargo check - name: Install cbindgen run: cargo install --force cbindgen - name: Checkout Rust-Lightning git @@ -43,3 +48,39 @@ jobs: git diff --exit-code fi + osx: + strategy: + matrix: + include: + - platform: macos-10.15 + - platform: macos-11 + runs-on: ${{ matrix.platform }} + env: + TOOLCHAIN: stable + steps: + - name: Install other Rust platforms + run: rustup target install aarch64-apple-darwin + - name: Fetch upstream LLVM/clang snapshot + 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 + echo "Bad hash" + exit 1 + fi + - name: Unpack upstream LLVM+clang and use it by default + run: | + tar xvvf clang+llvm-12.0.0-x86_64-apple-darwin.tar.xz + - name: Checkout source code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Install cbindgen + run: cargo install --force cbindgen + - name: Checkout Rust-Lightning git + run: git clone https://github.com/rust-bitcoin/rust-lightning + - name: Rebuild bindings using Apple clang, and check the sample app builds + links + run: ./genbindings.sh ./rust-lightning true + - name: Rebuild bindings using upstream clang, and check the sample app builds + links + run: | + export PATH=`pwd`/clang+llvm-12.0.0-x86_64-apple-darwin/bin:$PATH + CC=clang ./genbindings.sh ./rust-lightning true