curl-curl/.github/workflows
Viktor Szakats 2d5a063121
build: merge TrackMemory (CURLDEBUG) into debug-enabled option
Drop separate `TrackMemory` (aka `CURLDEBUG`) debug feature.

After recent changes (thread-safety,
193cb00ce9, and updates leading up to
it), `TrackMemory` is unlikely to cause build or runtime issues.

To simplify builds and debug options, enable `TrackMemory`
unconditionally for debug-enabled (aka `DEBUGBUILD`) builds. Before
this patch, this was already the default, with an option to disable
it, or enable it in non-debug-enabled builds.

Note, in practice these two debug options already went hand in hand. It
was not possible to toggle them separately for a long time due to bugs,
before 59dc9f7e69 (2024-05-28) fixed it.

This patch also removes/deprecates separate knobs and feature flags for
`TrackMemory`:
- autotools: `--enable-curldebug`/`--disable-curldebug`
- cmake: `-DENABLE_CURLDEBUG=ON`/`OFF`
- C macro: `CURLDEBUG`
- libcurl: `CURL_VERSION_CURLDEBUG` symbol deprecated in favor
  of `CURL_VERSION_DEBUG`. They always return the same value after this
  patch.

Also:
- drop `TrackMemory` from `curl -V` output.
- rename internal `CURLDEBUG` macro to `CURL_MEMDEBUG` internally.
  To avoid confusion with `DEBUGBUILD`, but to keep guarding
  `TrackMemory`-related internals for readability.
- runtests: bind `TrackMemory` to debug feature. Keep it a separate
  test feature requirement, for clarity.
- CI: drop test builds for combinations of the two options.
- GHA/linux: no longer disable TrackMemory in the TSAN job.

Ref: https://github.com/curl/curl/pull/20328#issuecomment-3754528407

Closes #20331
2026-01-19 18:43:17 +01:00
..
appveyor-status.yml GHA: switch 12 Linux jobs to arm64 2026-01-09 19:35:16 +01:00
checkdocs.yml tidy-up: merge root packages directory into projects 2026-01-12 23:49:35 +01:00
checksrc.yml build: add curl-lint/lint targets, CURL_LINT cmake option 2026-01-12 16:45:24 +01:00
checkurls.yml GHA: switch 12 Linux jobs to arm64 2026-01-09 19:35:16 +01:00
codeql.yml tidy-up: merge root packages directory into projects 2026-01-12 23:49:35 +01:00
configure-vs-cmake.yml GHA: delete disable-man-db hack, runners doing it by default now 2026-01-11 15:40:21 +01:00
curl-for-win.yml tidy-up: merge root packages directory into projects 2026-01-12 23:49:35 +01:00
distcheck.yml GHA: delete disable-man-db hack, runners doing it by default now 2026-01-11 15:40:21 +01:00
fuzz.yml GHA: silence fresh zizmor 1.21.0 warnings 2026-01-16 13:48:28 +01:00
http3-linux.yml CI: show curl tool and libcurl sizes 2026-01-19 14:12:27 +01:00
label.yml GHA: set concurrency: where missing 2025-10-24 13:38:11 +02:00
linux-old.yml tidy-up: miscellaneous 2026-01-15 13:06:13 +01:00
linux.yml build: merge TrackMemory (CURLDEBUG) into debug-enabled option 2026-01-19 18:43:17 +01:00
macos.yml CI: show curl tool and libcurl sizes 2026-01-19 14:12:27 +01:00
non-native.yml GHA/non-native: fix size/file listing for Android shared lib 2026-01-19 16:26:43 +01:00
windows.yml build: merge TrackMemory (CURLDEBUG) into debug-enabled option 2026-01-19 18:43:17 +01:00