name: "TON aarch64 Linux binaries" on: [workflow_dispatch,workflow_call] jobs: build: runs-on: ubuntu-22.04 steps: - run: | sudo apt update sudo apt install -y apt-utils sudo apt install -q -y qemu-system-aarch64 qemu-efi binfmt-support qemu-user-static - uses: actions/checkout@v3 with: submodules: 'recursive' - uses: cachix/install-nix-action@v18 with: extra_nix_config: | access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} - name: Compile run: nix build .?submodules=1#packages.aarch64-linux.ton-oldglibc_staticbinaries --print-build-logs --system aarch64-linux -o result-aarch64 - name: Copy binaries run: | ls -lart mkdir artifacts cp $PWD/result-aarch64-linux/bin/* artifacts/ chmod +x artifacts/* cp $PWD/result-aarch64-linux/lib/libtonlibjson.so.0.5 artifacts/libtonlibjson.so cp $PWD/result-aarch64-linux/lib/libemulator.so artifacts/ cp -R crypto/smartcont artifacts/ cp -R crypto/fift/lib artifacts/ - name: Simple binaries test run: | sudo mv /nix/store /nix/store2 artifacts/validator-engine -V artifacts/lite-client -V artifacts/fift -V artifacts/func -V - name: Upload artifacts uses: actions/upload-artifact@master with: name: ton-aarch64-linux-binaries path: artifacts