agate

Simple gemini server for static files
git clone https://github.com/mbrubeck/agate.git
Log | Files | Refs | README

release.sh (916B)


      1 #!/bin/bash
      2 # This is used to build cross platform linux binaries for a release in CI.
      3 # Since this is not supervised, abort if anything does not work.
      4 set -e
      5 
      6 sudo apt update
      7 # Cross-compiling needs a linker for the respective platforms. If you are on a Debian-based x86_64 Linux,
      8 # you can install them with:
      9 sudo apt -y install podman gcc-arm-linux-gnueabihf gcc-aarch64-linux-gnu
     10 # Also install cross compilation tool for cargo
     11 cargo install cross
     12 
     13 for i in x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu arm-unknown-linux-gnueabihf armv7-unknown-linux-gnueabihf
     14 do
     15 	cross build --verbose --release --target $i
     16 	cp target/$i/release/agate agate.$i
     17 done
     18 
     19 # Strip all the binaries.
     20 strip agate.x86_64-unknown-linux-gnu
     21 aarch64-linux-gnu-strip agate.aarch64-unknown-linux-gnu
     22 arm-linux-gnueabihf-strip agate.arm-unknown-linux-gnueabihf agate.armv7-unknown-linux-gnueabihf
     23 
     24 # compress the binaries.
     25 gzip agate.*