Test hot reloading
This commit is contained in:
49
compile
49
compile
@@ -1,9 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
CC=clang
|
||||
CFLAGS="-g -Wall $(pkg-config --cflags sdl2)"
|
||||
LIBS="$(pkg-config --libs sdl2)"
|
||||
SRC=src/*.c
|
||||
OUT=main
|
||||
BUILD_TYPE="debug"
|
||||
|
||||
(set -x ; $CC $CFLAGS $LIBS $SRC -o $OUT)
|
||||
while [[ $# > 0 ]];do
|
||||
case $1 in
|
||||
--release)
|
||||
BUILD_TYPE="release"
|
||||
shift
|
||||
;;
|
||||
*|-*|--*)
|
||||
echo "Unknown option $1"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
CC=clang
|
||||
CFLAGS="-Wall $(pkg-config --cflags sdl2)"
|
||||
LIBS="$(pkg-config --libs sdl2)"
|
||||
MAIN=src/main.c
|
||||
MAIN_FLAGS=""
|
||||
GAME=src/game.c
|
||||
GAME_FLAGS="-DNDEBUG"
|
||||
OUT=main
|
||||
GAME_OUT=""
|
||||
|
||||
if [[ $BUILD_TYPE == "debug" ]]; then
|
||||
CFLAGS+=" -g"
|
||||
MAIN_FLAGS="-ldl -Wl,-rpath,\$ORIGIN"
|
||||
GAME_FLAGS+=" -fPIC -shared"
|
||||
GAME_OUT="-o game.so"
|
||||
MAIN+=" src/game.c"
|
||||
else
|
||||
CFLAGS+=" -O3"
|
||||
MAIN_FLAGS="-DNDEBUG"
|
||||
GAME_FLAGS+=" -c"
|
||||
MAIN+=" game.o"
|
||||
fi
|
||||
|
||||
LOCKFILE="game.so.lock"
|
||||
touch $LOCKFILE && (set -x ; $CC $CFLAGS $GAME_FLAGS $LIBS $GAME $GAME_OUT)
|
||||
if [[ -f $LOCKFILE ]];then
|
||||
rm $LOCKFILE
|
||||
fi
|
||||
(set -x ; $CC $CFLAGS $MAIN_FLAGS $LIBS $MAIN -o $OUT)
|
||||
|
||||
Reference in New Issue
Block a user