From 3279f86379074f8c6f1114e0211b955fc2b1ba0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20P=C3=B6chtrager?= Date: Thu, 17 Aug 2023 22:44:57 +0200 Subject: [PATCH] Add '__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__' compatiblity quirks for MacOS >= 14 SDKs --- wrapper/target.cpp | 4 ++++ wrapper/tools.h | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/wrapper/target.cpp b/wrapper/target.cpp index 5d2d938..06e6a78 100644 --- a/wrapper/target.cpp +++ b/wrapper/target.cpp @@ -886,6 +886,10 @@ bool Target::setup() { #endif if (isClang()) { + if (SDKOSNum >= OSVersion(14, 0) && clangversion < ClangVersion(17, 0)) { + // MacOS 14 SDK uses __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ in AvailabilityInternal.h + fargs.push_back("-D__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__=" + OSNum.numStr()); + } if (clangversion >= ClangVersion(3, 8)) { // // Silence: diff --git a/wrapper/tools.h b/wrapper/tools.h index dfe35b0..bd58db5 100644 --- a/wrapper/tools.h +++ b/wrapper/tools.h @@ -332,6 +332,12 @@ struct OSVersion { return tmp.str(); } + std::string numStr() const { + std::stringstream tmp; + tmp << Num(); + return tmp.str(); + } + int major; int minor; int patch;