build: drop tool_hugehelp.c.cvs, tidy up macros, drop buildconf.bat

Rework the way `tool_hugehelp.c` is included in builds.

After this patch, with `./configure` and CMake `tool_hugehelp.c` is only
compiled when building with manuals enabled. With manuals disabled this
source file is not used anymore. The method is similar to how
8a3740bc8e implemented `tool_ca_embed.c`.
`./configure` always generates it as before, otherwise the build fails.

- winbuild: rework to not need `buildconf.bat`, but automatically use
  `tool_hugehelp.c` if present (e.g. when building from an official
  source tarball) and enable `USE_MANUAL` accordingly.

- `buildconf.bat`: after dropping `tool_hugehelp.c` generation, the only
  logic left was `cp Makefile.dist Makefile`. This allowed to launch
  winbuild builds via GNU Make in a Git repo. Drop this option together
  with the batch file.

- build `libcurltool` without `USE_MANUAL` macro to exclude the manual
  and the dependence on the generator commands. Drop relying on
  `UNITTESTS` for this purpose.
  Follow-up to 96843f4ef7 #16068

- `src/mkhelp.pl`: include `tool_hugehelp.h` before using `USE_MANUAL`
  to have it set in `config-*.h` builds with source tarballs created
  with manual but without zlib.

Closes #16081
This commit is contained in:
Viktor Szakats 2025-01-24 14:22:23 +01:00
parent 1a36923d73
commit 0035ff45c5
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
18 changed files with 32 additions and 374 deletions

View file

@ -566,7 +566,6 @@ if ($configurebuild) {
logit "copying files to build dir ...";
if ($^O eq 'MSWin32') {
system("xcopy /s /q \"$CURLDIR\" .");
system("buildconf.bat");
}
elsif ($^O eq 'linux') {
system("cp -afr $CURLDIR/* .");