From: Viktor Szakats Date: Fri, 17 Jan 2025 20:33:12 +0000 (+0100) Subject: windows: merge `config-win32ce.h` into `config-win32.h` X-Git-Tag: curl-8_12_0~77 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=292d81ca54aa9f32a26fc7ecb53e1cc1859353a5;p=thirdparty%2Fcurl.git windows: merge `config-win32ce.h` into `config-win32.h` They were more or less the same, but each missed some things the other had. Windows CE is a subset of Win32, make the headers reflect that and avoid duplications. Ref: #15975 Closes #16038 --- diff --git a/lib/Makefile.am b/lib/Makefile.am index ede73a83bf..e57707850e 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -28,9 +28,9 @@ CMAKE_DIST = CMakeLists.txt curl_config.h.cmake CHECKSRC_DIST = .checksrc vauth/.checksrc vquic/.checksrc vssh/.checksrc \ vtls/.checksrc -EXTRA_DIST = config-win32.h config-win32ce.h config-plan9.h \ +EXTRA_DIST = config-win32.h config-plan9.h \ config-riscos.h config-mac.h curl_config.h.in libcurl.rc \ - config-win32ce.h config-os400.h setup-os400.h \ + config-os400.h setup-os400.h \ $(CMAKE_DIST) setup-win32.h Makefile.soname optiontable.pl libcurl.def \ $(CHECKSRC_DIST) diff --git a/lib/config-win32.h b/lib/config-win32.h index 236182f87e..3a225b4812 100644 --- a/lib/config-win32.h +++ b/lib/config-win32.h @@ -42,7 +42,9 @@ #define HAVE_IO_H 1 /* Define if you have the header file. */ +#ifndef UNDER_CE #define HAVE_LOCALE_H 1 +#endif /* Define if you have the header file. */ /* #define HAVE_NETDB_H 1 */ @@ -56,7 +58,7 @@ #endif /* Define if you have the header file. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_SYS_PARAM_H 1 #endif @@ -73,7 +75,7 @@ #define HAVE_SYS_STAT_H 1 /* Define if you have the header file. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_SYS_TIME_H 1 #endif @@ -90,12 +92,12 @@ /* #define HAVE_TERMIOS_H 1 */ /* Define if you have the header file. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_UNISTD_H 1 #endif /* Define to 1 if you have the header file. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_LIBGEN_H 1 #endif @@ -119,7 +121,7 @@ #define HAVE_CLOSESOCKET 1 /* Define if you have the ftruncate function. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_FTRUNCATE 1 #endif @@ -133,7 +135,7 @@ #define HAVE_GETHOSTNAME 1 /* Define if you have the gettimeofday function. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_GETTIMEOFDAY 1 #endif @@ -146,6 +148,7 @@ /* Define if you have the select function. */ #define HAVE_SELECT 1 +#ifndef UNDER_CE /* Define if you have the setlocale function. */ #define HAVE_SETLOCALE 1 @@ -154,6 +157,7 @@ /* Define if you have the _setmode function. */ #define HAVE__SETMODE 1 +#endif /* Define if you have the socket function. */ #define HAVE_SOCKET 1 @@ -213,7 +217,8 @@ #define HAVE_SNPRINTF 1 #endif -#if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x600 /* Vista */ +/* Vista */ +#if (defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x600) && !defined(UNDER_CE) /* Define to 1 if you have a IPv6 capable working inet_ntop function. */ #define HAVE_INET_NTOP 1 /* Define to 1 if you have a IPv6 capable working inet_pton function. */ @@ -221,17 +226,19 @@ #endif /* Define to 1 if you have the `basename' function. */ -#if defined(__MINGW32__) +#ifdef __MINGW32__ #define HAVE_BASENAME 1 #endif /* Define to 1 if you have the strtok_r function. */ -#if defined(__MINGW32__) +#if defined(__MINGW32__) && !defined(__MINGW32CE__) #define HAVE_STRTOK_R 1 #endif /* Define to 1 if you have the signal function. */ +#ifndef UNDER_CE #define HAVE_SIGNAL 1 +#endif /* ---------------------------------------------------------------- */ /* TYPEDEF REPLACEMENTS */ @@ -242,7 +249,7 @@ /* Define if ssize_t is not an available 'typedefed' type. */ #ifndef _SSIZE_T_DEFINED -# if defined(__MINGW32__) +# ifdef __MINGW32__ # elif defined(_WIN64) # define _SSIZE_T_DEFINED # define ssize_t __int64 @@ -266,7 +273,7 @@ #define SIZEOF_LONG 4 /* Define to the size of `size_t', as computed by sizeof. */ -#if defined(_WIN64) +#ifdef _WIN64 # define SIZEOF_SIZE_T 8 #else # define SIZEOF_SIZE_T 4 @@ -303,8 +310,10 @@ # endif #endif +#ifndef UNDER_CE + /* Define some minimum and default build targets for Visual Studio */ -#if defined(_MSC_VER) +#ifdef _MSC_VER /* Officially, Microsoft's Windows SDK versions 6.X does not support Windows 2000 as a supported build target. VS2008 default installations provides an embedded Windows SDK v6.0A along with the claim that Windows 2000 is a @@ -315,7 +324,7 @@ /* The minimum build target for VS2012 is Vista unless Update 1 is installed and the v110_xp toolset is chosen. */ -# if defined(_USING_V110_SDK71_) +# ifdef _USING_V110_SDK71_ # define VS2012_MIN_TARGET 0x0501 # else # define VS2012_MIN_TARGET 0x0600 @@ -327,7 +336,7 @@ /* VS2012 default build target is Windows Vista unless Update 1 is installed and the v110_xp toolset is chosen. */ -# if defined(_USING_V110_SDK71_) +# ifdef _USING_V110_SDK71_ # define VS2012_DEF_TARGET 0x0501 # else # define VS2012_DEF_TARGET 0x0600 @@ -356,7 +365,7 @@ # define WINVER VS2012_DEF_TARGET # endif # if (_WIN32_WINNT < VS2012_MIN_TARGET) || (WINVER < VS2012_MIN_TARGET) -# if defined(_USING_V110_SDK71_) +# ifdef _USING_V110_SDK71_ # error VS2012 does not support Windows build targets prior to Windows XP # else # error VS2012 does not support Windows build targets prior to Windows \ @@ -365,10 +374,14 @@ Vista # endif #endif +#endif /* UNDER_CE */ + /* Windows XP is required for freeaddrinfo, getaddrinfo */ +#ifndef UNDER_CE #define HAVE_FREEADDRINFO 1 #define HAVE_GETADDRINFO 1 #define HAVE_GETADDRINFO_THREADSAFE 1 +#endif /* ---------------------------------------------------------------- */ /* STRUCT RELATED */ @@ -387,6 +400,8 @@ Vista /* LARGE FILE SUPPORT */ /* ---------------------------------------------------------------- */ +#ifndef UNDER_CE + /* _fseeki64() requires VS2005 */ #if (defined(_MSC_VER) && (_MSC_VER >= 1400)) || defined(__MINGW32__) # define USE_WIN32_LARGE_FILES @@ -406,6 +421,8 @@ Vista # define SIZEOF_OFF_T 4 #endif +#endif /* UNDER_CE */ + /* ---------------------------------------------------------------- */ /* DNS RESOLVER SPECIALTY */ /* ---------------------------------------------------------------- */ @@ -431,26 +448,28 @@ Vista /* LDAP SUPPORT */ /* ---------------------------------------------------------------- */ -#if defined(CURL_HAS_NOVELL_LDAPSDK) +#ifdef CURL_HAS_NOVELL_LDAPSDK #undef USE_WIN32_LDAP #define HAVE_LDAP_SSL_H 1 #define HAVE_LDAP_URL_PARSE 1 #elif defined(CURL_HAS_OPENLDAP_LDAPSDK) #undef USE_WIN32_LDAP #define HAVE_LDAP_URL_PARSE 1 -#else +#elif !defined(CURL_WINDOWS_UWP) && !defined(UNDER_CE) #undef HAVE_LDAP_URL_PARSE #define HAVE_LDAP_SSL 1 #define USE_WIN32_LDAP 1 #endif /* Define to use the Windows crypto library. */ -#if !defined(CURL_WINDOWS_UWP) +#ifndef CURL_WINDOWS_UWP #define USE_WIN32_CRYPTO #endif /* Define to use Unix sockets. */ +#ifndef UNDER_CE #define USE_UNIX_SOCKETS +#endif /* ---------------------------------------------------------------- */ /* ADDITIONAL DEFINITIONS */ @@ -458,22 +477,58 @@ Vista /* Define cpu-machine-OS */ #ifndef CURL_OS -#if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */ -#define CURL_OS "i386-pc-win32" -#elif defined(_M_X64) || defined(__x86_64__) /* x86_64 (VS2005+ or gcc) */ -#define CURL_OS "x86_64-pc-win32" -#elif defined(_M_IA64) || defined(__ia64__) /* Itanium */ -#define CURL_OS "ia64-pc-win32" -#elif defined(_M_ARM_NT) || defined(__arm__) /* ARMv7-Thumb2 (Windows RT) */ -#define CURL_OS "thumbv7a-pc-win32" -#elif defined(_M_ARM64) || defined(__aarch64__) /* ARM64 (Windows 10) */ -#define CURL_OS "aarch64-pc-win32" -#else -#define CURL_OS "unknown-pc-win32" -#endif -#endif +# ifdef UNDER_CE +# ifdef _M_ARM +# define CURL_OS "arm-pc-win32ce" +# else +# define CURL_OS "i386-pc-win32ce" +# endif +# else /* !UNDER_CE */ +# if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */ +# define CURL_OS "i386-pc-win32" +# elif defined(_M_X64) || defined(__x86_64__) /* x86_64 (VS2005+ or gcc) */ +# define CURL_OS "x86_64-pc-win32" +# elif defined(_M_IA64) || defined(__ia64__) /* Itanium */ +# define CURL_OS "ia64-pc-win32" +# elif defined(_M_ARM_NT) || defined(__arm__) /* ARMv7-Thumb2 */ +# define CURL_OS "thumbv7a-pc-win32" +# elif defined(_M_ARM64) || defined(__aarch64__) /* ARM64 (Windows 10) */ +# define CURL_OS "aarch64-pc-win32" +# else +# define CURL_OS "unknown-pc-win32" +# endif +# endif /* UNDER_CE */ +#endif /* !CURL_OS */ /* If you want to build curl with the built-in manual */ +#ifndef UNDER_CE #define USE_MANUAL 1 +#endif + +/* ---------------------------------------------------------------- */ +/* Windows CE */ +/* ---------------------------------------------------------------- */ + +#ifdef UNDER_CE + +#ifndef UNICODE +#define UNICODE +#endif + +#ifndef _UNICODE +#define _UNICODE +#endif + +#define CURL_DISABLE_FILE 1 +#define CURL_DISABLE_TELNET 1 +#define CURL_DISABLE_LDAP 1 + +#define ENOSPC 1 +#define ENOMEM 2 +#define EAGAIN 3 + +extern int stat(const char *path, struct stat *buffer); + +#endif /* UNDER_CE */ #endif /* HEADER_CURL_CONFIG_WIN32_H */ diff --git a/lib/config-win32ce.h b/lib/config-win32ce.h deleted file mode 100644 index 71f893ce88..0000000000 --- a/lib/config-win32ce.h +++ /dev/null @@ -1,267 +0,0 @@ -#ifndef HEADER_CURL_CONFIG_WIN32CE_H -#define HEADER_CURL_CONFIG_WIN32CE_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) Daniel Stenberg, , 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 - * - ***************************************************************************/ - -/* ================================================================ */ -/* lib/config-win32ce.h - Hand crafted config file for Windows CE */ -/* ================================================================ */ - -/* ---------------------------------------------------------------- */ -/* HEADER FILES */ -/* ---------------------------------------------------------------- */ - -/* Define if you have the header file. */ -/* #define HAVE_ARPA_INET_H 1 */ - -/* Define if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define if you have the header file. */ -#define HAVE_IO_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_NETDB_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_NETINET_IN_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_PARAM_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SELECT_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SOCKET_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_SOCKIO_H 1 */ - -/* Define if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TIME_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_SYS_TYPES_H 1 */ - -/* Define if you have the header file. */ -#define HAVE_SYS_UTIME_H 1 - -/* Define if you have the header file. */ -/* #define HAVE_TERMIO_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_TERMIOS_H 1 */ - -/* Define if you have the header file. */ -/* #define HAVE_UNISTD_H 1 */ - -/* ---------------------------------------------------------------- */ -/* OTHER HEADER INFO */ -/* ---------------------------------------------------------------- */ - -/* Define if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* ---------------------------------------------------------------- */ -/* FUNCTIONS */ -/* ---------------------------------------------------------------- */ - -/* Define if you have the closesocket function. */ -#define HAVE_CLOSESOCKET 1 - -/* Define if you have the gethostname function. */ -#define HAVE_GETHOSTNAME 1 - -/* Define if you have the gettimeofday function. */ -/* #define HAVE_GETTIMEOFDAY 1 */ - -/* Define if you have the ioctlsocket function. */ -#define HAVE_IOCTLSOCKET 1 - -/* Define if you have a working ioctlsocket FIONBIO function. */ -#define HAVE_IOCTLSOCKET_FIONBIO 1 - -/* Define if you have the select function. */ -#define HAVE_SELECT 1 - -/* Define if you have the socket function. */ -#define HAVE_SOCKET 1 - -/* Define if you have the strdup function. */ -/* #define HAVE_STRDUP 1 */ - -/* Define if you have the strtoll function. */ -/* #define HAVE_STRTOLL 1 */ - -/* Define if you have the utime function. */ -#define HAVE_UTIME 1 - -/* Define if you have the recv function. */ -#define HAVE_RECV 1 - -/* Define to the type of arg 1 for recv. */ -#define RECV_TYPE_ARG1 SOCKET - -/* Define to the type of arg 2 for recv. */ -#define RECV_TYPE_ARG2 char * - -/* Define to the type of arg 3 for recv. */ -#define RECV_TYPE_ARG3 int - -/* Define to the type of arg 4 for recv. */ -#define RECV_TYPE_ARG4 int - -/* Define to the function return type for recv. */ -#define RECV_TYPE_RETV int - -/* Define if you have the send function. */ -#define HAVE_SEND 1 - -/* Define to the type of arg 1 for send. */ -#define SEND_TYPE_ARG1 SOCKET - -/* Define to the type qualifier of arg 2 for send. */ -#define SEND_QUAL_ARG2 const - -/* Define to the type of arg 2 for send. */ -#define SEND_TYPE_ARG2 char * - -/* Define to the type of arg 3 for send. */ -#define SEND_TYPE_ARG3 int - -/* Define to the type of arg 4 for send. */ -#define SEND_TYPE_ARG4 int - -/* Define to the function return type for send. */ -#define SEND_TYPE_RETV int - -/* ---------------------------------------------------------------- */ -/* TYPEDEF REPLACEMENTS */ -/* ---------------------------------------------------------------- */ - -/* Define if in_addr_t is not an available 'typedefed' type. */ -#define in_addr_t unsigned long - -/* Define if ssize_t is not an available 'typedefed' type. */ -#define ssize_t int - -/* ---------------------------------------------------------------- */ -/* TYPE SIZES */ -/* ---------------------------------------------------------------- */ - -/* Define to the size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* Define to the size of `long long', as computed by sizeof. */ -/* #define SIZEOF_LONG_LONG 8 */ - -/* Define to the size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 4 - -/* Define to the size of `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 4 - -/* ---------------------------------------------------------------- */ -/* STRUCT RELATED */ -/* ---------------------------------------------------------------- */ - -/* Define this if you have struct sockaddr_storage */ -/* #define HAVE_STRUCT_SOCKADDR_STORAGE 1 */ - -/* Define this if you have struct timeval */ -#define HAVE_STRUCT_TIMEVAL 1 - -/* Define this if struct sockaddr_in6 has the sin6_scope_id member */ -#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 - -/* ---------------------------------------------------------------- */ -/* COMPILER SPECIFIC */ -/* ---------------------------------------------------------------- */ - -/* Undef keyword 'const' if it does not work. */ -/* #undef const */ - -/* VS2005 and later default size for time_t is 64-bit, unless */ -/* _USE_32BIT_TIME_T has been defined to get a 32-bit time_t. */ -#if defined(_MSC_VER) && (_MSC_VER >= 1400) -# ifndef _USE_32BIT_TIME_T -# define SIZEOF_TIME_T 8 -# else -# define SIZEOF_TIME_T 4 -# endif -#endif - -/* ---------------------------------------------------------------- */ -/* LARGE FILE SUPPORT */ -/* ---------------------------------------------------------------- */ - -/* Windows CE does not support large files */ - -/* ---------------------------------------------------------------- */ -/* LDAP SUPPORT */ -/* ---------------------------------------------------------------- */ - -#define USE_WIN32_LDAP 1 -#undef HAVE_LDAP_URL_PARSE - -/* ---------------------------------------------------------------- */ -/* ADDITIONAL DEFINITIONS */ -/* ---------------------------------------------------------------- */ - -/* Define cpu-machine-OS */ -#ifndef CURL_OS -#ifdef _M_ARM -#define CURL_OS "arm-pc-win32ce" -#else -#define CURL_OS "i386-pc-win32ce" -#endif -#endif - -/* ---------------------------------------------------------------- */ -/* Windows CE */ -/* ---------------------------------------------------------------- */ - -#ifndef UNICODE -#define UNICODE -#endif - -#ifndef _UNICODE -#define _UNICODE -#endif - -#define CURL_DISABLE_FILE 1 -#define CURL_DISABLE_TELNET 1 -#define CURL_DISABLE_LDAP 1 - -#define ENOSPC 1 -#define ENOMEM 2 -#define EAGAIN 3 - -extern int stat(const char *path, struct stat *buffer); - -#endif /* HEADER_CURL_CONFIG_WIN32CE_H */ diff --git a/lib/curl_setup.h b/lib/curl_setup.h index ca4494e317..c973794a6c 100644 --- a/lib/curl_setup.h +++ b/lib/curl_setup.h @@ -137,9 +137,7 @@ #else /* HAVE_CONFIG_H */ -#ifdef _WIN32_WCE -# include "config-win32ce.h" -#elif defined(_WIN32) +#ifdef _WIN32 # include "config-win32.h" #endif