aboutsummaryrefslogtreecommitdiff
path: root/build.sh
diff options
context:
space:
mode:
authorEmil2023-08-04 09:13:47 -0600
committerEmil2023-08-04 09:13:47 -0600
commit935243d8b4ea992c50315f0c8fcb300365a5762d (patch)
treec22d800773997b7b267d5d6cba5931f22ee2be64 /build.sh
downloademil-probotic-master.tar.xz
emil-probotic-master.tar.zst
Initial commitHEADmaster
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh30
1 files changed, 30 insertions, 0 deletions
diff --git a/build.sh b/build.sh
new file mode 100755
index 0000000..f699171
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+# Script handling unity builds and options.
+
+DIR=$(dirname $(readlink -f "$0"))
+cd $DIR
+
+PROGN=${PROGN:-probotic}
+PREFIX=${PREFIX:-$DIR}
+
+CC=${CC-cc}
+CFLAGS='-std=c99 -Wall -Wextra -Wpedantic -Wno-unused-function'
+CPPFLAGS="-I/usr/include/libircclient/ -Iinclude -D_GNU_SOURCE -DPROGN=\"$PROGN\""
+LDFLAGS='-lircclient -lsqlite3'
+
+mkdir -p $PREFIX && echo "Made directory: $PREFIX"
+
+# Bourne shell is evil
+if [ ${DEBUG-0} -eq 1 ]
+then
+ CFLAGS=`echo "${CFLAGS} -O0 -ggdb"`
+else
+ CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+ CFLAGS=`echo "${CFLAGS} -O2 -flto=auto -fomit-frame-pointer -s"`
+fi
+
+[ ! -z ${SAN} ] && CFLAGS=`echo "$CFLAGS -fsanitize=$SAN"`
+
+echo "$CC $CFLAGS -pipe $DIR/src/unity.c -o $PREFIX/$PROGN $CPPFLAGS $LDFLAGS"
+time $CC $CFLAGS -pipe $DIR/src/unity.c -o $PREFIX/$PROGN $CPPFLAGS $LDFLAGS
+echo -e "\nStatus: $?"