From 49ef6768c5b538048dc71c44b77fad85a958cc84 Mon Sep 17 00:00:00 2001 From: Aaron van Geffen Date: Fri, 7 Nov 2025 21:14:58 +0100 Subject: [PATCH] Fix Windows build; use WIN32_LEAN_AND_MEAN in more places --- src/openrct2-win/openrct2-win.cpp | 3 +++ src/openrct2/core/Crypt.CNG.cpp | 17 +++++++++++------ src/openrct2/core/Diagnostics.cpp | 3 +++ src/openrct2/core/File.cpp | 3 +++ src/openrct2/core/FileScanner.cpp | 3 +++ src/openrct2/core/FileWatcher.cpp | 3 +++ src/openrct2/core/Guard.cpp | 4 +++- src/openrct2/core/Http.WinHttp.cpp | 4 ++++ src/openrct2/core/String.cpp | 3 +++ src/openrct2/network/Socket.cpp | 3 +++ src/openrct2/platform/Platform.Win32.cpp | 16 ++++++++-------- 11 files changed, 47 insertions(+), 15 deletions(-) diff --git a/src/openrct2-win/openrct2-win.cpp b/src/openrct2-win/openrct2-win.cpp index d640e46f9a..d0e43aa3f5 100644 --- a/src/openrct2-win/openrct2-win.cpp +++ b/src/openrct2-win/openrct2-win.cpp @@ -8,6 +8,9 @@ *****************************************************************************/ // Windows.h needs to be included first +#ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN +#endif #include // Enable visual styles diff --git a/src/openrct2/core/Crypt.CNG.cpp b/src/openrct2/core/Crypt.CNG.cpp index dc1b096598..00b302256b 100644 --- a/src/openrct2/core/Crypt.CNG.cpp +++ b/src/openrct2/core/Crypt.CNG.cpp @@ -24,12 +24,17 @@ #include // clang-format off -// CNG: Cryptography API: Next Generation (CNG) -// available in Windows Vista onwards. -#include -#include -#include -constexpr bool NT_SUCCESS(NTSTATUS status) {return status >= 0;} + // windows.h needs to be included first + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif + #include + + // CNG: Cryptography API: Next Generation (CNG) + // available in Windows Vista onwards. + #include + #include + constexpr bool NT_SUCCESS(NTSTATUS status) {return status >= 0;} // clang-format on using namespace OpenRCT2::Crypt; diff --git a/src/openrct2/core/Diagnostics.cpp b/src/openrct2/core/Diagnostics.cpp index a8840a9089..fec947d2ea 100644 --- a/src/openrct2/core/Diagnostics.cpp +++ b/src/openrct2/core/Diagnostics.cpp @@ -8,6 +8,9 @@ *****************************************************************************/ #if defined(DEBUG) && defined(_WIN32) + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #endif diff --git a/src/openrct2/core/File.cpp b/src/openrct2/core/File.cpp index 1296e1cba0..e0cad11152 100644 --- a/src/openrct2/core/File.cpp +++ b/src/openrct2/core/File.cpp @@ -8,6 +8,9 @@ *****************************************************************************/ #ifdef _WIN32 + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #else #include diff --git a/src/openrct2/core/FileScanner.cpp b/src/openrct2/core/FileScanner.cpp index 936dbe64f3..74a3d54631 100644 --- a/src/openrct2/core/FileScanner.cpp +++ b/src/openrct2/core/FileScanner.cpp @@ -8,6 +8,9 @@ *****************************************************************************/ #ifdef _WIN32 + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #elif defined(__unix__) || (defined(__APPLE__) && defined(__MACH__)) #include diff --git a/src/openrct2/core/FileWatcher.cpp b/src/openrct2/core/FileWatcher.cpp index c75dbee056..5deb35db46 100644 --- a/src/openrct2/core/FileWatcher.cpp +++ b/src/openrct2/core/FileWatcher.cpp @@ -15,6 +15,9 @@ #include #ifdef _WIN32 + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #elif defined(__linux__) #include diff --git a/src/openrct2/core/Guard.cpp b/src/openrct2/core/Guard.cpp index dc318c885a..2eb1598e69 100644 --- a/src/openrct2/core/Guard.cpp +++ b/src/openrct2/core/Guard.cpp @@ -8,7 +8,9 @@ *****************************************************************************/ #ifdef _WIN32 - #include + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #endif diff --git a/src/openrct2/core/Http.WinHttp.cpp b/src/openrct2/core/Http.WinHttp.cpp index a18cc5a733..b4a53c7f3d 100644 --- a/src/openrct2/core/Http.WinHttp.cpp +++ b/src/openrct2/core/Http.WinHttp.cpp @@ -17,6 +17,10 @@ #include #include + + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #include diff --git a/src/openrct2/core/String.cpp b/src/openrct2/core/String.cpp index 5efccf8649..10218ef8e0 100644 --- a/src/openrct2/core/String.cpp +++ b/src/openrct2/core/String.cpp @@ -27,6 +27,9 @@ #include #include #else + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif #include #endif diff --git a/src/openrct2/network/Socket.cpp b/src/openrct2/network/Socket.cpp index 9c9e108180..73e2447cd7 100644 --- a/src/openrct2/network/Socket.cpp +++ b/src/openrct2/network/Socket.cpp @@ -26,6 +26,9 @@ #ifdef _WIN32 #pragma comment(lib, "Ws2_32.lib") + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif // winsock2 must be included before windows.h #include #include diff --git a/src/openrct2/platform/Platform.Win32.cpp b/src/openrct2/platform/Platform.Win32.cpp index 47e835a15f..23605cc3ca 100644 --- a/src/openrct2/platform/Platform.Win32.cpp +++ b/src/openrct2/platform/Platform.Win32.cpp @@ -13,27 +13,27 @@ #ifndef WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN #endif - #include "../Diagnostic.h" - - #include +// clang-format off #include - - // Then the rest - #include "../Version.h" - #include #include #include #include + // clang-format on #undef GetEnvironmentVariable + #undef small + + #include "Platform.h" #include "../Date.h" + #include "../Diagnostic.h" #include "../OpenRCT2.h" + #include "../Version.h" #include "../core/Path.hpp" #include "../core/String.hpp" #include "../localisation/Language.h" - #include "Platform.h" + #include #include #include #include