]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
configure/CMake: Unify Windows handling
authorFrank Lichtenheld <frank@lichtenheld.com>
Thu, 27 Nov 2025 10:37:05 +0000 (11:37 +0100)
committerGert Doering <gert@greenie.muc.de>
Thu, 27 Nov 2025 11:20:22 +0000 (12:20 +0100)
Some things were detected in configure.ac and just
hard-coded in CMake. Move the hard-coding to
syshead.h instead and remove the additional code
in configure.ac. These are really Windows-specific
so I think not dynamically detecting is okay.

Change-Id: Ic55e1288b0d3160e68eef07ff4edbb070a03dd31
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Arne Schwabe <arne-openvpn@rfc2549.org>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1410
Message-Id: <20251127103710.29341-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg34736.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
config.h.cmake.in
configure.ac
src/openvpn/syshead.h

index f68ea27da8ed8af8f820636467bc59092fbabcd4..bf1388c320fded8f37b3ebc62a051f9a5b43cfa8 100644 (file)
 #ifndef _GNU_SOURCE
 # define _GNU_SOURCE 1
 #endif
-
-/* if inttypes.h is included this breaks rc.exe when using the ClangCL
- * Toolchain as it pulls in a inttypes.h variant for clang that rc.exe does
- * not understand (#include_next preprocessor directive) */
-#if defined(_WIN32) && !defined(RC_INVOKED)
-#include <inttypes.h>
-typedef uint32_t in_addr_t;
-typedef uint16_t in_port_t;
-
-#define SIGHUP    1
-#define SIGINT    2
-#define SIGUSR1   10
-#define SIGUSR2   12
-#define SIGTERM   15
-#endif
-
-#if defined(_MSC_VER) && !defined(RC_INVOKED)
-#include <BaseTsd.h>
-typedef SSIZE_T ssize_t;
-#define strncasecmp strnicmp
-#define strcasecmp _stricmp
-
-#define S_IRUSR _S_IREAD
-#define S_IWUSR _S_IWRITE
-#define R_OK 4
-#define W_OK 2
-#define X_OK 1
-#define F_OK 0
-#endif
index 60799e011ee14af10a538c3b260a49e012ee467d..73b388b96f655791ba412637da07f96d98d9bbb5 100644 (file)
@@ -527,18 +527,6 @@ AC_CHECK_HEADERS(
        [[${SOCKET_INCLUDES}]]
 )
 
-AC_CHECK_TYPES(
-       [in_addr_t],
-       ,
-       [AC_DEFINE([in_addr_t], [uint32_t], [Workaround missing in_addr_t])],
-       [[${SOCKET_INCLUDES}]]
-)
-AC_CHECK_TYPES(
-       [in_port_t],
-       ,
-       [AC_DEFINE([in_port_t], [uint16_t], [Workaround missing in_port_t])],
-       [[${SOCKET_INCLUDES}]]
-)
 AC_CHECK_TYPE(
        [struct msghdr],
        [AC_DEFINE([HAVE_MSGHDR], [1], [struct msghdr needed for extended socket error support])],
@@ -600,48 +588,6 @@ AC_LINK_IFELSE(
 )
 LDFLAGS="$saved_LDFLAGS"
 
-dnl We emulate signals in Windows
-AC_CHECK_DECLS(
-       [SIGHUP],
-       ,
-       [AC_DEFINE([SIGHUP], [1], [SIGHUP replacement])],
-       [[
-               #include <signal.h>
-       ]]
-)
-AC_CHECK_DECLS(
-       [SIGINT],
-       ,
-       [AC_DEFINE([SIGINT], [2], [SIGINT replacement])],
-       [[
-               #include <signal.h>
-       ]]
-)
-AC_CHECK_DECLS(
-       [SIGUSR1],
-       ,
-       [AC_DEFINE([SIGUSR1], [10], [SIGUSR1 replacement])],
-       [[
-               #include <signal.h>
-       ]]
-)
-AC_CHECK_DECLS(
-       [SIGUSR2],
-       ,
-       [AC_DEFINE([SIGUSR2], [12], [SIGUSR2 replacement])],
-       [[
-               #include <signal.h>
-       ]]
-)
-AC_CHECK_DECLS(
-       [SIGTERM],
-       ,
-       [AC_DEFINE([SIGTERM], [15], [SIGTERM replacement])],
-       [[
-               #include <signal.h>
-       ]]
-)
-
 AC_FUNC_FORK
 
 AC_CHECK_FUNCS([ \
index c6f2608625734a539b278842a6ee0aa2d4bcc191..627ba9273460718eda8af017c9ab7c3292b30007 100644 (file)
 #define srandom  srand
 #endif
 
+/* if inttypes.h is included this breaks rc.exe when using the ClangCL
+ * Toolchain as it pulls in a inttypes.h variant for clang that rc.exe does
+ * not understand (#include_next preprocessor directive) */
+#if defined(_WIN32) && !defined(RC_INVOKED)
+#include <inttypes.h>
+typedef uint32_t in_addr_t;
+typedef uint16_t in_port_t;
+
+#define SIGHUP  1
+#define SIGINT  2
+#define SIGUSR1 10
+#define SIGUSR2 12
+#define SIGTERM 15
+#endif
+
+#if defined(_MSC_VER) && !defined(RC_INVOKED)
+#include <BaseTsd.h>
+typedef SSIZE_T ssize_t;
+#define strncasecmp strnicmp
+#define strcasecmp  _stricmp
+
+#define S_IRUSR _S_IREAD
+#define S_IWUSR _S_IWRITE
+#define R_OK    4
+#define W_OK    2
+#define X_OK    1
+#define F_OK    0
+#endif
+
 #if defined(_MSC_VER) && !defined(__clang__) /* Microsoft compiler */
 #define __func__ __FUNCTION__
 #define __attribute__(x)