mirror of
https://github.com/curl/curl.git
synced 2026-04-11 12:01:42 +08:00
build: drop support for VS2008 (Windows)
Require Visual Studio 2010 or newer. Ref: https://github.com/curl/curl/discussions/15972 Follow-up todc28bb86c1#17798 Follow-up to63e513b106#17380 Closes #17931
This commit is contained in:
parent
554dfa5568
commit
2e1a045d89
@ -53,11 +53,7 @@ else()
|
||||
if(MSVC)
|
||||
set(HAVE_UNISTD_H 0)
|
||||
set(HAVE_STDDEF_H 1) # detected by CMake internally in check_type_size()
|
||||
if(MSVC_VERSION GREATER_EQUAL 1600)
|
||||
set(HAVE_STDINT_H 1) # detected by CMake internally in check_type_size()
|
||||
else()
|
||||
set(HAVE_STDINT_H 0) # detected by CMake internally in check_type_size()
|
||||
endif()
|
||||
set(HAVE_STDINT_H 1) # detected by CMake internally in check_type_size()
|
||||
if(MSVC_VERSION GREATER_EQUAL 1800)
|
||||
set(HAVE_STDBOOL_H 1)
|
||||
else()
|
||||
|
||||
@ -12,17 +12,6 @@ email the
|
||||
as soon as possible and explain to us why this is a problem for you and
|
||||
how your use case cannot be satisfied properly using a workaround.
|
||||
|
||||
## VS2008
|
||||
|
||||
curl drops support for getting built with Microsoft Visual Studio 2008 in
|
||||
November 2025.
|
||||
|
||||
The only reason we kept support for this version is for Windows CE - and we
|
||||
intend to remove support for that Operating System in this time frame as well.
|
||||
Bumping the minimum to VS2010. VS2008 is a pain to support.
|
||||
|
||||
Previous discussion and details: https://github.com/curl/curl/discussions/15972
|
||||
|
||||
## Windows XP
|
||||
|
||||
In January 2026, curl drops support for Windows XP and Server 2003. Their
|
||||
@ -94,3 +83,4 @@ Support for RTMP in libcurl gets removed in April 2026.
|
||||
- msh3 (removed in 8.16.0)
|
||||
- winbuild build system (removed in 8.17.0)
|
||||
- Windows CE (removed in 8.18.0)
|
||||
- Support for Visual Studio 2008 (removed in 8.18.0)
|
||||
|
||||
@ -200,7 +200,7 @@ Building for Windows XP is required as a minimum.
|
||||
|
||||
You can build curl with:
|
||||
|
||||
- Microsoft Visual Studio 2008 v9.0 or later (`_MSC_VER >= 1500`)
|
||||
- Microsoft Visual Studio 2010 v10.0 or later (`_MSC_VER >= 1600`)
|
||||
- MinGW-w64 3.0 or later (`__MINGW64_VERSION_MAJOR >= 3`)
|
||||
|
||||
## Building Windows DLLs and C runtime (CRT) linkage issues
|
||||
|
||||
@ -56,22 +56,21 @@
|
||||
# error VS2012 does not support build targets prior to Windows Vista
|
||||
# endif
|
||||
# endif
|
||||
/* Default target settings and minimum build target check for
|
||||
VS2008 and VS2010 */
|
||||
/* VS2010 default target settings and minimum build target check. */
|
||||
# else
|
||||
# define VS2008_MIN_TARGET 0x0501 /* XP */
|
||||
/* VS2008 default build target is Windows Vista (0x0600).
|
||||
/* VS2010 default build target is Windows 7 (0x0601).
|
||||
We override default target to be Windows XP. */
|
||||
# define VS2008_DEF_TARGET 0x0501 /* XP */
|
||||
# define VS2010_MIN_TARGET 0x0501 /* XP */
|
||||
# define VS2010_DEF_TARGET 0x0501 /* XP */
|
||||
|
||||
# ifndef _WIN32_WINNT
|
||||
# define _WIN32_WINNT VS2008_DEF_TARGET
|
||||
# define _WIN32_WINNT VS2010_DEF_TARGET
|
||||
# endif
|
||||
# ifndef WINVER
|
||||
# define WINVER VS2008_DEF_TARGET
|
||||
# define WINVER VS2010_DEF_TARGET
|
||||
# endif
|
||||
# if (_WIN32_WINNT < VS2008_MIN_TARGET) || (WINVER < VS2008_MIN_TARGET)
|
||||
# error VS2008 does not support build targets prior to Windows XP
|
||||
# if (_WIN32_WINNT < VS2010_MIN_TARGET) || (WINVER < VS2010_MIN_TARGET)
|
||||
# error VS2010 does not support build targets prior to Windows XP
|
||||
# endif
|
||||
# endif
|
||||
#endif /* _MSC_VER */
|
||||
@ -104,7 +103,7 @@
|
||||
#endif
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#if (defined(_MSC_VER) && (_MSC_VER >= 1600)) || defined(__MINGW32__)
|
||||
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||
#define HAVE_STDINT_H 1
|
||||
#endif
|
||||
|
||||
|
||||
@ -80,9 +80,9 @@
|
||||
#error "Building curl requires mingw-w64 3.0 or later"
|
||||
#endif
|
||||
|
||||
/* Visual Studio 2008 is the minimum Visual Studio version we support.
|
||||
/* Visual Studio 2010 is the minimum Visual Studio version we support.
|
||||
Workarounds for older versions of Visual Studio have been removed. */
|
||||
#if defined(_MSC_VER) && (_MSC_VER < 1500)
|
||||
#if defined(_MSC_VER) && (_MSC_VER < 1600)
|
||||
#error "Ancient versions of Visual Studio are no longer supported due to bugs."
|
||||
#endif
|
||||
|
||||
|
||||
@ -65,8 +65,6 @@
|
||||
Use it for APIs that do not or cannot support the const qualifier. */
|
||||
#ifdef HAVE_STDINT_H
|
||||
# define CURL_UNCONST(p) ((void *)(uintptr_t)(const void *)(p))
|
||||
#elif defined(_WIN32) /* for VS2008 */
|
||||
# define CURL_UNCONST(p) ((void *)(ULONG_PTR)(const void *)(p))
|
||||
#else
|
||||
# define CURL_UNCONST(p) ((void *)(p)) /* Fall back to simple cast */
|
||||
#endif
|
||||
|
||||
@ -50,10 +50,6 @@
|
||||
# include <bcrypt.h>
|
||||
# ifdef _MSC_VER
|
||||
# pragma comment(lib, "bcrypt.lib")
|
||||
# endif
|
||||
/* Offered by mingw-w64 v3+. MS SDK v7.0A+. */
|
||||
# ifndef BCRYPT_USE_SYSTEM_PREFERRED_RNG
|
||||
# define BCRYPT_USE_SYSTEM_PREFERRED_RNG 0x00000002
|
||||
# endif
|
||||
# ifndef STATUS_SUCCESS
|
||||
# define STATUS_SUCCESS ((NTSTATUS)0x00000000L)
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
#include "vtls.h"
|
||||
#include "../curl_sha256.h"
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER <= 1600)
|
||||
#if defined(_MSC_VER) && (_MSC_VER < 1700)
|
||||
/* Workaround for warning:
|
||||
'type cast' : conversion from 'int' to 'LPCSTR' of greater size */
|
||||
#undef CERT_STORE_PROV_MEMORY
|
||||
|
||||
@ -36,17 +36,6 @@
|
||||
#include "../curl_memory.h"
|
||||
#include "../memdebug.h"
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#if _MSC_VER >= 1600
|
||||
#include <stdint.h>
|
||||
#else
|
||||
typedef unsigned char uint8_t;
|
||||
typedef unsigned __int16 uint16_t;
|
||||
typedef unsigned __int32 uint32_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
#endif
|
||||
#endif /* _MSC_VER */
|
||||
|
||||
#ifndef UINT16_MAX
|
||||
#define UINT16_MAX 0xffff
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user