1. ci-build.sh: Add verify_test_failure_detection() function
- Tests that single test failures are properly detected
- Tests that parallel test failures are properly detected
- Runs at CI start to catch framework issues early
2. Makefile.am: Fix check-functional-parallel exit code handling
- OLD: used 'wait' without checking individual exit codes
- NEW: capture each PID and check exit code with 'wait $pid'
- On failure: print the log file and set failed flag
- Exit with error if any group failed
This ensures CI correctly fails when:
- Any unit test fails
- Any of the 4 functional test groups fails
- Any parallel build configuration fails
- Add -C flag to ./configure for caching results
- Use --depth 1 for git clone (faster)
- Use make -j$(nproc) for stabber/libstrophe builds
Borrowed optimizations from build/multicore branch.
- Add prof.supp with pthread TLS suppressions
- Update ci-build.sh with test configurations
- Document functional test best practices in CONTRIBUTING.md
* Also pass `$*` to `configure` when invoking `ci-build.sh`, so one can
e.g. run `./ci-build.sh --without-xscreensaver`
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
Because we trap the error signal and run a error handler, logs were not
printed. I moved the printing of test-suite.log to the error handler and
also added so that config.log is printed on failure.
* Add .builds/openbsd.yml for builds.sr.ht
* Update travis-build.sh -> ci-build.sh with OpenBSD case
* Fix libdl check in configure.ac (OpenBSD has libdl built-in)
* Fix some minor issues found when compiling on OpenBSD with GCC (e.g.
uninitialized variables)