From 3a4b3fa01b6ead1e23434c533302a2a9fddfd89e Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 22 Aug 2021 11:21:07 -0300 Subject: Have a single top-level main for running unit-tests Instead of each .c file becoming a self-standing .t executable file, and being run for executing the unit tests local to the file, now each .c becomes a .to object (akin to a .o object, but one where the -DTEST flag is given to the compiler). After that, all the .to objects are linked together in a gistatic-tests executable, in a equivalent way that all .o files get linked together in a gistatic executable. This change was necessary in order to allow dependencies between objects. The next task will be making a tar of a repository tree checkout, and src/gistatic.{o,to} will start depending on src/tar.{o,to}. If each file has its own main function when -DTEST is given, then I wont be able to link them together. I took the opportunity that I had to change the Makefile, and I improved the dependency between targets and dependencies greatly. From what I can tell now, it is correct. --- tests/build-sample.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests/build-sample.sh') diff --git a/tests/build-sample.sh b/tests/build-sample.sh index e7057e0..bc544b8 100755 --- a/tests/build-sample.sh +++ b/tests/build-sample.sh @@ -1,9 +1,9 @@ #!/bin/sh set -eu -./src/gistatic -i -o tmp/ tests/resources/repositories/* +./gistatic -i -o tmp/ tests/resources/repositories/* for r in tests/resources/repositories/* $PWD; do NAME="$(basename "$r")" mkdir -p "tmp/$NAME" - ./src/gistatic -u "https://example.com/$NAME" -o "tmp/$NAME" "$r" + ./gistatic -u "https://example.com/$NAME" -o "tmp/$NAME" "$r" done -- cgit v1.2.3