Files
alisp/build.sh

41 lines
552 B
Bash

#!/usr/bin/env sh
set -xe
CFLAGS="-Wall -Wextra -std=c11 -ggdb -fsanitize=address -fsanitize=undefined -Wswitch -Wswitch-enum"
LDFLAGS="-lc"
LIB=$(find "./runtime" -type 'f')
OUT="build/alisp.out"
build() {
mkdir -p build;
cc $CFLAGS -o $OUT $LIB main.c $LDFLAGS;
cc $CFLAGS -o build/test.out $LIB test/test.c $LDFLAGS;
}
clean() {
rm -v $OUT test.out;
}
run() {
./$OUT;
}
test() {
./build/test.out
}
build
if [ "$1" = "run" ]
then
run
elif [ "$1" = "test" ]
then
test
elif [ "$1" = "clean" ]
then
clean
fi