Introduced -target and -list_targets flags.
Use it like
$ konanc hello.kt -target iphone
This commit is contained in:
committed by
alexander-gorshenev
parent
d31b44135a
commit
afaa50ce34
+38
-27
@@ -182,47 +182,58 @@ dependencies {
|
||||
|
||||
build.dependsOn 'compilerClasses','cli_bcClasses','bc_frontendClasses'
|
||||
|
||||
|
||||
// These are just a couple of aliases
|
||||
task stdlib(dependsOn: 'hostStdlib')
|
||||
task start(dependsOn: 'hostStart')
|
||||
|
||||
// These files are built before the 'dist' is complete,
|
||||
// so we provide custom values for
|
||||
// -runtime, -properties, -library and -Djava.library.path
|
||||
|
||||
task stdlib(type: JavaExec) {
|
||||
main = 'org.jetbrains.kotlin.cli.bc.K2NativeKt'
|
||||
classpath = project.configurations.cli_bc
|
||||
jvmArgs "-ea",
|
||||
"-Dkonan.home=${project.parent.file('dist')}",
|
||||
"-Djava.library.path=${project.buildDir}/nativelibs"
|
||||
args('-output', project(':runtime').file('build/stdlib.kt.bc'),
|
||||
'-nolink', '-nostdlib',
|
||||
'-runtime', project(':runtime').file('build/runtime.bc'),
|
||||
'-properties', project(':backend.native').file('konan.properties'),
|
||||
targetList.each { platformName ->
|
||||
task("${platformName}Stdlib", type: JavaExec) {
|
||||
main = 'org.jetbrains.kotlin.cli.bc.K2NativeKt'
|
||||
classpath = project.configurations.cli_bc
|
||||
jvmArgs "-ea",
|
||||
"-Dkonan.home=${project.parent.file('dist')}",
|
||||
"-Djava.library.path=${project.buildDir}/nativelibs"
|
||||
args('-output', project(':runtime').file("build/${platformName}/stdlib.kt.bc"),
|
||||
'-nolink', '-nostdlib',
|
||||
'-target', platformName,
|
||||
'-runtime', project(':runtime').file("build/${platformName}/runtime.bc"),
|
||||
'-properties', project(':backend.native').file('konan.properties'),
|
||||
project(':runtime').file('src/main/kotlin'),
|
||||
*project.globalArgs)
|
||||
|
||||
inputs.dir(project(':runtime').file('src/main/kotlin'))
|
||||
outputs.file(project(':runtime').file('build/stdlib.kt.bc'))
|
||||
inputs.dir(project(':runtime').file('src/main/kotlin'))
|
||||
outputs.file(project(':runtime').file("build/${platformName}/stdlib.kt.bc"))
|
||||
|
||||
dependsOn ':runtime:build'
|
||||
dependsOn ":runtime:build"
|
||||
}
|
||||
}
|
||||
|
||||
task start(type: JavaExec) {
|
||||
main = 'org.jetbrains.kotlin.cli.bc.K2NativeKt'
|
||||
classpath = project.configurations.cli_bc
|
||||
jvmArgs "-ea",
|
||||
"-Dkonan.home=${project.parent.file('dist')}",
|
||||
"-Djava.library.path=${project.buildDir}/nativelibs"
|
||||
args('-output', project(':runtime').file('build/start.kt.bc'),
|
||||
'-nolink', '-nostdlib',
|
||||
'-library', project(':runtime').file('build/stdlib.kt.bc'),
|
||||
'-runtime', project(':runtime').file('build/runtime.bc'),
|
||||
'-properties', project(':backend.native').file('konan.properties'),
|
||||
targetList.each { platformName ->
|
||||
task("${platformName}Start", type: JavaExec) {
|
||||
main = 'org.jetbrains.kotlin.cli.bc.K2NativeKt'
|
||||
classpath = project.configurations.cli_bc
|
||||
jvmArgs "-ea",
|
||||
"-Dkonan.home=${project.parent.file('dist')}",
|
||||
"-Djava.library.path=${project.buildDir}/nativelibs"
|
||||
args('-output', project(':runtime').file("build/${platformName}/start.kt.bc"),
|
||||
'-nolink', '-nostdlib',
|
||||
'-target', platformName,
|
||||
'-library', project(':runtime').file("build/${platformName}/stdlib.kt.bc"),
|
||||
'-runtime', project(':runtime').file("build/${platformName}/runtime.bc"),
|
||||
'-properties', project(':backend.native').file('konan.properties'),
|
||||
project(':runtime').file('src/launcher/kotlin'),
|
||||
*project.globalArgs)
|
||||
|
||||
inputs.dir(project(':runtime').file('src/launcher/kotlin'))
|
||||
outputs.file(project(':runtime').file('build/start.kt.bc'))
|
||||
inputs.dir(project(':runtime').file('src/launcher/kotlin'))
|
||||
outputs.file(project(':runtime').file("build/${platformName}/start.kt.bc"))
|
||||
|
||||
dependsOn ':runtime:build', 'stdlib'
|
||||
dependsOn ":runtime:build", "${platformName}Stdlib"
|
||||
}
|
||||
}
|
||||
|
||||
task run {
|
||||
|
||||
Reference in New Issue
Block a user