2020-01-28 13:19:24 +03:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
set -euxo pipefail
|
|
|
|
|
2021-11-22 03:55:21 +03:00
|
|
|
VERSION=${REF#"refs/tags/"}
|
2021-12-05 13:51:15 +03:00
|
|
|
DIST=`pwd`/dist
|
2020-01-28 13:19:24 +03:00
|
|
|
|
2021-11-22 03:55:21 +03:00
|
|
|
echo "Packaging just $VERSION for $TARGET..."
|
2020-01-28 13:19:24 +03:00
|
|
|
|
|
|
|
test -f Cargo.lock || cargo generate-lockfile
|
|
|
|
|
2024-01-26 02:24:31 +03:00
|
|
|
echo "Installing rust toolchain for $TARGET..."
|
|
|
|
rustup target add $TARGET
|
|
|
|
|
2024-03-08 22:43:36 +03:00
|
|
|
if [[ $TARGET == aarch64-unknown-linux-musl ]]; then
|
|
|
|
export CC=aarch64-linux-gnu-gcc
|
|
|
|
fi
|
|
|
|
|
2021-11-22 03:55:21 +03:00
|
|
|
echo "Building just..."
|
|
|
|
RUSTFLAGS="--deny warnings --codegen target-feature=+crt-static $TARGET_RUSTFLAGS" \
|
|
|
|
cargo build --bin just --target $TARGET --release
|
|
|
|
EXECUTABLE=target/$TARGET/release/just
|
2020-01-28 13:19:24 +03:00
|
|
|
|
2022-03-23 06:26:55 +03:00
|
|
|
if [[ $OS == windows-latest ]]; then
|
2021-11-22 03:55:21 +03:00
|
|
|
EXECUTABLE=$EXECUTABLE.exe
|
2021-10-12 03:16:30 +03:00
|
|
|
fi
|
2020-01-28 13:19:24 +03:00
|
|
|
|
|
|
|
echo "Copying release files..."
|
|
|
|
mkdir dist
|
2024-01-12 06:14:36 +03:00
|
|
|
cp -r \
|
2021-11-22 03:55:21 +03:00
|
|
|
$EXECUTABLE \
|
2020-01-28 13:19:24 +03:00
|
|
|
Cargo.lock \
|
|
|
|
Cargo.toml \
|
|
|
|
GRAMMAR.md \
|
|
|
|
LICENSE \
|
2022-02-15 08:54:39 +03:00
|
|
|
README.md \
|
2024-01-12 06:14:36 +03:00
|
|
|
completions \
|
2020-01-28 13:55:30 +03:00
|
|
|
man/just.1 \
|
2021-11-22 03:55:21 +03:00
|
|
|
$DIST
|
2020-01-28 13:19:24 +03:00
|
|
|
|
2021-11-22 03:55:21 +03:00
|
|
|
cd $DIST
|
2020-01-28 13:19:24 +03:00
|
|
|
echo "Creating release archive..."
|
2021-11-22 03:55:21 +03:00
|
|
|
case $OS in
|
2020-01-28 13:19:24 +03:00
|
|
|
ubuntu-latest | macos-latest)
|
2024-09-10 01:43:41 +03:00
|
|
|
ARCHIVE=just-$VERSION-$TARGET.tar.gz
|
2021-11-22 03:55:21 +03:00
|
|
|
tar czf $ARCHIVE *
|
2024-08-28 03:32:20 +03:00
|
|
|
shasum -a 256 $ARCHIVE > $ARCHIVE.sha256sum
|
2024-09-10 01:43:41 +03:00
|
|
|
echo "archive=$DIST/$ARCHIVE" >> $GITHUB_OUTPUT
|
2020-01-28 13:19:24 +03:00
|
|
|
;;
|
2022-03-23 06:26:55 +03:00
|
|
|
windows-latest)
|
2024-09-10 01:43:41 +03:00
|
|
|
ARCHIVE=just-$VERSION-$TARGET.zip
|
2021-11-22 03:55:21 +03:00
|
|
|
7z a $ARCHIVE *
|
2024-08-28 03:32:20 +03:00
|
|
|
sha256sum $ARCHIVE > $ARCHIVE.sha256sum
|
2024-09-10 01:43:41 +03:00
|
|
|
echo "archive=`pwd -W`/$ARCHIVE" >> $GITHUB_OUTPUT
|
2020-01-28 13:19:24 +03:00
|
|
|
;;
|
|
|
|
esac
|