Simplify set up of the resources variant in js and native targets
^KT-65540
This commit is contained in:
committed by
Space Team
parent
1895e480c5
commit
a8266eb20e
+6
-3
@@ -9,7 +9,9 @@ import org.gradle.api.file.DuplicatesStrategy
|
||||
import org.gradle.api.tasks.bundling.Zip
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
|
||||
import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension
|
||||
import org.jetbrains.kotlin.gradle.dsl.multiplatformExtensionOrNull
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.kotlinPropertiesProvider
|
||||
import org.jetbrains.kotlin.gradle.plugin.launch
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.AbstractKotlinTarget
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.DefaultKotlinUsageContext
|
||||
@@ -23,10 +25,11 @@ import org.jetbrains.kotlin.gradle.tasks.registerTask
|
||||
|
||||
// Use KotlinMultiplatformExtension to make sure this usage context is only creatable in MPP
|
||||
@Suppress("UnusedReceiverParameter")
|
||||
internal fun KotlinMultiplatformExtension.setUpResourcesVariant(
|
||||
target: AbstractKotlinTarget,
|
||||
internal fun AbstractKotlinTarget.setUpResourcesVariant(
|
||||
compilation: KotlinCompilation<*>,
|
||||
): DefaultKotlinUsageContext = with(target) {
|
||||
): DefaultKotlinUsageContext? {
|
||||
if (project.multiplatformExtensionOrNull == null || !project.kotlinPropertiesProvider.mppResourcesPublication) return null
|
||||
|
||||
var targetRegistersResourcesForPublication = false
|
||||
val resourcesVariant = DefaultKotlinUsageContext(
|
||||
compilation = compilation,
|
||||
|
||||
+5
-10
@@ -89,16 +89,11 @@ constructor(
|
||||
)
|
||||
)
|
||||
|
||||
if (project.kotlinPropertiesProvider.mppResourcesPublication) {
|
||||
project.multiplatformExtensionOrNull?.let {
|
||||
usageContexts.add(
|
||||
it.setUpResourcesVariant(
|
||||
this,
|
||||
mainCompilation
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
usageContexts.addIfNotNull(
|
||||
setUpResourcesVariant(
|
||||
mainCompilation
|
||||
)
|
||||
)
|
||||
|
||||
val result = createKotlinVariant(componentName, mainCompilation, usageContexts)
|
||||
|
||||
|
||||
+4
-7
@@ -83,14 +83,11 @@ abstract class KotlinNativeTarget @Inject constructor(
|
||||
)
|
||||
)
|
||||
|
||||
if (project.kotlinPropertiesProvider.mppResourcesPublication) {
|
||||
mutableUsageContexts.add(
|
||||
project.multiplatformExtension.setUpResourcesVariant(
|
||||
this,
|
||||
mainCompilation,
|
||||
)
|
||||
mutableUsageContexts.addIfNotNull(
|
||||
setUpResourcesVariant(
|
||||
mainCompilation
|
||||
)
|
||||
}
|
||||
)
|
||||
|
||||
val result = createKotlinVariant(targetName, mainCompilation, mutableUsageContexts)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user