#!/usr/bin/env bash # Bump patch version and release-build for this host. Run by LaunchAgent every 4h. set -euo pipefail export PATH="/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin" ROOT="$(cd "$(dirname "$0")/.." && pwd)" cd "$ROOT" mkdir -p logs dist LOG="$ROOT/logs/build.log" exec >>"$LOG" 2>&1 echo "==== $(date -R) bump-and-build start ====" ver=$(tr -d "[:space:]" < VERSION) IFS=. read -r maj min pat <<<"$ver" pat=${pat:-0} pat=$((pat + 1)) new="${maj}.${min}.${pat}" echo "$new" > VERSION echo "version $ver -> $new" rm -rf build cmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build -j"$(sysctl -n hw.ncpu 2>/dev/null || echo 2)" outdir="$ROOT/dist/$new" mkdir -p "$outdir" cp -f build/openkknd "$outdir/" # record { echo "version=$new" echo "built=$(date -R)" echo "host=$(hostname)" echo "uname=$(uname -a)" file "$outdir/openkknd" 2>/dev/null || true ls -la "$outdir/openkknd" } | tee "$outdir/BUILDINFO.txt" if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then git add VERSION git commit -m "build: release $new (autobuild)" || true fi echo "==== $(date -R) done $new ===="