This patch uses kotlin-dev bintray repo (dl.bintray.com/kotlin/kotlin -dev/org/jetbrains/kotlin/kotlin-compiler/) for Kotlin compiler downloading instead of the sonatype repo and our bintray mirror of it. So there is not need to run ./gradlew update_kotlin_compiler on each compiler update. It also updates kotlin-compiler to 1.1.3-dev-1619
Kotlin/Native
Kotlin/Native is a LLVM backend for the Kotlin compiler, runtime implementation and native code generation facility using LLVM toolchain.
Kotlin/Native is primarily designed to allow compilation for platforms where virtual machines are not desirable or possible (such as iOS, embedded targets), or where developer is willing to produce reasonably-sized self-contained program without need to ship an additional execution runtime.
To compile from sources use following steps.
First download dependencies:
./gradlew dependencies:update
Then build the compiler and standard library:
./gradlew dist
To build standard library for cross-targets (currently, iOS on Mac OSX and Raspberry Pi on Linux hosts) use:
./gradlew cross_dist
After that you should be able to compile your programs like that:
export PATH=./dist/bin:$PATH
kotlinc hello.kt -o hello
For an optimized compilation use -opt:
kotlinc hello.kt -o hello -opt
For some tests, use:
./gradlew backend.native:tests:run
To generate interoperability stubs create library definition file
(take a look on samples/tetris/sdl.def) and run cinterop tool like this:
cinterop -def lib.def
See provided samples and INTEROP.md for more details.