48 lines
997 B
Bash
Executable File
48 lines
997 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
RELEASE=false
|
|
RUN_AFTER=false
|
|
|
|
for arg in "$@"; do
|
|
case "$arg" in
|
|
--release)
|
|
RELEASE=true
|
|
;;
|
|
--run)
|
|
RUN_AFTER=true
|
|
;;
|
|
*)
|
|
echo "Error: Unknown argument '$arg'"
|
|
echo "Usage: $0 [--release] [--run]"
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
mkdir -p .build
|
|
|
|
if $RELEASE; then
|
|
echo "Building in RELEASE mode..."
|
|
gcc src/main.c -O3 -std=c23 \
|
|
-Ivendor/raylib-5.5_linux_amd64/include \
|
|
-Ivendor/clay-0.14 \
|
|
vendor/raylib-5.5_linux_amd64/lib/libraylib.a \
|
|
-lm -o .build/out
|
|
else
|
|
echo "Building in DEBUG mode..."
|
|
gcc src/main.c -ggdb -DDEBUG -std=c23 \
|
|
-Ivendor/raylib-5.5_linux_amd64/include \
|
|
-Ivendor/clay-0.14 \
|
|
vendor/raylib-5.5_linux_amd64/lib/libraylib.a \
|
|
-lm -o .build/out
|
|
fi
|
|
|
|
if $RUN_AFTER; then
|
|
echo "Running program..."
|
|
.build/out
|
|
else
|
|
echo "Build complete: .build/out"
|
|
fi
|