#!/bin/bash set -e TARGET="dense-neural-network" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" ROOT_DIR="$(cd "$SCRIPT_DIR/../.." && pwd)" BUILD_DIR="$ROOT_DIR/build" # Always remove stale CMake cache (path/user mismatches) rm -f "$BUILD_DIR/CMakeCache.txt" rm -rf "$BUILD_DIR/CMakeFiles" rm -f "$BUILD_DIR/Makefile" "$BUILD_DIR/build.ninja" "$BUILD_DIR/rules.ninja" "$BUILD_DIR/cmake_install.cmake" mkdir -p "$BUILD_DIR" cmake -S "$ROOT_DIR" -B "$BUILD_DIR" #-DCMAKE_BUILD_TYPE=Debug cmake --build "$BUILD_DIR" --target "$TARGET" # Load omp.cfg if [ -f "$ROOT_DIR/omp.cfg" ]; then export $(grep -v '^[[:space:]]*#' "$ROOT_DIR/omp.cfg" | grep -v '^[[:space:]]*$' | xargs) fi echo "=== CPU / OpenMP info ===" echo "System cores (nproc): $(nproc)" echo "OMP_NUM_THREADS=${OMP_NUM_THREADS:-"(not set)"}" echo "=========================" "$BUILD_DIR/bin/$TARGET"