| ... | ... | @@ -0,0 +1,49 @@ |
| 1 | #!/bin/sh |
| 2 | |
| 3 | set -x |
| 4 | set -e |
| 5 | |
| 6 | TRIPLEARCH="$0" |
| 7 | TRIPLEOS="$1" |
| 8 | TRIPLEABI="$2" |
| 9 | BUILDDIR="$(pwd)" |
| 10 | DISTDIR="$(pwd)/dist" |
| 11 | |
| 12 | apk update |
| 13 | apk add gcc g++ cmake make libc-dev binutils libstdc++ py3-pip clang-static llvm9-static xz llvm9-dev clang-dev zlib-static libxml2-dev |
| 14 | pip3 install s3cmd |
| 15 | |
| 16 | mkdir build |
| 17 | cd build |
| 18 | cmake .. -DCMAKE_BUILD_TYPE=Release "-DCMAKE_INSTALL_PREFIX=$DISTDIR" -DZIG_STATIC=ON |
| 19 | |
| 20 | make -j$(nproc) install |
| 21 | ./zig build test |
| 22 | |
| 23 | if [ -n "$DRONE_PULL_REQUEST" ]; then |
| 24 | mv ../LICENSE "$DISTDIR/" |
| 25 | mv ../zig-cache/langref.html "$DISTDIR/" |
| 26 | mv "$DISTDIR/bin/zig" "$DISTDIR/" |
| 27 | rmdir "$DISTDIR/bin" |
| 28 | |
| 29 | GITBRANCH="$DRONE_BRANCH" |
| 30 | VERSION=$("$DISTDIR/zig" version) |
| 31 | DIRNAME="zig-$TRIPLEOS-$TRIPLEARCH-$VERSION" |
| 32 | TARBALL="$DIRNAME.tar.xz" |
| 33 | mv "$DISTDIR" "$DIRNAME" |
| 34 | tar cfJ "$TARBALL" "$DIRNAME" |
| 35 | |
| 36 | s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" "$TARBALL" s3://ziglang.org/builds/ |
| 37 | |
| 38 | SHASUM=$(shasum -a 256 $TARBALL | cut '-d ' -f1) |
| 39 | BYTESIZE=$(wc -c < $TARBALL) |
| 40 | |
| 41 | JSONFILE="$TRIPLEARCH-$TRIPLEOS-$GITBRANCH.json" |
| 42 | touch $JSONFILE |
| 43 | echo "{\"tarball\": \"$TARBALL\"," >>$JSONFILE |
| 44 | echo "\"shasum\": \"$SHASUM\"," >>$JSONFILE |
| 45 | echo "\"size\": \"$BYTESIZE\"}" >>$JSONFILE |
| 46 | |
| 47 | s3cmd put -P --add-header="Cache-Control: max-age=0, must-revalidate" "$JSONFILE" "s3://ziglang.org/builds/$JSONFILE" |
| 48 | s3cmd put -P "$JSONFILE" "s3://ziglang.org/builds/$TRIPLEARCH-$TRIPLEOS-$VERSION.json" |
| 49 | fi |