Camden Dixie O'Brien acb4cd38d7 Extract line reading logic to reader and remove REPL tests
Reading a line into the buffer was the only logic complex enough to be
worth testing really, and exposing the necessary parts of it to test
it effectively was a pain.  Makes more sense to move read_line out and
throw away most of the tests.
2024-10-24 22:09:33 +01:00

29 lines
1012 B
Bash

cd "$(git rev-parse --show-toplevel)"
CFLAGS="$CFLAGS -std=c11 -pedantic -Wall -Wextra"
CFLAGS="$CFLAGS -O0 -ggdb"
CFLAGS="$CFLAGS -Ilib/include"
mkdir -p build
# Build library
clang $CFLAGS -c -o build/evaluator.o lib/evaluator.c
clang $CFLAGS -c -o build/memory_pool.o lib/memory_pool.c
clang $CFLAGS -c -o build/reader.o lib/reader.c
clang $CFLAGS -c -o build/repl.o lib/repl.c
ar -crs build/lib.a \
build/evaluator.o build/memory_pool.o build/reader.o build/repl.o
# Build tests
clang $CFLAGS -Itests -c -o build/testing.o tests/testing.c
clang $CFLAGS -Itests -c -o build/evaluator_tests.o tests/evaluator_tests.c
clang $CFLAGS -o build/evaluator_tests \
build/evaluator_tests.o build/lib.a build/testing.o
clang $CFLAGS -Itests -c -o build/reader_tests.o tests/reader_tests.c
clang $CFLAGS -o build/reader_tests \
build/reader_tests.o build/lib.a build/testing.o
# Build application
clang $CFLAGS -c -o build/main.o app/main.c
clang $CFLAGS -o build/infix-calculator build/main.o build/lib.a