#!/usr/bin/env sh
set -eu

SOURCE="$0"
while [ -L "$SOURCE" ]; do
  DIR="$(cd "$(dirname "$SOURCE")" && pwd)"
  TARGET="$(readlink "$SOURCE")"
  case "$TARGET" in
  /*)
    SOURCE="$TARGET"
    ;;
  *)
    SOURCE="$DIR/$TARGET"
    ;;
  esac
done

SCRIPT_DIR="$(cd "$(dirname "$SOURCE")" && pwd)"
ROOT_DIR="$(cd "$SCRIPT_DIR/../.." && pwd)"
BINARY="$ROOT_DIR/target/debug/auditkit"

if [ ! -x "$BINARY" ]; then
  cargo build --manifest-path "$ROOT_DIR/Cargo.toml" >/dev/null
fi

exec "$BINARY" "$@"
