From 49a3302fd67e1925b53935939f9a61f6d79b9978 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Thu, 21 Aug 2025 22:02:23 +0100 Subject: Split out tests into its own file Also adjust the build system to do some more (cleaning, building, testing, running). --- build.sh | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'build.sh') diff --git a/build.sh b/build.sh index 7301bc4..544f623 100644 --- a/build.sh +++ b/build.sh @@ -3,20 +3,36 @@ set -xe CFLAGS="-Wall -Wextra -std=c11 -ggdb -fsanitize=address -fsanitize=undefined" -SRC="vec.c symtable.c tag.c constructor.c sys.c main.c" +LINK="" +LIB="sv.c vec.c symtable.c tag.c constructor.c sys.c" OUT="alisp.out" build() { - cc $CFLAGS -o $OUT $SRC; + cc $LINK $CFLAGS -o $OUT $LIB main.c; + cc $LINK $CFLAGS -o test.out $LIB test.c; +} + +clean() { + rm -v $OUT test.out; } run() { ./$OUT; } +test() { + ./test.out +} + build if [ "$1" = "run" ] then run +elif [ "$1" = "test" ] +then + test +elif [ "$1" = "clean" ] +then + clean fi -- cgit v1.2.3-13-gbd6f