]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
build: include curlx headers directly in src and tests
authorViktor Szakats <commit@vsz.me>
Sat, 28 Feb 2026 23:54:09 +0000 (00:54 +0100)
committerViktor Szakats <commit@vsz.me>
Mon, 16 Mar 2026 11:05:39 +0000 (12:05 +0100)
To include what's actually used.

Also:
- drop unused includes.
- scope includes where possible.
- drop `curlx/curlx.h` umbrella header.
- config2setopts: include `netinet/in.h` for Cygwin/MSYS2.
  Previously included by chance via an unused curlx include.

Closes #20776

lib/Makefile.inc
lib/curlx/curlx.h [deleted file]
src/config2setopts.c
src/tool_doswin.c
src/tool_operate.c
src/tool_setup.h
tests/libtest/first.h
tests/server/first.h

index 1b75dc42edc7663d30f98ee556de8cc633137fb7..700fc2d4f94eb2c3348dde8aef3a0dabde66d846 100644 (file)
@@ -47,7 +47,6 @@ LIB_CURLX_CFILES =      \
 LIB_CURLX_HFILES =      \
   curlx/base64.h        \
   curlx/basename.h      \
-  curlx/curlx.h         \
   curlx/dynbuf.h        \
   curlx/fopen.h         \
   curlx/inet_ntop.h     \
diff --git a/lib/curlx/curlx.h b/lib/curlx/curlx.h
deleted file mode 100644 (file)
index 79cffc8..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-#ifndef HEADER_CURL_CURLX_H
-#define HEADER_CURL_CURLX_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at https://curl.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * SPDX-License-Identifier: curl
- *
- ***************************************************************************/
-
-/*
- * Defines protos and includes all header files that provide the curlx_*
- * functions. The curlx_* functions are not part of the libcurl API, but are
- * stand-alone functions whose sources can be built and linked by apps if need
- * be.
- */
-
-#include "curlx/base64.h" /* for curlx_base64* */
-#include "curlx/basename.h" /* for curlx_basename() */
-#include "curlx/dynbuf.h" /* for curlx_dyn_*() */
-#include "curlx/fopen.h" /* for curlx_f*() */
-#include "curlx/inet_ntop.h" /* for curlx_inet_ntop() */
-#include "curlx/inet_pton.h" /* for curlx_inet_pton() */
-#include "curlx/multibyte.h" /* for curlx_convert_*() */
-#include "curlx/nonblock.h" /* for curlx_nonblock() */
-#include "curlx/strcopy.h" /* for curlx_strcopy() */
-#include "curlx/strdup.h" /* for curlx_memdup*() and curlx_tcsdup() */
-#include "curlx/strerr.h" /* for curlx_strerror() */
-#include "curlx/strparse.h" /* for curlx_str_* parsing functions */
-#include "curlx/timediff.h" /* for timediff_t type and related functions */
-#include "curlx/timeval.h" /* for curlx_now type and related functions */
-#include "curlx/version_win32.h" /* for curlx_verify_windows_version() */
-#include "curlx/wait.h" /* for curlx_wait_ms() */
-#include "curlx/winapi.h" /* for curlx_winapi_strerror() */
-
-#endif /* HEADER_CURL_CURLX_H */
index 420d13d249b03edf41c9ed0b8d7d6bec6b072af9..543322ba76293402fb85fbe53fc7a5dfa2d8a462 100644 (file)
 #include "tool_helpers.h"
 #include "tool_version.h"
 
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h> /* IPPROTO_IPV6 */
+#endif
+
 #define BUFFER_SIZE 102400L
 
 #ifdef IP_TOS
index 6a1b904dc032d466c80d447e7d4c3b3cf4087086..4b2a2a34b3336fc96d91f2a659009c7ccec85bba 100644 (file)
@@ -25,6 +25,9 @@
 
 #if defined(_WIN32) || defined(MSDOS)
 
+#include "curlx/basename.h" /* for curlx_basename() */
+#include "curlx/version_win32.h" /* for curlx_verify_windows_version() */
+
 #ifdef _WIN32
 #  include <tlhelp32.h>
 #elif !defined(__DJGPP__) || (__DJGPP__ < 2)  /* DJGPP 2.0 has _use_lfn() */
