From acec3e78abfaa195a1dcb4c16c6117f104a4d2ed Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Tue, 20 Feb 2024 18:09:54 +0100 Subject: [PATCH] Add zig version helper script --- build.zig.version | 1 + zig | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 build.zig.version create mode 100755 zig diff --git a/build.zig.version b/build.zig.version new file mode 100644 index 0000000..92dffd8 --- /dev/null +++ b/build.zig.version @@ -0,0 +1 @@ +0.12.0-dev.2817+7461309b7 diff --git a/zig b/zig new file mode 100755 index 0000000..56600cd --- /dev/null +++ b/zig @@ -0,0 +1,37 @@ +#!/bin/bash +set -e + +ARCH=$(uname -m) + +BASEDIR="$(cd "$(dirname "$0")" && pwd)" +ZIGDIR=$BASEDIR/.cache/zig +VERSION=$(< build.zig.version) +ZIGVER="zig-linux-$ARCH-$VERSION" +ZIG=$ZIGDIR/$ZIGVER/zig + +if [ "$1" == "update" ] ; then + curl -L --silent https://ziglang.org/download/index.json | jq -r '.master | .version' > build.zig.version + NEWVERSION=$(< build.zig.version) + + if [ "$VERSION" != "$NEWVERSION" ] ; then + echo zig version updated from $VERSION to $NEWVERSION + exit 0 + fi + echo zig version $VERSION is up-to-date + exit 0 +fi + +get_zig() { + ( + mkdir -p "$ZIGDIR" + cd "$ZIGDIR" + TARBALL="https://ziglang.org/builds/$ZIGVER.tar.xz" + + if [ ! -d "$ZIGVER" ] ; then + curl "$TARBALL" | tar -xJ + fi + ) +} +get_zig + +exec $ZIG "$@"