From b591bbdb5f1588f34bb07729057101d4f8b6907a Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Sat, 18 Feb 2023 08:53:59 +0000 Subject: [PATCH] Buildscr: include a test build with clang + STRICT. I've just enabled a warning that only fires in that mode, so we need to keep running the build in that configuration to ensure further instances of the warning aren't introduced. --- Buildscr | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Buildscr b/Buildscr index 8723bb1..68bdf27 100644 --- a/Buildscr +++ b/Buildscr @@ -3,7 +3,7 @@ # # You can cut out large components of the build by defining a subset # of these options on the bob command line: -# -DNOSIGN -DNOWINDOWS -DNOMACOS -DNOICONS -DNOJAVA -DNOJS +# -DNOTEST -DNOSIGN -DNOWINDOWS -DNOMACOS -DNOICONS -DNOJAVA -DNOJS module puzzles @@ -41,6 +41,19 @@ ifneq "$(NOICONS)" yes then in . do cp build-icons/icons/*-icon.c puzzles/icons endif +ifneq "$(NOTEST)" yes then + # Run tests. In particular, ensure we build in 'strict' mode with + # both gcc and clang. + ifeq "$(NOICONS)" yes then + # We don't need to run the gcc build if we did it above for the icons + in . do cmake -B test-gcc puzzles -DSTRICT=ON + in test-gcc do make -j$(nproc) + endif + + in . do cmake -B test-clang puzzles -DSTRICT=ON -DCMAKE_C_COMPILER=clang + in test-clang do make -j$(nproc) +endif + # The very first thing we do is to make the source archive, before we # fill up the build directory with extra files. delegate -