]> git.ipfire.org Git - thirdparty/curl.git/commit
build: untangle `CURLDEBUG` and `DEBUGBUILD` macros
authorViktor Szakats <commit@vsz.me>
Mon, 20 May 2024 12:21:05 +0000 (14:21 +0200)
committerViktor Szakats <commit@vsz.me>
Tue, 28 May 2024 06:12:00 +0000 (08:12 +0200)
commit59dc9f7e69c399102e9ebe3670360ef52706ff23
tree870023bce62d77869dc4e788fb2bb33d59b47782
parent53b4dfe405dca1eeff0ac48e2fc96d7782e887a7
build: untangle `CURLDEBUG` and `DEBUGBUILD` macros

`CURLDEBUG` is meant to enable memory tracking, but in a bunch of cases,
it was protecting debug features that were supposed to be guarded with
`DEBUGBUILD`.

Replace these uses with `DEBUGBUILD`.

This leaves `CURLDEBUG` uses solely for its intended  purpose: to enable
the memory tracking debug feature.

Also:
- autotools: rely on `DEBUGBUILD` to enable `checksrc`.
  Instead of `CURLDEBUG`, which worked in most cases because debug
  builds enable `CURLDEBUG` by default, but it's not accurate.
- include `lib/easyif.h` instead of keeping a copy of a declaration.
- add CI test jobs for the build issues discovered.

Ref: https://github.com/curl/curl/pull/13694#issuecomment-2120311894
Closes #13718
24 files changed:
.github/workflows/windows.yml
CMake/CurlSymbolHiding.cmake
appveyor.yml
configure.ac
include/curl/Makefile.am
lib/Makefile.am
lib/cfilters.c
lib/conncache.h
lib/doh.c
lib/easy.c
lib/easyif.h
lib/http.c
lib/mqtt.c
lib/rand.c
lib/request.c
lib/url.c
lib/urldata.h
src/Makefile.am
src/tool_cfgable.h
src/tool_getparam.c
src/tool_operate.c
tests/Makefile.am
tests/libtest/Makefile.am
tests/server/Makefile.am