From a8e5913254a10142433a00dbf40935d619dcf9f0 Mon Sep 17 00:00:00 2001 From: Abdelrahman Date: Sun, 2 Jun 2024 01:16:24 +0100 Subject: [PATCH] Add release build and compile test --- compile | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/compile b/compile index c5dac7f..a907a33 100755 --- a/compile +++ b/compile @@ -1,13 +1,39 @@ #!/bin/bash +BUILD_TYPE="debug" + +while [[ $# > 0 ]];do + case $1 in + --release) + BUILD_TYPE="release" + shift + ;; + *|-*|--*) + echo "Unknown option $1" + exit 1 + ;; + esac +done + CC=clang +CFLAGS="-Wall -Werror -pedantic " +LIBFLAGS="-fPIC -shared" INCLUDE="\ $(find src -type d | xargs -I{} echo -n "-I{} ") \ " SRC="\ - $(find src -type f -name *.c | xargs -I{} echo -n "{} ") \ + $(find src -type f -name "*.c" | xargs -I{} echo -n "{} ") \ " -CFLAGS="-O3 -shared -fPIC -Wall -Werror -pedantic" +if [[ $BUILD_TYPE == "release" ]]; then + CFLAGS+="-O3" +else + CFLAGS+="-g -fsanitize=address -fsanitize=undefined" +fi + OUT="libwapp.so" -(set -x ; $CC $CFLAGS $INCLUDE $SRC -o $OUT) +(set -x ; $CC $CFLAGS $LIBFLAGS $INCLUDE $SRC -o $OUT) + +if [[ -f ./test.c ]]; then + (set -x ; $CC $CFLAGS $INCLUDE $SRC ./test.c -o test) +fi