53 lines
1.6 KiB
Bash
Executable File
53 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
ZIGDIR="$(pwd)"
|
|
CACHE_BASENAME="llvm+clang-8.0.0-freebsd-x86_64-release"
|
|
PREFIX="$HOME/$CACHE_BASENAME"
|
|
TMPDIR="$HOME/tmpz"
|
|
JOBS="-j$(sysctl -n hw.ncpu)"
|
|
|
|
rm -rf $PREFIX
|
|
rm -rf $TMPDIR
|
|
mkdir $TMPDIR
|
|
|
|
cd $HOME
|
|
wget -nv "https://ziglang.org/builds/$CACHE_BASENAME.tar.xz"
|
|
tar xf "$CACHE_BASENAME.tar.xz"
|
|
|
|
cd $ZIGDIR
|
|
mkdir build
|
|
cd build
|
|
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$PREFIX -DCMAKE_INSTALL_PREFIX=$(pwd)/release -DZIG_STATIC=ON
|
|
make $JOBS install
|
|
# TODO test everything. I just made it short to test the part after this
|
|
release/bin/zig build --build-file ../build.zig test-behavior -Dskip-release
|
|
|
|
if [ -f ~/.s3cfg ]; then
|
|
mv ../LICENSE release/
|
|
mv ../zig-cache/langref.html release/
|
|
mv release/bin/zig release/
|
|
rmdir release/bin
|
|
|
|
GITBRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
VERSION=$(release/zig version)
|
|
DIRNAME="zig-freebsd-x86_64-$VERSION"
|
|
TARBALL="$DIRNAME.tar.xz"
|
|
mv release "$DIRNAME"
|
|
tar cfJ "$TARBALL" "$DIRNAME"
|
|
|
|
s3cmd put -P "$TARBALL" s3://ziglang.org/builds/
|
|
touch empty
|
|
s3cmd put -P empty s3://ziglang.org/builds/zig-freebsd-x86_64-$GITBRANCH.tar.xz --add-header="Cache-Control: max-age=0, must-revalidate" --add-header="x-amz-website-redirect-location:/builds/$TARBALL"
|
|
|
|
SHASUM=$(shasum -a 256 $TARBALL | cut '-d ' -f1)
|
|
BYTESIZE=$(wc -c < $TARBALL)
|
|
|
|
JSONFILE="freebsd-$GITBRANCH.json"
|
|
touch $JSONFILE
|
|
echo "{\"tarball\": \"$TARBALL\"," >>$JSONFILE
|
|
echo "\"shasum\": \"$SHASUM\"," >>$JSONFILE
|
|
echo "\"size\": \"$BYTESIZE\"}" >>$JSONFILE
|
|
|
|
s3cmd put -P "$JSONFILE" s3://ziglang.org/builds/$JSONFILE
|
|
fi
|