curl-curl/scripts
Viktor Szakats 2c27a67daa
tests: always make bundles, adapt build and tests
Make test bundles the default. Drop non-bundle build mode.
Also do all the optimizations and tidy-ups this allows, simpler builds,
less bundle exceptions, streamlined build mechanics.

Also rework the init/deinit macro magic for unit tests. The new method
allows using unique init/deinit function names, and calling them with
arguments. This is in turn makes it possible to reduce the use of global
variables.

Note this drop existing build options `-DCURL_TEST_BUNDLES=` from cmake
and `--enable-test-bundles` / `--disable-test-bundles` from autotools.

Also:
- rename test entry functions to have unique names: `test_<testname>`
  This removes the last exception that was handled in the generator.
- fix `make dist` to not miss test sources with test bundles enabled.
- sync and merge `tests/mk-bundle.pl` into `scripts/mk-unity.pl`.
- mk-unity.pl: add `--embed` option and use it when `CURL_CLANG_TIDY=ON`
  to ensure that `clang-tidy` does not miss external test C sources.
  (because `clang-tidy` ignores code that's #included.)
- tests/unit: drop no-op setup/stop functions.
- tests: reduce symbol scopes, global macros, other fixes and tidy-ups.
- tool1621: fix to run, also fix it to pass.
- sockfilt: fix Windows compiler warning in certain unity include order,
  by explicitly including `warnless.h`.

Follow-up to 6897aeb105 #17468

Closes #17590
2025-06-14 21:08:23 +02:00
..
cd2cd docs: introduce "curldown" for libcurl man page format 2024-01-23 00:29:02 +01:00
cd2nroff TLS: remove support for Secure Transport and BearSSL 2025-06-11 07:54:19 +02:00
cdall docs: introduce "curldown" for libcurl man page format 2024-01-23 00:29:02 +01:00
checksrc-all.sh checksrc: avoid extra runs in CI, enable more check locally, fix fallouts 2025-05-19 18:59:50 +02:00
checksrc.pl checksrc: avoid extra runs in CI, enable more check locally, fix fallouts 2025-05-19 18:59:50 +02:00
ciconfig.pl tidy-up: use /usr/bin/env perl shebang 2024-06-26 23:58:10 +02:00
cijobs.pl GHA: tidy up apt commands 2025-01-30 02:36:43 +01:00
cmakelint.sh cmake: replace cmakelint with cmake-lint from cmakelang, fix issues 2025-06-11 07:07:49 +02:00
CMakeLists.txt cmake: install shell completions for cross-builds 2025-04-24 10:04:17 +02:00
completion.pl scripts: fix perl indentation, whitespace, semicolons 2025-04-29 19:35:55 +02:00
contributors.sh contributors.sh: lowercase 'github' for consistency 2025-02-24 08:05:06 +01:00
contrithanks.sh contrithanks.sh: drop set -e 2025-04-02 11:44:26 +02:00
coverage.sh GHA: add shellcheck job and fix warnings, shell tidy-ups 2024-04-08 09:37:24 +00:00
delta scripts: fix perl indentation, whitespace, semicolons 2025-04-29 19:35:55 +02:00
dmaketgz dmaketgz: use --no-cache when building docker image 2024-12-05 15:41:53 +01:00
firefox-db2pem.sh firefox-db2pem: mention what "certutil" the script uses 2024-09-06 08:57:34 +02:00
installcheck.sh GHA: add shellcheck job and fix warnings, shell tidy-ups 2024-04-08 09:37:24 +00:00
Makefile.am GHA: add a job to check function complexity 2025-05-21 22:59:13 +02:00
maketgz Makefile.dist: delete 2025-01-27 20:59:47 +01:00
managen managen: accept more markdown-quote-markers 2025-03-12 14:36:11 +01:00
mdlinkcheck scripts/mdlinkcheck: fix the ../ handling in file links 2024-12-21 13:57:38 +01:00
mk-ca-bundle.pl mk-ca-bundle: switch URLs to GitHub versions 2025-05-12 11:09:17 +02:00
mk-unity.pl tests: always make bundles, adapt build and tests 2025-06-14 21:08:23 +02:00
nroff2cd tidy-up: one comment and EOF newlines 2024-03-12 15:38:44 +00:00
pythonlint.sh scripts: move the ruff linter command into a script 2025-05-13 16:41:32 -07:00
randdisable randdisable: build randomizer 2025-04-05 14:59:17 +02:00
release-notes.pl release-notes.pl: manage more "closes" typos 2025-02-08 10:51:27 +01:00
release-tools.sh maketgz: fix RELEASE-TOOLS.md for daily tarballs 2024-09-07 09:33:09 -07:00
schemetable.c WebSockets: make support official (non-experimental) 2024-09-27 13:20:25 +02:00
singleuse.pl async: DoH improvements 2025-04-16 16:06:03 +02:00
top-complexity tool_getparam: refactored, simplified 2025-05-28 14:25:32 +02:00
verify-release configure: fail if PSL is not disabled but not found 2024-08-05 08:33:58 +02:00
wcurl wcurl: update to v2025.05.26 2025-05-27 09:29:43 +02:00