index c4d97a97545fcbf468cb73630ea1e3dd7d046309..6c47c1363112a7f4a1c32e64e699d01971081869 100644 (file)
@@ -23,6 +23,8 @@
  ***************************************************************************/
 #include "tool_setup.h"
 
+#include "curlx/nonblock.h" /* for curlx_nonblock() */
+
 #ifdef HAVE_LOCALE_H
 #  include <locale.h>
 #endif
index b2ce031c13019b53cf05d0cd2d145cafec27babd..43acdbfeb737fae5ccbf19772377cd73345a0b07 100644 (file)
@@ -45,7 +45,17 @@ extern FILE *tool_stderr;
  * curl tool certainly uses libcurl's external interface.
  */
 
-#include <curlx/curlx.h>
+#include "curlx/base64.h" /* for curlx_base64* */
+#include "curlx/dynbuf.h" /* for curlx_dyn_*() */
+#include "curlx/fopen.h" /* for curlx_f*() */
+#include "curlx/multibyte.h" /* for curlx_convert_*() */
+#include "curlx/strcopy.h" /* for curlx_strcopy() */
+#include "curlx/strdup.h" /* for curlx_memdup*() */
+#include "curlx/strerr.h" /* for curlx_strerror() */
+#include "curlx/strparse.h" /* for curlx_str_* parsing functions */
+#include "curlx/timediff.h" /* for timediff_t type and related functions */
+#include "curlx/timeval.h" /* for curlx_now type and related functions */
+#include "curlx/wait.h" /* for curlx_wait_ms() */
 
 /*
  * Platform specific stuff.
index 8db531be1fe2d91da93ce6a703faea7bbf7fe775..2c8e46ca5987309f7286f9ca433b76bc51e937bd 100644 (file)
@@ -43,7 +43,15 @@ extern const struct entry_s s_entries[];
 
 extern int unitfail; /* for unittests */
 
-#include <curlx/curlx.h>
+#include "curlx/base64.h" /* for curlx_base64* */
+#include "curlx/dynbuf.h" /* for curlx_dyn_*() */
+#include "curlx/fopen.h" /* for curlx_f*() */
+#include "curlx/strcopy.h" /* for curlx_strcopy() */
+#include "curlx/strerr.h" /* for curlx_strerror() */
+#include "curlx/strparse.h" /* for curlx_str_* parsing functions */
+#include "curlx/timediff.h" /* for timediff_t type and related functions */
+#include "curlx/timeval.h" /* for curlx_now type and related functions */
+#include "curlx/wait.h" /* for curlx_wait_ms() */
 
 #ifdef HAVE_SYS_SELECT_H
 /* since so many tests use select(), we can just as well include it here */
index 4cc65ede7e919e2530fcc9a4b7f2cddd5b74cad7..ad5cec41b392d6946ea732c9946fc7bd361ae143 100644 (file)
@@ -62,7 +62,18 @@ extern const struct entry_s s_entries[];
 #include <netdb.h>
 #endif
 
-#include <curlx/curlx.h>
+#include "curlx/base64.h" /* for curlx_base64* */
+#include "curlx/fopen.h" /* for curlx_f*() */
+#include "curlx/inet_ntop.h" /* for curlx_inet_ntop() */
+#include "curlx/inet_pton.h" /* for curlx_inet_pton() */
+#include "curlx/nonblock.h" /* for curlx_nonblock() */
+#include "curlx/strcopy.h" /* for curlx_strcopy() */
+#include "curlx/strerr.h" /* for curlx_strerror() */
+#include "curlx/strparse.h" /* for curlx_str_* parsing functions */
+#include "curlx/timediff.h" /* for timediff_t type and related functions */
+#include "curlx/timeval.h" /* for curlx_now type and related functions */
+#include "curlx/wait.h" /* for curlx_wait_ms() */
+#include "curlx/winapi.h" /* for curlx_winapi_strerror() */
 
 #ifdef _WIN32
 #include <curlx/snprintf.h>