From 3c398f03085ea28a6ff2df861b9e6983d35a89b3 Mon Sep 17 00:00:00 2001 From: Nathan Chapman Date: Tue, 8 Jul 2025 06:54:38 -0600 Subject: [PATCH] Improve compiler script --- compile | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/compile b/compile index 7fa9381..e064911 100755 --- a/compile +++ b/compile @@ -1,13 +1,44 @@ #!/bin/sh -if [ "$1" = "--clean" ]; then - echo "Cleaning build directory..." - rm -rf build/* -fi +RUN_AFTER_BUILD=0 +CMAKE_ARGS="" +BINARY_NAME="opengl_test" + +for arg in "$@"; do + case "$arg" in + --clean) + echo "Cleaning build directory..." + rm -rf build/* + ;; + --debug) + echo "Enabling debug build..." + CMAKE_ARGS="-DCMAKE_BUILD_TYPE=Debug" + ;; + --run) + RUN_AFTER_BUILD=1 + ;; + *) + echo "Unknown argument: $arg" + echo "Usage: $0 [--clean] [--debug] [--run]" + exit 1 + ;; + esac +done + +mkdir -p build ( cd build || exit 1 - cmake .. + cmake .. $CMAKE_ARGS make ) +if [ "$RUN_AFTER_BUILD" -eq 1 ]; then + if [ -x "build/$BINARY_NAME" ]; then + echo "Running ./$BINARY_NAME..." + "./build/$BINARY_NAME" + else + echo "Error: Binary 'build/$BINARY_NAME' not found or not executable." + exit 1 + fi +fi