#ifdef HAVE_IOCTLSOCKET
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
int main(void)
#ifdef HAVE_IOCTLSOCKET_CAMEL
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
int main(void)
#ifdef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
int main(void)
#ifdef HAVE_IOCTLSOCKET_FIONBIO
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
int main(void)
#ifdef HAVE_SETSOCKOPT_SO_NONBLOCK
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
/* includes start */
macro(add_header_include check header)
if(${check})
- set(_source_epilogue "${_source_epilogue}\n#include <${header}>")
+ set(_source_epilogue "${_source_epilogue}
+ #include <${header}>")
endif()
endmacro()
-set(signature_call_conv)
-if(HAVE_WINDOWS_H)
- set(_source_epilogue
- "${_source_epilogue}\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif")
- add_header_include(HAVE_WINSOCK2_H "winsock2.h")
- add_header_include(HAVE_WINDOWS_H "windows.h")
- set(signature_call_conv "PASCAL")
- if(WIN32)
- set(CMAKE_REQUIRED_LIBRARIES "ws2_32")
- endif()
+if(WIN32)
+ set(CMAKE_EXTRA_INCLUDE_FILES "winsock2.h")
+ set(CMAKE_REQUIRED_DEFINITIONS "-DWIN32_LEAN_AND_MEAN")
+ set(CMAKE_REQUIRED_LIBRARIES "ws2_32")
else()
add_header_include(HAVE_SYS_TYPES_H "sys/types.h")
add_header_include(HAVE_SYS_SOCKET_H "sys/socket.h")
return 0;
}" HAVE_MSG_NOSIGNAL)
-if(NOT HAVE_WINDOWS_H)
+if(NOT WIN32)
add_header_include(HAVE_SYS_TIME_H "sys/time.h")
endif()
check_c_source_compiles("${_source_epilogue}
return 0;
}" HAVE_STRUCT_TIMEVAL)
-if(HAVE_WINDOWS_H)
- set(CMAKE_EXTRA_INCLUDE_FILES "winsock2.h")
-else()
+if(NOT WIN32)
set(CMAKE_EXTRA_INCLUDE_FILES)
if(HAVE_SYS_SOCKET_H)
set(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
# On windows preload settings
if(WIN32)
- set(HAVE_WINDOWS_H 1)
- set(HAVE_WS2TCPIP_H 1)
- set(HAVE_WINSOCK2_H 1)
include(${CMAKE_CURRENT_SOURCE_DIR}/CMake/Platforms/WindowsCache.cmake)
endif()
endif()
set(NEED_LBER_H ON)
set(_HEADER_LIST)
- if(HAVE_WINDOWS_H)
+ if(WIN32)
list(APPEND _HEADER_LIST "windows.h")
endif()
if(HAVE_SYS_TYPES_H)
# Check for header files
if(WIN32)
- check_include_file_concat("winsock2.h" HAVE_WINSOCK2_H)
- check_include_file_concat("ws2tcpip.h" HAVE_WS2TCPIP_H)
- check_include_file_concat("windows.h" HAVE_WINDOWS_H)
+ set(CURL_INCLUDES ${CURL_INCLUDES} "winsock2.h")
+ set(CURL_INCLUDES ${CURL_INCLUDES} "ws2tcpip.h")
+ set(CURL_INCLUDES ${CURL_INCLUDES} "windows.h")
endif()
if(WIN32)
# TODO test which of these headers are required
if(WIN32)
- set(CURL_PULL_WS2TCPIP_H ${HAVE_WS2TCPIP_H})
+ set(CURL_PULL_WS2TCPIP_H 1)
else()
set(CURL_PULL_SYS_TYPES_H ${HAVE_SYS_TYPES_H})
set(CURL_PULL_SYS_SOCKET_H ${HAVE_SYS_SOCKET_H})
])
-dnl CURL_CHECK_HEADER_WINDOWS
-dnl -------------------------------------------------
-dnl Check for compilable and valid windows.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINDOWS], [
- AC_CACHE_CHECK([for windows.h], [curl_cv_header_windows_h], [
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
- ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
- HAVE_WINDOWS_H shall not be defined.
-#else
- int dummy=2*WINVER;
-#endif
- ]])
- ],[
- curl_cv_header_windows_h="yes"
- ],[
- curl_cv_header_windows_h="no"
- ])
- ])
- case "$curl_cv_header_windows_h" in
- yes)
- AC_DEFINE_UNQUOTED(HAVE_WINDOWS_H, 1,
- [Define to 1 if you have the windows.h header file.])
- ;;
- esac
-])
-
-
dnl CURL_CHECK_NATIVE_WINDOWS
dnl -------------------------------------------------
dnl Check if building a native Windows target
AC_DEFUN([CURL_CHECK_NATIVE_WINDOWS], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
AC_CACHE_CHECK([whether build target is a native Windows one], [curl_cv_native_windows], [
- if test "$curl_cv_header_windows_h" = "no"; then
- curl_cv_native_windows="no"
- else
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([[
- ]],[[
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
- (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
- int dummy=1;
-#else
- Not a native Windows build target.
-#endif
- ]])
- ],[
- curl_cv_native_windows="yes"
- ],[
- curl_cv_native_windows="no"
- ])
- fi
- ])
- AM_CONDITIONAL(DOING_NATIVE_WINDOWS, test "x$curl_cv_native_windows" = xyes)
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK2
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock2.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK2], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
- AC_CACHE_CHECK([for winsock2.h], [curl_cv_header_winsock2_h], [
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
- HAVE_WINSOCK2_H shall not be defined.
+#ifdef _WIN32
+ int dummy=1;
#else
- int dummy=2*IPPROTO_ESP;
+ Not a native Windows build target.
#endif
]])
],[
- curl_cv_header_winsock2_h="yes"
+ curl_cv_native_windows="yes"
],[
- curl_cv_header_winsock2_h="no"
- ])
- ])
- case "$curl_cv_header_winsock2_h" in
- yes)
- AC_DEFINE_UNQUOTED(HAVE_WINSOCK2_H, 1,
- [Define to 1 if you have the winsock2.h header file.])
- ;;
- esac
-])
-
-
-dnl CURL_CHECK_HEADER_WS2TCPIP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ws2tcpip.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
- AC_CACHE_CHECK([for ws2tcpip.h], [curl_cv_header_ws2tcpip_h], [
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
- ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
- HAVE_WS2TCPIP_H shall not be defined.
-#else
- int dummy=2*IP_PKTINFO;
-#endif
- ]])
- ],[
- curl_cv_header_ws2tcpip_h="yes"
- ],[
- curl_cv_header_ws2tcpip_h="no"
+ curl_cv_native_windows="no"
])
])
- case "$curl_cv_header_ws2tcpip_h" in
- yes)
- AC_DEFINE_UNQUOTED(HAVE_WS2TCPIP_H, 1,
- [Define to 1 if you have the ws2tcpip.h header file.])
- ;;
- esac
+ AM_CONDITIONAL(DOING_NATIVE_WINDOWS, test "x$curl_cv_native_windows" = xyes)
])
dnl and check if it is needed even with ldap.h
AC_DEFUN([CURL_CHECK_HEADER_LBER], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_CACHE_CHECK([for lber.h], [curl_cv_header_lber_h], [
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
[if struct sockaddr_storage is defined]), ,
[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
#ifdef HAVE_SYS_TYPES_H
dnl Test if the socket recv() function is available,
AC_DEFUN([CURL_CHECK_FUNC_RECV], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_REQUIRE([CURL_INCLUDES_BSDSOCKET])dnl
AC_CHECK_HEADERS(sys/types.h sys/socket.h)
#
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
$curl_includes_bsdsocket
dnl Test if the socket send() function is available,
AC_DEFUN([CURL_CHECK_FUNC_SEND], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_REQUIRE([CURL_INCLUDES_BSDSOCKET])dnl
AC_CHECK_HEADERS(sys/types.h sys/socket.h)
#
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
$curl_includes_bsdsocket
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
#ifdef HAVE_SYS_TYPES_H
dnl Check for timeval struct
AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_CHECK_HEADERS(sys/types.h sys/time.h sys/socket.h)
AC_CACHE_CHECK([for struct timeval], [curl_cv_struct_timeval], [
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#endif
#ifdef HAVE_SYS_TYPES_H
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
#ifdef HAVE_SYS_TYPES_H
esac
],[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#else
#ifdef HAVE_SYS_TYPES_H
AC_LANG_PROGRAM([[
$curl_includes_winsock2
$curl_includes_bsdsocket
- #if !defined(HAVE_WINDOWS_H) && !defined(HAVE_PROTO_BSDSOCKET_H)
+ #if !defined(_WIN32) && !defined(HAVE_PROTO_BSDSOCKET_H)
int connect(int, void*, int);
#endif
]],[[
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#endif
#ifdef HAVE_SYS_TYPES_H
#include <sys/time.h>
#endif
#include <time.h>
-#ifndef HAVE_WINDOWS_H
+#ifndef _WIN32
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#elif defined(HAVE_UNISTD_H)
dnl Check if curl's WIN32 large file will be used
AC_DEFUN([CURL_CHECK_WIN32_LARGEFILE], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_MSG_CHECKING([whether build target supports WIN32 file API])
curl_win32_file_api="no"
- if test "$curl_cv_header_windows_h" = "yes"; then
+ if test "$curl_cv_native_windows" = "yes"; then
if test x"$enable_largefile" != "xno"; then
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
]],[[
-#if !defined(_WIN32_WCE) && \
- (defined(__MINGW32__) || \
- (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64))))
+#if !defined(_WIN32_WCE) && (defined(__MINGW32__) || defined(_MSC_VER))
int dummy=1;
#else
WIN32 large file API not supported.
dnl Check if curl's WIN32 crypto lib can be used
AC_DEFUN([CURL_CHECK_WIN32_CRYPTO], [
- AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
+ AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl
AC_MSG_CHECKING([whether build target supports WIN32 crypto API])
curl_win32_crypto_api="no"
- if test "$curl_cv_header_windows_h" = "yes"; then
+ if test "$curl_cv_native_windows" = "yes"; then
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#undef inline
dnl **********************************************************************
CURL_CHECK_COMPILER
+CURL_CHECK_NATIVE_WINDOWS
CURL_SET_COMPILER_BASIC_OPTS
CURL_SET_COMPILER_DEBUG_OPTS
CURL_SET_COMPILER_OPTIMIZE_OPTS
dnl Compilation based checks should not be done before this point.
dnl **********************************************************************
-dnl **********************************************************************
-dnl Make sure that our checks for headers windows.h winsock2.h
-dnl and ws2tcpip.h take precedence over any other further checks which
-dnl could be done later using AC_CHECK_HEADER or AC_CHECK_HEADERS for
-dnl this specific header files. And do them before its results are used.
-dnl **********************************************************************
-
-CURL_CHECK_HEADER_WINDOWS
-CURL_CHECK_NATIVE_WINDOWS
-case X-"$curl_cv_native_windows" in
- X-yes)
- CURL_CHECK_HEADER_WINSOCK2
- CURL_CHECK_HEADER_WS2TCPIP
- ;;
- *)
- curl_cv_header_winsock2_h="no"
- curl_cv_header_ws2tcpip_h="no"
- ;;
-esac
CURL_CHECK_WIN32_LARGEFILE
CURL_CHECK_WIN32_CRYPTO
if test "$HAVE_GETHOSTBYNAME" != "1"
then
dnl This is for winsock systems
- if test "$curl_cv_header_windows_h" = "yes"; then
- if test "$curl_cv_header_winsock2_h" = "yes"; then
- winsock_LIB="-lws2_32"
- fi
+ if test "$curl_cv_native_windows" = "yes"; then
+ winsock_LIB="-lws2_32"
if test ! -z "$winsock_LIB"; then
my_ac_save_LIBS=$LIBS
LIBS="$winsock_LIB $LIBS"
AC_MSG_CHECKING([for gethostbyname in $winsock_LIB])
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
-#endif
#include <windows.h>
#endif
]],[[
AC_RUN_IFELSE([AC_LANG_SOURCE([[
/* are AF_INET6 and sockaddr_in6 available? */
#include <sys/types.h>
-#ifdef HAVE_WINSOCK2_H
+#ifdef _WIN32
#include <winsock2.h>
#include <ws2tcpip.h>
#else
AC_MSG_CHECKING([if struct sockaddr_in6 has sin6_scope_id member])
AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([[
#include <sys/types.h>
-#ifdef HAVE_WINSOCK2_H
+#ifdef _WIN32
#include <winsock2.h>
#include <ws2tcpip.h>
#else
AC_DEFINE(CURL_SA_FAMILY_T, ADDRESS_FAMILY, [IP address type in sockaddr]),
AC_DEFINE(CURL_SA_FAMILY_T, unsigned short, [IP address type in sockaddr]),
[
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
-#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
#endif
-#endif
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#include <curl/curl.h>
#ifdef _WIN32
-#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
+#include <windows.h>
#define close closesocket
#else
#include <sys/types.h> /* socket types */
#define nosigpipe(x,y) Curl_nop_stmt
#endif
-#if defined(__DragonFly__) || defined(HAVE_WINSOCK2_H)
+#if defined(__DragonFly__) || defined(USE_WINSOCK)
/* DragonFlyBSD and Windows use millisecond units */
#define KEEPALIVE_FACTOR(x) (x *= 1000)
#else
#define KEEPALIVE_FACTOR(x)
#endif
-#if defined(HAVE_WINSOCK2_H) && !defined(SIO_KEEPALIVE_VALS)
+#if defined(USE_WINSOCK) && !defined(SIO_KEEPALIVE_VALS)
#define SIO_KEEPALIVE_VALS _WSAIOW(IOC_VENDOR,4)
struct tcp_keepalive {
#define HAVE_UNISTD_H 1
#endif
-/* Define if you have the <windows.h> header file. */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock2.h> header file. */
-#define HAVE_WINSOCK2_H 1
-
-/* Define if you have the <ws2tcpip.h> header file. */
-#define HAVE_WS2TCPIP_H 1
-
/* Define to 1 if you have the <libgen.h> header file. */
#if defined(__MINGW32__)
#define HAVE_LIBGEN_H 1
/* Define to the size of `curl_off_t', as computed by sizeof. */
#define SIZEOF_CURL_OFF_T 8
-/* ---------------------------------------------------------------- */
-/* BSD-style lwIP TCP/IP stack SPECIFIC */
-/* ---------------------------------------------------------------- */
-
-/* Define to use BSD-style lwIP TCP/IP stack. */
-/* #define USE_LWIPSOCK 1 */
-
-#ifdef USE_LWIPSOCK
-# undef USE_WINSOCK
-# undef HAVE_WINSOCK2_H
-# undef HAVE_WS2TCPIP_H
-# undef HAVE_GETHOSTNAME
-# undef LWIP_POSIX_SOCKETS_IO_NAMES
-# undef RECV_TYPE_ARG1
-# undef RECV_TYPE_ARG3
-# undef SEND_TYPE_ARG1
-# undef SEND_TYPE_ARG3
-# define HAVE_GETHOSTBYNAME_R
-# define HAVE_GETHOSTBYNAME_R_6
-# define LWIP_POSIX_SOCKETS_IO_NAMES 0
-# define RECV_TYPE_ARG1 int
-# define RECV_TYPE_ARG3 size_t
-# define SEND_TYPE_ARG1 int
-# define SEND_TYPE_ARG3 size_t
-#endif
-
-/* ---------------------------------------------------------------- */
-/* Watt-32 tcp/ip SPECIFIC */
-/* ---------------------------------------------------------------- */
-
-#ifdef USE_WATT32
- #include <tcp.h>
- #undef byte
- #undef word
- #undef USE_WINSOCK
- #undef HAVE_WINSOCK2_H
- #undef HAVE_WS2TCPIP_H
- #define HAVE_SYS_IOCTL_H
- #define HAVE_SYS_SOCKET_H
- #define HAVE_NETINET_IN_H
- #define HAVE_NETDB_H
- #define HAVE_ARPA_INET_H
- #define SOCKET int
-#endif
-
-
/* ---------------------------------------------------------------- */
/* COMPILER SPECIFIC */
/* ---------------------------------------------------------------- */
#define HAVE_UNISTD_H 1
#endif
-/* Define if you have the <windows.h> header file. */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock2.h> header file. */
-#define HAVE_WINSOCK2_H 1
-
-/* Define if you have the <ws2tcpip.h> header file. */
-#define HAVE_WS2TCPIP_H 1
-
/* ---------------------------------------------------------------- */
/* OTHER HEADER INFO */
/* ---------------------------------------------------------------- */
/* Define to 1 if you have the <utime.h> header file. */
#cmakedefine HAVE_UTIME_H 1
-/* Define to 1 if you have the windows.h header file. */
-#cmakedefine HAVE_WINDOWS_H 1
-
-/* Define to 1 if you have the winsock2.h header file. */
-#cmakedefine HAVE_WINSOCK2_H 1
-
/* Define this symbol if your OS supports changing the contents of argv */
#cmakedefine HAVE_WRITABLE_ARGV 1
-/* Define to 1 if you have the ws2tcpip.h header file. */
-#cmakedefine HAVE_WS2TCPIP_H 1
-
/* Define to 1 if you need the lber.h header file even with ldap.h */
#cmakedefine NEED_LBER_H 1
* Windows setup file includes some system headers.
*/
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# include "setup-win32.h"
#endif
*/
#if defined(__LWIP_OPT_H__) || defined(LWIP_HDR_OPT_H)
-# if defined(SOCKET) || \
- defined(USE_WINSOCK) || \
- defined(HAVE_WINSOCK2_H) || \
- defined(HAVE_WS2TCPIP_H)
+# if defined(SOCKET) || defined(USE_WINSOCK)
# error "WinSock and lwIP TCP/IP stack definitions shall not coexist!"
# endif
#endif
#ifdef HAVE_INET_PTON
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
-#elif defined(HAVE_WS2TCPIP_H)
+#elif defined(USE_WINSOCK)
/* inet_pton() exists in Vista or later */
#include <ws2tcpip.h>
#endif
*
***************************************************************************/
+#undef USE_WINSOCK
+/* ---------------------------------------------------------------- */
+/* Watt-32 TCP/IP SPECIFIC */
+/* ---------------------------------------------------------------- */
+#ifdef USE_WATT32
+# include <tcp.h>
+# undef byte
+# undef word
+# define HAVE_SYS_IOCTL_H
+# define HAVE_SYS_SOCKET_H
+# define HAVE_NETINET_IN_H
+# define HAVE_NETDB_H
+# define HAVE_ARPA_INET_H
+# define SOCKET int
+/* ---------------------------------------------------------------- */
+/* BSD-style lwIP TCP/IP stack SPECIFIC */
+/* ---------------------------------------------------------------- */
+#elif defined(USE_LWIPSOCK)
+ /* Define to use BSD-style lwIP TCP/IP stack. */
+ /* #define USE_LWIPSOCK 1 */
+# undef HAVE_GETHOSTNAME
+# undef LWIP_POSIX_SOCKETS_IO_NAMES
+# undef RECV_TYPE_ARG1
+# undef RECV_TYPE_ARG3
+# undef SEND_TYPE_ARG1
+# undef SEND_TYPE_ARG3
+# define HAVE_GETHOSTBYNAME_R
+# define HAVE_GETHOSTBYNAME_R_6
+# define LWIP_POSIX_SOCKETS_IO_NAMES 0
+# define RECV_TYPE_ARG1 int
+# define RECV_TYPE_ARG3 size_t
+# define SEND_TYPE_ARG1 int
+# define SEND_TYPE_ARG3 size_t
+#elif defined(_WIN32)
+# define USE_WINSOCK 2
+#endif
+
/*
* Include header files for windows builds before redefining anything.
* Use this preprocessor block only to include or exclude windows.h,
* winsock2.h or ws2tcpip.h. Any other windows thing belongs
* to any other further and independent block. Under Cygwin things work
* just as under linux (e.g. <sys/socket.h>) and the winsock headers should
- * never be included when __CYGWIN__ is defined. configure script takes
- * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK2_H,
- * neither HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
+ * never be included when __CYGWIN__ is defined.
*/
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# if defined(UNICODE) && !defined(_UNICODE)
# error "UNICODE is defined but _UNICODE is not defined"
# endif
# ifndef NOGDI
# define NOGDI
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# ifdef HAVE_WS2TCPIP_H
-# include <ws2tcpip.h>
-# endif
-# endif
+# include <winsock2.h>
+# include <ws2tcpip.h>
# include <windows.h>
# include <winerror.h>
# include <tchar.h>
# endif
#endif
-/*
- * Define USE_WINSOCK to 2 if we have and use WINSOCK2 API, else
- * undefine USE_WINSOCK.
- */
-
-#undef USE_WINSOCK
-
-#ifdef HAVE_WINSOCK2_H
-# define USE_WINSOCK 2
-#endif
-
/*
* Define _WIN32_WINNT_[OS] symbols because not all Windows build systems have
* those symbols to compare against, and even those that do may be missing
flags_opt_all="-O -O0 -O1 -O2 -O3 -Os -Og -Ofast"
flags_opt_yes="-O2"
flags_opt_off="-O0"
- CURL_CHECK_DEF([_WIN32], [], [silent])
else
AC_MSG_RESULT([no])
fi
dnl Only gcc 4.5 or later
if test "$compiler_num" -ge "405"; then
dnl Only windows targets
- if test "$curl_cv_have_def__WIN32" = "yes"; then
+ if test "$curl_cv_native_windows" = "yes"; then
tmp_CFLAGS="$tmp_CFLAGS -Wno-pedantic-ms-format"
fi
fi
#ifdef HAVE_ARPA_INET_H
# include <arpa/inet.h>
#endif
-#ifdef HAVE_WINSOCK2_H
+#ifdef _WIN32
#include <winsock2.h>
#include <ws2tcpip.h>
#endif
AC_DEFUN([CURL_INCLUDES_WINSOCK2], [
curl_includes_winsock2="\
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# endif
+# include <winsock2.h>
# include <windows.h>
#endif
/* includes end */"
- CURL_CHECK_HEADER_WINDOWS
- CURL_CHECK_HEADER_WINSOCK2
+ CURL_CHECK_NATIVE_WINDOWS
])
AC_DEFUN([CURL_INCLUDES_WS2TCPIP], [
curl_includes_ws2tcpip="\
/* includes start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# ifndef WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
# endif
-# ifdef HAVE_WINSOCK2_H
-# include <winsock2.h>
-# ifdef HAVE_WS2TCPIP_H
-# include <ws2tcpip.h>
-# endif
-# endif
+# include <winsock2.h>
+# include <ws2tcpip.h>
# include <windows.h>
#endif
/* includes end */"
- CURL_CHECK_HEADER_WINDOWS
- CURL_CHECK_HEADER_WINSOCK2
- CURL_CHECK_HEADER_WS2TCPIP
+ CURL_CHECK_NATIVE_WINDOWS
])
AC_DEFUN([CURL_PREPROCESS_CALLCONV], [
curl_preprocess_callconv="\
/* preprocess start */
-#ifdef HAVE_WINDOWS_H
+#ifdef _WIN32
# define FUNCALLCONV __stdcall
#else
# define FUNCALLCONV
struct addrinfo *ai = 0;
int error;
- #ifdef HAVE_WINSOCK2_H
+ #ifdef _WIN32
WSADATA wsa;
if(WSAStartup(MAKEWORD(2, 2), &wsa))
exit(2);