diff --git a/CMakeLists.txt b/CMakeLists.txt
index 047c796541d..8c23ec3323b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -204,7 +204,8 @@ if (MINGW)
set(CMAKE_SHARED_MODULE_PREFIX)
set(CMAKE_STATIC_LIBRARY_PREFIX)
- add_definitions(-D_WIN32_WINNT=0x0600)
+ # 0x0601 is Windows 7 - see also comments in autoconfig_msvc.h
+ add_definitions(-D_WIN32_WINNT=0x0601)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4 -std=c++20")
endif()
diff --git a/builds/win32/msvc15/FirebirdCommon.props b/builds/win32/msvc15/FirebirdCommon.props
index 5b66cff69a2..07056a49d6a 100644
--- a/builds/win32/msvc15/FirebirdCommon.props
+++ b/builds/win32/msvc15/FirebirdCommon.props
@@ -27,7 +27,7 @@
Default
false
true
- _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
+ _CRT_SECURE_NO_WARNINGS;_WIN32_WINNT=0x0601;%(PreprocessorDefinitions)
4715
diff --git a/extern/libcds/projects/Win/vc141/cds.vcxproj b/extern/libcds/projects/Win/vc141/cds.vcxproj
index ba93de8bf88..d5cd6e14aa1 100644
--- a/extern/libcds/projects/Win/vc141/cds.vcxproj
+++ b/extern/libcds/projects/Win/vc141/cds.vcxproj
@@ -563,7 +563,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -591,7 +591,7 @@
/wd4512 /wd4127 /Zc:inline %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -619,7 +619,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -648,7 +648,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -679,7 +679,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -713,7 +713,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -747,7 +747,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -782,7 +782,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -816,7 +816,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -850,7 +850,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ CDS_BUILD_STATIC_LIB;_ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -884,7 +884,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -919,7 +919,7 @@
/wd4512 /wd4127 /Zc:inline /permissive- %(AdditionalOptions)
Disabled
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -956,7 +956,7 @@
true
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -1004,7 +1004,7 @@
true
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
true
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -1052,7 +1052,7 @@
true
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -1101,7 +1101,7 @@
true
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0500;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
true
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -1152,7 +1152,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1203,7 +1203,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1254,7 +1254,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1306,7 +1306,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1357,7 +1357,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1408,7 +1408,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_STATIC_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1459,7 +1459,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
@@ -1511,7 +1511,7 @@
false
false
$(SolutionDir)..\..\..\;$(BOOST_PATH);%(AdditionalIncludeDirectories)
- _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0501;CDS_BUILD_LIB;%(PreprocessorDefinitions)
+ _ENABLE_ATOMIC_ALIGNMENT_FIX;WIN32;NDEBUG;_CONSOLE;_WIN32_WINNT=0x0601;CDS_BUILD_LIB;%(PreprocessorDefinitions)
MultiThreadedDLL
NotUsing
Level3
diff --git a/src/common/classes/fb_string.h b/src/common/classes/fb_string.h
index 0e78ebc35da..ab35992a33a 100644
--- a/src/common/classes/fb_string.h
+++ b/src/common/classes/fb_string.h
@@ -29,12 +29,13 @@
#ifndef INCLUDE_FB_STRING_H
#define INCLUDE_FB_STRING_H
+#include "firebird.h"
+
#include
#include
#include
#include
-#include "firebird.h"
#include "fb_types.h"
#include "fb_exception.h"
#include "../common/classes/alloc.h"
diff --git a/src/common/classes/locks.cpp b/src/common/classes/locks.cpp
index a66a6ca621c..7f957e28682 100644
--- a/src/common/classes/locks.cpp
+++ b/src/common/classes/locks.cpp
@@ -25,10 +25,6 @@
* Contributor(s): ______________________________________.
*/
-#ifndef __MINGW32__
-#define _WIN32_WINNT 0x0403
-#endif
-
#include "firebird.h"
#include "../../common/classes/locks.h"
diff --git a/src/common/os/win32/guid.cpp b/src/common/os/win32/guid.cpp
index 4edddbf3c0c..0878decea11 100644
--- a/src/common/os/win32/guid.cpp
+++ b/src/common/os/win32/guid.cpp
@@ -26,17 +26,12 @@
*
*/
-#ifndef __MINGW32__
-// minimum win32 version: win98 / winnt4 SP3
-#define _WIN32_WINNT 0x0403
-#endif
-
+#include "firebird.h"
#include
#include
#include
#include
-#include "firebird.h"
#include "../common/os/guid.h"
#include "fb_exception.h"
diff --git a/src/common/os/win32/mod_loader.cpp b/src/common/os/win32/mod_loader.cpp
index ab9d4ccf55c..99db521c756 100644
--- a/src/common/os/win32/mod_loader.cpp
+++ b/src/common/os/win32/mod_loader.cpp
@@ -3,9 +3,6 @@
*
*/
-// required to use activation context API structures
-#define _WIN32_WINNT 0x0501
-
#include "firebird.h"
#include "../../../common/dllinst.h"
#include "../common/os/mod_loader.h"
diff --git a/src/common/sha.cpp b/src/common/sha.cpp
index 808331ca899..db7a151dbd1 100644
--- a/src/common/sha.cpp
+++ b/src/common/sha.cpp
@@ -9,6 +9,7 @@
#ifndef SHA_H
#define SHA_H
+#include "firebird.h"
#include
#include
#include "../common/sha.h"
@@ -31,8 +32,6 @@ void sha_final(unsigned char [SHA_DIGESTSIZE], SHA_INFO *) noexcept;
#define SHA_VERSION 1
-#include "firebird.h"
-
#ifdef WORDS_BIGENDIAN
# if SIZEOF_LONG == 4
# define SHA_BYTE_ORDER 4321
diff --git a/src/common/sha2/sha2.h b/src/common/sha2/sha2.h
index e23ca5d4439..93f0cb61e24 100644
--- a/src/common/sha2/sha2.h
+++ b/src/common/sha2/sha2.h
@@ -49,9 +49,13 @@
#ifndef _SHA2_H
#define _SHA2_H
-#include
#ifndef NIST_COMPLIANCY_TESTS
#include "firebird.h"
+#endif
+
+#include
+
+#ifndef NIST_COMPLIANCY_TESTS
#include "../../common/classes/alloc.h"
#include "../../common/classes/array.h"
#include "../../common/classes/fb_string.h"
diff --git a/src/dsql/StmtNodes.cpp b/src/dsql/StmtNodes.cpp
index d2bb8a3b8ca..57026cc41d5 100644
--- a/src/dsql/StmtNodes.cpp
+++ b/src/dsql/StmtNodes.cpp
@@ -18,8 +18,8 @@
* Adriano dos Santos Fernandes - refactored from pass1.cpp, gen.cpp, cmp.cpp, par.cpp and exe.cpp
*/
-#include
#include "firebird.h"
+#include
#include "firebird/impl/blr.h"
#include "../common/TimeZoneUtil.h"
#include "../common/classes/BaseStream.h"
diff --git a/src/extlib/ib_util.cpp b/src/extlib/ib_util.cpp
index 614fc96d2d2..0e799e5fc5a 100644
--- a/src/extlib/ib_util.cpp
+++ b/src/extlib/ib_util.cpp
@@ -18,8 +18,8 @@
* Adriano dos Santos Fernandes
*/
-#include
#include "firebird.h"
+#include
#include "ibase.h"
diff --git a/src/include/gen/autoconfig_msvc.h b/src/include/gen/autoconfig_msvc.h
index 8039571966a..37207739681 100644
--- a/src/include/gen/autoconfig_msvc.h
+++ b/src/include/gen/autoconfig_msvc.h
@@ -1,27 +1,20 @@
-/*
- * 2002.02.15 Sean Leyne - Code Cleanup, removed obsolete ports:
- * - MAC (MAC, MAC_AUX and "MAC_CP" defines)
- * - EPSON, DELTA, IMP, NCR3000, NeXT, M88K, Cray
- * - OS/2, Apollo
- *
- * 2002-02-23 Sean Leyne - Code Cleanup, removed old Win3.1 port (Windows_Only)
- *
- * 2002.10.27 Sean Leyne - Code Cleanup, removed obsolete "UNIXWARE" port
- * 2002.10.27 Sean Leyne - Code Cleanup, removed obsolete "Ultrix" port
- *
- * 2002.10.28 Sean Leyne - Completed removal of obsolete "DGUX" port
- * 2002.10.28 Sean Leyne - Code cleanup, removed obsolete "MPEXL" port
- * 2002.10.28 Sean Leyne - Code cleanup, removed obsolete "SGI" port
- *
- * 2002.10.29 Sean Leyne - Removed obsolete "Netware" port
- *
- * 2002.10.30 Sean Leyne - Removed support for obsolete "PC_PLATFORM" define
- *
- */
-
#ifndef AUTOCONFIG_H
#define AUTOCONFIG_H
+// Windows 7 (0x0601) is the baseline version for Firebird 6.
+// NOTE: This does not mean that this version is supported, but that we want to limit Windows API
+// use to this version.
+#define FB_WIN32_WINNT_BASELINE 0x0601
+
+// Normally, _WIN32_WINNT is defined in the PreprocessorDefinitions of Firebird.Common.props.
+#ifndef _WIN32_WINNT
+// Fallback to set _WIN32_WINNT to the baseline.
+#define _WIN32_WINNT FB_WIN32_WINNT_BASELINE
+#elif (_WIN32_WINNT < FB_WIN32_WINNT_BASELINE)
+// Consider Windows versions before the baseline really too old.
+#error The target Windows version (_WIN32_WINNT) is too old
+#endif
+
//#pragma warning(disable:4099) // class/struct mixups
#pragma warning(disable:4251) // needs to have dll-interface
#pragma warning(disable:4291) // no matching op. delete (there are)
@@ -68,7 +61,6 @@
#pragma warning(disable:4996) // 'identificator' was declared deprecated
-
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
#ifdef _MSC_VER // don't know if this is useful for MinGW