From 0fd65ab1a07611767021a8f84c35dc09dc3c2a7d Mon Sep 17 00:00:00 2001 From: "sebastian.sellmair" Date: Fri, 21 Jan 2022 17:16:07 +0100 Subject: [PATCH] [Native] TargetedLibraryImpl: Respect 'commonizerNativeTargets' property ^KT-50847 Verification Pending --- .../org/jetbrains/kotlin/library/KotlinLibrary.kt | 2 +- .../kotlin/konan/library/impl/KonanLibraryImpl.kt | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinLibrary.kt b/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinLibrary.kt index 130eaed0b67..2ba77037743 100644 --- a/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinLibrary.kt +++ b/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinLibrary.kt @@ -109,7 +109,7 @@ val KotlinLibrary.containsErrorCode: Boolean val KotlinLibrary.commonizerTarget: String? get() = manifestProperties.getProperty(KLIB_PROPERTY_COMMONIZER_TARGET) -val KotlinLibrary.commonizerNativeTargets: List? +val BaseKotlinLibrary.commonizerNativeTargets: List? get() = if (manifestProperties.containsKey(KLIB_PROPERTY_COMMONIZER_NATIVE_TARGETS)) manifestProperties.propertyList(KLIB_PROPERTY_COMMONIZER_NATIVE_TARGETS, escapeInQuotes = true) else null diff --git a/kotlin-native/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/impl/KonanLibraryImpl.kt b/kotlin-native/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/impl/KonanLibraryImpl.kt index be0b9207369..bd14ca1528f 100644 --- a/kotlin-native/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/impl/KonanLibraryImpl.kt +++ b/kotlin-native/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/impl/KonanLibraryImpl.kt @@ -35,11 +35,12 @@ open class TargetedLibraryImpl( private val target: KonanTarget? get() = access.target override val targetList: List - get() = nativeTargets.ifEmpty { - // TODO: We have a choice: either assume it is the CURRENT TARGET - // or a list of ALL KNOWN targets. - listOfNotNull(access.target?.visibleName) - } + get() = commonizerNativeTargets?.takeIf { it.isNotEmpty() } + ?: nativeTargets.takeIf { it.isNotEmpty() } + ?: // TODO: We have a choice: either assume it is the CURRENT TARGET + // or a list of ALL KNOWN targets. + listOfNotNull(access.target?.visibleName) + override val manifestProperties: Properties by lazy { val properties = base.manifestProperties @@ -110,4 +111,4 @@ fun createKonanLibraryComponents( return base.componentList.map { createKonanLibrary(libraryFile, it, target, isDefault) } -} \ No newline at end of file +}