@@ -579,6 +579,22 @@ if test "$curl_cv_native_windows" = "yes"; then
579579 case "$CPPFLAGS" in
580580 *-DWINSTORECOMPAT*) curl_cv_winuwp='yes';;
581581 esac
582+
583+ AC_MSG_CHECKING ( [ if building for Windows Vista or newer] )
584+ AC_COMPILE_IFELSE ( [
585+ AC_LANG_PROGRAM ( [ [
586+ #include <windows.h>
587+ ] ] ,[ [
588+ #if (_WIN32_WINNT < 0x600)
589+ #error
590+ #endif
591+ ] ] )
592+ ] ,[
593+ AC_MSG_RESULT ( [ yes] )
594+ ] ,[
595+ AC_MSG_RESULT ( [ no] )
596+ AC_MSG_ERROR ( [ Building for Windows Vista or newer is required.] )
597+ ] )
582598fi
583599
584600CURL_SET_COMPILER_BASIC_OPTS
@@ -2812,7 +2828,7 @@ if test "$curl_cv_native_windows" = "yes"; then
28122828 AC_MSG_CHECKING ( [ whether to enable Windows native IDN (Windows native builds only)] )
28132829 OPT_WINIDN="default"
28142830 AC_ARG_WITH ( winidn ,
2815- AS_HELP_STRING ( [ --with-winidn=PATH ] ,[ enable Windows native IDN] )
2831+ AS_HELP_STRING ( [ --with-winidn] ,[ enable Windows native IDN] )
28162832AS_HELP_STRING ( [ --without-winidn] , [ disable Windows native IDN] ) ,
28172833 OPT_WINIDN=$withval )
28182834 case "$OPT_WINIDN" in
@@ -2821,75 +2837,18 @@ AS_HELP_STRING([--without-winidn], [disable Windows native IDN]),
28212837 want_winidn="no"
28222838 AC_MSG_RESULT ( [ no] )
28232839 ;;
2824- yes)
2825- dnl --with-winidn option used without path
2826- want_winidn="yes"
2827- want_winidn_path="default"
2828- AC_MSG_RESULT ( [ yes] )
2829- ;;
28302840 *)
2831- dnl --with-winidn option used with path
2841+ dnl --with-winidn option
28322842 want_winidn="yes"
2833- want_winidn_path="$withval"
2834- AC_MSG_RESULT ( [ yes ($withval)] )
2843+ AC_MSG_RESULT ( [ yes] )
28352844 ;;
28362845 esac
28372846
28382847 if test "$want_winidn" = "yes"; then
2839- dnl WinIDN library support has been requested
2840- clean_CPPFLAGS="$CPPFLAGS"
2841- clean_LDFLAGS="$LDFLAGS"
2842- clean_LDFLAGSPC="$LDFLAGSPC"
2843- clean_LIBS="$LIBS"
2844- WINIDN_LIBS="-lnormaliz"
2845- WINIDN_CPPFLAGS=""
2846- #
2847- if test "$want_winidn_path" != "default"; then
2848- dnl path has been specified
2849- dnl pkg-config not available or provides no info
2850- WINIDN_LDFLAGS="-L$want_winidn_path/lib$libsuff"
2851- WINIDN_CPPFLAGS="-I$want_winidn_path/include"
2852- fi
2853- #
2854- CPPFLAGS="$CPPFLAGS $WINIDN_CPPFLAGS"
2855- LDFLAGS="$LDFLAGS $WINIDN_LDFLAGS"
2856- LDFLAGSPC="$LDFLAGSPC $WINIDN_LDFLAGS"
2857- LIBS="$WINIDN_LIBS $LIBS"
2858- #
2859- AC_MSG_CHECKING ( [ if IdnToUnicode can be linked] )
2860- AC_LINK_IFELSE ( [
2861- AC_LANG_PROGRAM ( [ [
2862- #include <windows.h>
2863- ] ] ,[ [
2864- #if (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x600) && \
2865- (!defined(WINVER) || WINVER < 0x600)
2866- WINBASEAPI int WINAPI IdnToUnicode(DWORD dwFlags,
2867- const WCHAR *lpASCIICharStr,
2868- int cchASCIIChar,
2869- WCHAR *lpUnicodeCharStr,
2870- int cchUnicodeChar);
2871- #endif
2872- IdnToUnicode(0, NULL, 0, NULL, 0);
2873- ] ] )
2874- ] ,[
2875- AC_MSG_RESULT ( [ yes] )
2876- tst_links_winidn="yes"
2877- ] ,[
2878- AC_MSG_RESULT ( [ no] )
2879- tst_links_winidn="no"
2880- ] )
2881- #
2882- if test "$tst_links_winidn" = "yes"; then
2883- AC_DEFINE ( USE_WIN32_IDN , 1 , [ Define to 1 if you have the `normaliz' (WinIDN) library (-lnormaliz).] )
2884- IDN_ENABLED=1
2885- curl_idn_msg="enabled (Windows-native)"
2886- else
2887- AC_MSG_WARN ( [ Cannot find libraries for IDN support: IDN disabled] )
2888- CPPFLAGS="$clean_CPPFLAGS"
2889- LDFLAGS="$clean_LDFLAGS"
2890- LDFLAGSPC="$clean_LDFLAGSPC"
2891- LIBS="$clean_LIBS"
2892- fi
2848+ LIBS="-lnormaliz $LIBS"
2849+ AC_DEFINE ( USE_WIN32_IDN , 1 , [ Define to 1 if you have the `normaliz' (WinIDN) library (-lnormaliz).] )
2850+ IDN_ENABLED=1
2851+ curl_idn_msg="enabled (Windows-native)"
28932852 fi
28942853fi
28952854
@@ -4250,26 +4209,7 @@ AC_CHECK_FUNCS([\
42504209 utimes \
42514210] )
42524211
4253- if test "$curl_cv_native_windows" = "yes"; then
4254- AC_MSG_CHECKING ( [ for if_nametoindex on Windows] )
4255- AC_LINK_IFELSE ( [
4256- AC_LANG_PROGRAM ( [ [
4257- #ifndef WIN32_LEAN_AND_MEAN
4258- #define WIN32_LEAN_AND_MEAN
4259- #endif
4260- #include <winsock2.h>
4261- #include <wincrypt.h> /* workaround for mingw-w64 __MINGW64_VERSION_MAJOR <= 5 header bug */
4262- #include <iphlpapi.h>
4263- ] ] ,[ [
4264- if_nametoindex("");
4265- ] ] )
4266- ] ,[
4267- AC_MSG_RESULT ( [ yes] )
4268- AC_DEFINE ( HAVE_IF_NAMETOINDEX , 1 , [ if you have the 'if_nametoindex' function] )
4269- ] ,[
4270- AC_MSG_RESULT ( [ no] )
4271- ] )
4272- else
4212+ if test "$curl_cv_native_windows" != "yes"; then
42734213 AC_CHECK_FUNCS ( [ \
42744214 if_nametoindex \
42754215 realpath \
@@ -5369,19 +5309,8 @@ if test "$tst_atomic" = "yes"; then
53695309 SUPPORT_FEATURES="$SUPPORT_FEATURES threadsafe"
53705310elif test "$USE_THREADS_POSIX" = "1" && test "$ac_cv_header_pthread_h" = "yes"; then
53715311 SUPPORT_FEATURES="$SUPPORT_FEATURES threadsafe"
5372- else
5373- AC_COMPILE_IFELSE ( [
5374- AC_LANG_PROGRAM ( [ [
5375- #include <windows.h>
5376- ] ] ,[ [
5377- #if (_WIN32_WINNT < 0x600)
5378- #error
5379- #endif
5380- ] ] )
5381- ] ,[
5382- SUPPORT_FEATURES="$SUPPORT_FEATURES threadsafe"
5383- ] ,[
5384- ] )
5312+ elif test "$curl_cv_native_windows" = "yes"; then
5313+ SUPPORT_FEATURES="$SUPPORT_FEATURES threadsafe"
53855314fi
53865315
53875316if test "$want_winuni" = "yes"; then
0 commit comments