Add multi-target cross-compilation support
This commit is contained in:
parent
88bfd0fa5f
commit
ae2afc0ffd
|
|
@ -4,14 +4,26 @@ set -eu
|
|||
NAME="shout"
|
||||
BECAUSE="$HOME/dev/projects/because.sh"
|
||||
|
||||
# Build release
|
||||
cargo build --release
|
||||
TARGETS="
|
||||
aarch64-apple-darwin
|
||||
x86_64-unknown-linux-gnu
|
||||
aarch64-unknown-linux-gnu
|
||||
"
|
||||
|
||||
# Compress
|
||||
gzip -c target/release/"$NAME" > target/release/"$NAME"-aarch64-apple-darwin.gz
|
||||
for TARGET in $TARGETS; do
|
||||
echo "Building $TARGET..."
|
||||
case "$TARGET" in
|
||||
*-apple-*)
|
||||
cargo build --release --target "$TARGET"
|
||||
;;
|
||||
*)
|
||||
cross build --release --target "$TARGET"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Upload binary
|
||||
"$BECAUSE/scripts/upload" put "$NAME/bin/$NAME-aarch64-apple-darwin.gz" target/release/"$NAME"-aarch64-apple-darwin.gz
|
||||
gzip -c "target/$TARGET/release/$NAME" > "target/release/$NAME-$TARGET.gz"
|
||||
"$BECAUSE/scripts/upload" put "$NAME/bin/$NAME-$TARGET.gz" "target/release/$NAME-$TARGET.gz"
|
||||
done
|
||||
|
||||
# Upload install script + landing page
|
||||
"$BECAUSE/scripts/upload" publish "$NAME"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user