backend-infra-engineer: Post v0.3.9-hotfix7 snapshot (build cleanup)
This commit is contained in:
60
scripts/gemini_build.sh
Executable file
60
scripts/gemini_build.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
# scripts/gemini_build.sh
|
||||
# Build script for Gemini AI agent - builds full yaze with all features
|
||||
# Usage: ./scripts/gemini_build.sh [target] [--fresh]
|
||||
#
|
||||
# Examples:
|
||||
# ./scripts/gemini_build.sh # Build yaze (default)
|
||||
# ./scripts/gemini_build.sh yaze_test # Build tests
|
||||
# ./scripts/gemini_build.sh --fresh # Clean reconfigure and build
|
||||
# ./scripts/gemini_build.sh z3ed # Build CLI tool
|
||||
|
||||
set -e
|
||||
|
||||
# Configuration
|
||||
BUILD_DIR="build_gemini"
|
||||
PRESET="mac-gemini"
|
||||
TARGET="${1:-yaze}"
|
||||
FRESH=""
|
||||
|
||||
# Parse arguments
|
||||
for arg in "$@"; do
|
||||
case $arg in
|
||||
--fresh)
|
||||
FRESH="--fresh"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
TARGET="$arg"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo "=================================================="
|
||||
echo "Gemini Agent Build System"
|
||||
echo "Build Dir: ${BUILD_DIR}"
|
||||
echo "Preset: ${PRESET}"
|
||||
echo "Target: ${TARGET}"
|
||||
echo "=================================================="
|
||||
|
||||
# Ensure we are in the project root
|
||||
if [ ! -f "CMakePresets.json" ]; then
|
||||
echo "Error: CMakePresets.json not found. Must run from project root."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Configure if needed or if --fresh specified
|
||||
if [ ! -d "${BUILD_DIR}" ] || [ -n "${FRESH}" ]; then
|
||||
echo "Configuring ${PRESET}..."
|
||||
cmake --preset "${PRESET}" ${FRESH}
|
||||
fi
|
||||
|
||||
# Build
|
||||
echo "Building target: ${TARGET}..."
|
||||
cmake --build "${BUILD_DIR}" --target "${TARGET}" -j$(sysctl -n hw.ncpu)
|
||||
|
||||
echo ""
|
||||
echo "Build complete: ${BUILD_DIR}/${TARGET}"
|
||||
echo ""
|
||||
echo "Run tests: ctest --test-dir ${BUILD_DIR} -L stable -j4"
|
||||
echo "Run app: ./${BUILD_DIR}/Debug/yaze"
|
||||
Reference in New Issue
Block a user