[K/N][build] Add common sources setting to Konan plugin

Used for stdlib build
This commit is contained in:
Pavel Punegov
2021-11-08 15:36:03 +03:00
committed by Space
parent e07fa31784
commit 197d55e045
4 changed files with 26 additions and 23 deletions
@@ -56,6 +56,10 @@ abstract class KonanCompileConfig<T: KonanCompileTask>(name: String,
override fun commonSourceSets(vararg sourceSetNames: String) = tasks().forEach { it.configure { commonSourceSets(*sourceSetNames) } }
override fun enableMultiplatform(flag: Boolean) = tasks().forEach { it.configure { enableMultiplatform(flag) } }
override fun commonSrcDir(dir: Any) = tasks().forEach { it.configure { commonSrcDir(dir) } }
override fun commonSrcFiles(vararg files: Any) = tasks().forEach { it.configure { commonSrcFiles(*files) } }
override fun commonSrcFiles(files: Collection<Any>) = tasks().forEach { it.configure { commonSrcFiles(files) } }
override fun linkerOpts(values: List<String>) = tasks().forEach { it.configure { linkerOpts(values) } }
override fun linkerOpts(vararg values: String) = tasks().forEach { it.configure { linkerOpts(*values) } }
@@ -61,6 +61,11 @@ interface KonanCompileSpec: KonanBuildingSpec {
fun commonSourceSet(sourceSetName: String)
fun commonSourceSets(vararg sourceSetNames: String)
fun commonSrcDir(dir: Any)
fun commonSrcFiles(vararg files: Any)
fun commonSrcFiles(files: Collection<Any>)
// DSL. Other parameters.
fun linkerOpts(vararg values: String)
@@ -282,10 +282,17 @@ abstract class KonanCompileTask: KonanBuildingTask(), KonanCompileSpec {
enableMultiplatform(true)
}
internal fun commonSrcDir(dir: Any) {
override fun commonSrcDir(dir: Any) {
commonSrcFiles_.add(directoryToKt(dir))
}
override fun commonSrcFiles(vararg files: Any) {
commonSrcFiles_.add(project.files(files))
}
override fun commonSrcFiles(files: Collection<Any>) = commonSrcFiles(*files.toTypedArray())
// DSL. Other parameters.
override fun linkerOpts(values: List<String>) = linkerOpts(*values.toTypedArray())