Reuse code in MetadataCompilationTasksConfigurator for native task
This commit is contained in:
+15
-7
@@ -43,21 +43,29 @@ open class KotlinCompilationTaskConfigurator(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun createKotlinNativeCompilationTask(
|
protected fun createKotlinNativeCompilationTask(
|
||||||
variant: KotlinGradleVariant,
|
fragment: KotlinGradleFragment,
|
||||||
compilationData: KotlinNativeCompilationData<*>
|
compilationData: KotlinNativeCompilationData<*>,
|
||||||
|
configure: KotlinNativeCompile.() -> Unit
|
||||||
): TaskProvider<KotlinNativeCompile> {
|
): TaskProvider<KotlinNativeCompile> {
|
||||||
val compileTask = KotlinNativeTargetConfigurator.createKlibCompilationTask(compilationData)
|
val compileTask = KotlinNativeTargetConfigurator.createKlibCompilationTask(compilationData)
|
||||||
|
|
||||||
val allSources = getSourcesForFragmentCompilation(variant)
|
val allSources = getSourcesForFragmentCompilation(fragment)
|
||||||
val commonSources = getCommonSourcesForFragmentCompilation(variant)
|
val commonSources = getCommonSourcesForFragmentCompilation(fragment)
|
||||||
|
|
||||||
compileTask.configure {
|
compileTask.configure {
|
||||||
it.source(allSources)
|
it.source(allSources)
|
||||||
it.commonSources.from(commonSources)
|
it.commonSources.from(commonSources)
|
||||||
|
|
||||||
it.kotlinPluginData = project.compilerPluginProviderForPlatformCompilation(variant, compilationData)
|
it.configure()
|
||||||
}
|
}
|
||||||
return compileTask
|
return compileTask
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
fun createKotlinNativeCompilationTask(
|
||||||
|
variant: KotlinGradleVariant,
|
||||||
|
compilationData: KotlinNativeCompilationData<*>
|
||||||
|
): TaskProvider<KotlinNativeCompile> = createKotlinNativeCompilationTask(variant, compilationData) {
|
||||||
|
kotlinPluginData = project.compilerPluginProviderForPlatformCompilation(variant, compilationData)
|
||||||
|
}
|
||||||
|
}
|
||||||
+2
-14
@@ -228,20 +228,8 @@ private class MetadataCompilationTasksConfigurator(project: Project) : KotlinCom
|
|||||||
fun createKotlinNativeMetadataCompilationTask(
|
fun createKotlinNativeMetadataCompilationTask(
|
||||||
fragment: KotlinGradleFragment,
|
fragment: KotlinGradleFragment,
|
||||||
compilationData: KotlinNativeFragmentMetadataCompilationData
|
compilationData: KotlinNativeFragmentMetadataCompilationData
|
||||||
): TaskProvider<KotlinNativeCompile> {
|
): TaskProvider<KotlinNativeCompile> = createKotlinNativeCompilationTask(fragment, compilationData) {
|
||||||
val compileTask = KotlinNativeTargetConfigurator.createKlibCompilationTask(compilationData)
|
kotlinPluginData = project.compilerPluginProviderForNativeMetadata(fragment, compilationData)
|
||||||
|
|
||||||
val allSources = getSourcesForFragmentCompilation(fragment)
|
|
||||||
val commonSources = getCommonSourcesForFragmentCompilation(fragment)
|
|
||||||
|
|
||||||
compileTask.configure {
|
|
||||||
it.source(allSources)
|
|
||||||
it.commonSources.from(commonSources)
|
|
||||||
|
|
||||||
it.kotlinPluginData = project.compilerPluginProviderForNativeMetadata(fragment, compilationData)
|
|
||||||
}
|
|
||||||
|
|
||||||
return compileTask
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getSourcesForFragmentCompilation(fragment: KotlinGradleFragment): MultipleSourceRootsProvider {
|
override fun getSourcesForFragmentCompilation(fragment: KotlinGradleFragment): MultipleSourceRootsProvider {
|
||||||
|
|||||||
Reference in New Issue
Block a user