#!/usr/bin/env bash # bin/kb/search — deprecated wrapper. Use bin/brain/search.go. # Sets CGO for ladybug, builds a binary (embed daemon needs a real executable), # then execs it. Prints one deprecation line. set -euo pipefail ROOT="$(cd "$(dirname "$0")/../.." && pwd)" BIN="$ROOT/var/bin/brain-search" SRC="$ROOT/internal/brain" CMD="$ROOT/bin/brain" mkdir -p "$ROOT/var/bin" need_build=0 if [ ! -x "$BIN" ]; then need_build=1 else while IFS= read -r -d '' f; do if [ "$f" -nt "$BIN" ]; then need_build=1 break fi done < <(find "$SRC" "$CMD" -name '*.go' -print0 2>/dev/null) fi if [ "$need_build" -eq 1 ]; then echo "Building brain/search..." >&2 ( cd "$ROOT" && CGO_CFLAGS="-I$ROOT/lib-ladybug" \ CGO_LDFLAGS="-L$ROOT/lib-ladybug -Wl,-rpath,$ROOT/lib-ladybug" \ go build -tags system_ladybug -o "$BIN" ./bin/brain ) || exit 1 fi echo "bin/kb/search is deprecated; use bin/brain/search.go" >&2 exec "$BIN" "$@"