curl-curl/lib/curlx
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
..
base64.c curlx: rename Curl_-prefixed symbols to curlx_ 2025-12-22 01:47:22 +01:00
base64.h curlx: rename Curl_-prefixed symbols to curlx_ 2025-12-22 01:47:22 +01:00
binmode.h binmode: delete extra nop instruction from fallback macro 2025-12-22 01:47:21 +01:00
curlx.h curlx: curlx_strcopy() instead of strcpy() 2025-12-22 23:01:05 +01:00
dynbuf.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
dynbuf.h build: drop duplicate include curl/curl.h and others 2025-12-19 10:58:11 +01:00
fopen.c build: merge TrackMemory (CURLDEBUG) into debug-enabled option 2026-01-19 18:43:17 +01:00
fopen.h build: merge TrackMemory (CURLDEBUG) into debug-enabled option 2026-01-19 18:43:17 +01:00
inet_ntop.c badwords: catch and fix more variants of NN-bit 2026-01-14 02:35:00 +01:00
inet_ntop.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
inet_pton.c build: omit forward declarations 2026-01-13 21:15:36 +01:00
inet_pton.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
multibyte.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
multibyte.h tidy-up: avoid (()), clang-format fixes and more 2025-12-05 16:07:03 +01:00
nonblock.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
nonblock.h build: drop duplicate include curl/curl.h and others 2025-12-19 10:58:11 +01:00
snprintf.h curlx: replace sprintf with snprintf 2025-11-25 11:11:06 +01:00
strcopy.c strcopy: minor comment edit to avoid matching a grep for strcpy use 2025-12-27 23:25:13 +01:00
strcopy.h curlx: curlx_strcopy() instead of strcpy() 2025-12-22 23:01:05 +01:00
strerr.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
strerr.h curlx: move Curl_strerror, use in src and tests, ban strerror globally 2025-10-06 09:44:23 +02:00
strparse.c digest: fix OWS and escaped quote handling 2025-12-30 23:22:26 +01:00
strparse.h digest: fix OWS and escaped quote handling 2025-12-30 23:22:26 +01:00
timediff.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
timediff.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
timeval.c windows: bump minimum to Vista (from XP) 2026-01-17 11:41:49 +01:00
timeval.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
version_win32.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
version_win32.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
wait.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
wait.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
warnless.c tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
warnless.h tidy-up: miscellaneous 2025-12-26 22:06:09 +01:00
winapi.c curlx: curlx_strcopy() instead of strcpy() 2025-12-22 23:01:05 +01:00
winapi.h windows: use native error code types more 2025-10-06 12:12:44 +02:00