From 4dc6689c104b999ed3f724f41c39de0504bf3b5e Mon Sep 17 00:00:00 2001 From: Timofey Solonin Date: Fri, 2 Feb 2024 16:10:07 +0100 Subject: [PATCH] =?UTF-8?q?[Native]=20Support=20Xcode=2015.3=20=E2=80=94?= =?UTF-8?q?=20add=20back=20the=20TargetConditional.h=20macros?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ^KT-65542 --- .../kotlin/konan/target/ClangArgs.kt | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/native/utils/src/org/jetbrains/kotlin/konan/target/ClangArgs.kt b/native/utils/src/org/jetbrains/kotlin/konan/target/ClangArgs.kt index 84fd1f6060a88..dba78879a4a65 100644 --- a/native/utils/src/org/jetbrains/kotlin/konan/target/ClangArgs.kt +++ b/native/utils/src/org/jetbrains/kotlin/konan/target/ClangArgs.kt @@ -151,6 +151,31 @@ sealed class ClangArgs( if (environmentOsVersionMinRequired != null) { add(listOf("-D__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__=$environmentOsVersionMinRequired")) } + + val targetConditionals = when (target) { + KonanTarget.MACOS_ARM64, KonanTarget.MACOS_X64 -> hashMapOf( + "TARGET_OS_OSX" to "1", + ) + KonanTarget.IOS_ARM64 -> hashMapOf( + "TARGET_OS_EMBEDDED" to "1", + "TARGET_OS_IPHONE" to "1", + "TARGET_OS_IOS" to "1", + ) + KonanTarget.TVOS_ARM64 -> hashMapOf( + "TARGET_OS_EMBEDDED" to "1", + "TARGET_OS_IPHONE" to "1", + "TARGET_OS_TV" to "1", + ) + KonanTarget.WATCHOS_ARM64, KonanTarget.WATCHOS_ARM32, KonanTarget.WATCHOS_DEVICE_ARM64 -> hashMapOf( + "TARGET_OS_EMBEDDED" to "1", + "TARGET_OS_IPHONE" to "1", + "TARGET_OS_WATCH" to "1", + ) + else -> null + } + if (targetConditionals != null) { + add(targetConditionals.map { "-D${it.key}=${it.value}" }) + } }.flatten() private val specificClangArgs: List = when (target) {