[vlc-devel] [3.0 PATCH 2/5] configure: Make the new value of _WIN32_WINNT available to configure tests

Martin Storsjö martin at martin.st
Mon Apr 6 15:31:34 CEST 2020


Definitions from AH_TOP aren't included in the configure checks.

This was the original intent of e807c8e91.

This makes sure configure checks and actual compilation are run
with the same version defined.

EDIT: Adapted to a different default version in the 3.0 branch.

(cherry picked from commit 0a27328b5ac2bc0e417c70f048131f783b201d04)
---
Posted for reference/discussion now, totally ok to defer pushing until
after the pending 3.0 release.
---
 configure.ac | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/configure.ac b/configure.ac
index 5505f05811..eef315b1ae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -218,10 +218,14 @@ case "${host_os}" in
     CXXFLAGS="${CXXFLAGS} -static-libgcc"
     AC_CHECK_TOOL(WINDRES, windres, :)
     AC_CHECK_TOOL(OBJCOPY, objcopy, :)
-    AH_TOP([#if defined(_WIN32) && (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0502)])
-    AH_TOP([# undef _WIN32_WINNT])
-    AH_TOP([# define _WIN32_WINNT 0x0502 /* Windows XP SP2 */])
-    AH_TOP([#endif])
+    AC_PREPROC_IFELSE([AC_LANG_PROGRAM(
+      [[#ifdef _WIN32_WINNT
+       # error _WIN32_WINNT already defined
+       #endif
+      ]],[[;]])
+    ],[
+      AC_DEFINE([_WIN32_WINNT], 0x0502, [Define to '0x0502' for Windows XP SP2 APIs.])
+    ])
     AC_DEFINE([_WIN32_IE], 0x0600, [Define to '0x0600' for IE 6.0 (and shell) APIs.])
     AC_DEFINE([_UNICODE], [1], [Define to 1 for Unicode (Wide Chars) APIs.])
     AC_DEFINE([UNICODE], [1], [Define to 1 for Unicode (Wide Chars) APIs.])
-- 
2.17.1



More information about the vlc-devel mailing list