*6ea33986fa- psi2ir: Provide substituted descriptor for property references (3 часа назад) <Dmitry Petrov> *1968fd7fcb- (tag: build-1.3.50-dev-2101) Remove check for files count for mirror elements set in light classes (5 часов назад) <Igor Yakovlev> *e0c5f897fb- (tag: build-1.3.50-dev-2093) KotlinGenerateToStringAction: should generate .contentToString instead java.util.Arrays.toString #KT-27563 Fixed (6 часов назад) <Dmitry Gridin> *43c6049f02- (tag: build-1.3.50-dev-2092) FIR2IR: set origin correctly for synthetic property accesses (6 часов назад) <Mikhail Glukhikh> *c6a09dba4e- FIR: consider Java default constructors as primary ones (6 часов назад) <Mikhail Glukhikh> *2ceffa241b- FIR: make Java default constructor visibility same with class visibility (6 часов назад) <Mikhail Glukhikh> *14bbbb5bf5- FIR: add test for synthetic property access (6 часов назад) <Mikhail Glukhikh> *c35d7eab70- Refactor FIR symbols to make them and their FIR element types more clear (6 часов назад) <Mikhail Glukhikh> *701b9ce166- (tag: build-1.3.50-dev-2078) (minor) Minor corrections in K/A/30GradleIT#testOmittedStdlibVersion (17 часов назад) <Sergey Igushkin> *15feeddc46- Allow omitting version of standard artifacts when kotlin-android plugin is used (17 часов назад) <technoir> *0aa80d1912- (tag: build-1.3.50-dev-2074) Fix org.jetbrains.kotlin.native.disabledTargets registered as extension (22 часа назад) <Sergey Igushkin> *26a8c16166- (tag: build-1.3.50-dev-2073) Fix Gradle task input annotations for Gradle 5.5 checks (22 часа назад) <Sergey Igushkin> *e804b58f5f- (tag: build-1.3.50-dev-2072) Fix getting logger factory in 182 (22 часа назад) <Nikolay Krasko> *4516902aaf- (tag: build-1.3.50-dev-2068) Fix metadata transformation for non-published dependencies, KT-32225 (23 часа назад) <Sergey Igushkin> *dbc8007c63- Fix visibility for MPP dependencies from non-root source sets, KT-32204 (23 часа назад) <Sergey Igushkin> *0da55e8284- (tag: build-1.3.50-dev-2064) Unregister custom logger after use in AbstractGradleMultiplatformWizardTest (25 часов назад) <Nikolay Krasko> *5d35bebacd- (tag: build-1.3.50-dev-2057) Keyword completion: use proper prefix matcher for keyword completion (27 часов назад) <Max Medvedev> *ee37a0aa9f- (tag: build-1.3.50-dev-2055) Inline callable: keep all usages inside annotation entries (28 часов назад) <Mikhail Glukhikh> *eb00af6b96- CFG: mark annotation arguments as "used as expressions" #KT-24596 Fixed (28 часов назад) <Mikhail Glukhikh> *b24b8bfb28- BindingContextUtils: fix warnings (28 часов назад) <Mikhail Glukhikh> *b97f187cf6- ControlFlowInformationProvider: fix warnings (28 часов назад) <Mikhail Glukhikh> *5e94f537ef- Refactoring: use isUsedAsExpression instead of USED_AS_EXPRESSION slice (28 часов назад) <Mikhail Glukhikh> *5afa5de1d7- ReplaceWith: don't keep class literal & callable reference in inlining (28 часов назад) <Mikhail Glukhikh> *615aa265f5- Inline: do more precise check before adding this@Labeled #KT-30762 Fixed (28 часов назад) <Mikhail Glukhikh> *6605e0dfc0- (tag: build-1.3.50-dev-2053) Update test 'moveMultipleFIlesWithImplicitPrefix' (29 часов назад) <Dmitry Gridin> *d2b8535548- Move/copy refactoring: add base support of implicit package prefix #KT-29720 Fixed (29 часов назад) <Dmitry Gridin> *7c547d8c5a- Minor: clean up copy refactoring (29 часов назад) <Dmitry Gridin> *1a9abaeb2a- Clean up move refactoring (29 часов назад) <Dmitry Gridin> *beba1d82fc- ReplaceJavaStaticMethodWithKotlinAnalogInspection: add CommentSaver for case with transform to extension (29 часов назад) <Dmitry Gridin> *56d2961cd9- ReplaceJavaStaticMethodWithKotlinAnalogInspection: add more tests (29 часов назад) <Dmitry Gridin> *82bf21f195- ReplaceJavaStaticMethodWithKotlinAnalogInspection: rename `isApplicable(call, context)` to `isApplicableInContext` (29 часов назад) <Dmitry Gridin> *71c0b3caa0- ReplaceJavaStaticMethodWithKotlinAnalogInspection: clean up comments (29 часов назад) <Dmitry Gridin> *8314dbffd5- ReplaceJavaStaticMethodWithKotlinAnalogInspection: introduce Transformation for extension with non-null arguments (29 часов назад) <Dmitry Gridin> *8b8858b223- ReplaceJavaStaticMethodWithKotlinAnalogInspection: introduce Transformation for extension with non-null receiver (29 часов назад) <Dmitry Gridin> *d47a7234bb- ReplaceJavaStaticMethodWithKotlinAnalogInspection: apply inspection on idea module (29 часов назад) <Dmitry Gridin> *026949a758- ReplaceJavaStaticMethodWithKotlinAnalogInspection: remove non-implemented cases (29 часов назад) <Dmitry Gridin> *632158cd52- ReplaceJavaStaticMethodWithKotlinAnalogInspection: simplify Transform for default action (29 часов назад) <Dmitry Gridin> *3aa2401f19- ReplaceJavaStaticMethodWithKotlinAnalogInspection: introduce Transform interface #KT-32454 Fixed (29 часов назад) <Dmitry Gridin> *835532c206- ReplaceJavaStaticMethodWithKotlinAnalogInspection: move to move to inspections.jdk2k subpackage (29 часов назад) <Dmitry Gridin> *b2a60795da- ReplaceJavaStaticMethodWithKotlinAnalogInspection: add more cases for Arrays #KT-32512 Fixed #KT-30124 Fixed (29 часов назад) <Dmitry Gridin> *24caca1882- ReplaceJavaStaticMethodWithKotlinAnalogInspection: fix false positive for 'Arrays.copyOf' #KT-32477 (29 часов назад) <Dmitry Gridin> *4a8dbeda1b- (tag: build-1.3.50-dev-2051) Gradle, webpack: add conventional archive properties (30 часов назад) <Sergey Rostov> *b6ca323a5e- Gradle, karma, webpack: add required dependencies (30 часов назад) <Sergey Rostov> *8b622955fe- Gradle, js, minor: fix typos, formatting and imports (30 часов назад) <Sergey Rostov> *b68582656e- Gradle, DtsResolver: use canonical path to avoid files duplication (30 часов назад) <Sergey Rostov> *80068c0a40- Gradle, js: fix task annotations (30 часов назад) <Sergey Rostov> *3c606c27a1- Gradle, js: support generating kotlin external declarations from .d.ts (30 часов назад) <Sergey Rostov> *2fb4d23f1e- Gradle, js, KotlinProjectNpmResolution: index by compilation (30 часов назад) <Sergey Rostov> *7332290ece- Gradle, js, NpmDependency: getDependenciesRecursively (30 часов назад) <Sergey Rostov> *50e07330f4- Gradle, js, resolver, requireInstalled: close resolving if kotlinNpmResolve is up-to-date (30 часов назад) <Sergey Rostov> *1860097c08- Gradle, js, npm resolver: support custom package json entries, index files and extensions (30 часов назад) <Sergey Rostov> *88fa396d26- Gradle, js, resolver: don't skip reading lock file while skipping package manager execution (30 часов назад) <Sergey Rostov> *d1789b07ad- Gradle, js, yarn: store resolved version and integrity hash to NpmDependency (30 часов назад) <Sergey Rostov> *d051748e2b- Gradle, js, npm: support scopes (30 часов назад) <Sergey Rostov> *5e6c76a6e7- Gradle, execWithProgress: report description as first progress (30 часов назад) <Sergey Rostov> *638554ba1c- Gradle, JS, resolver: don't add files that are not existed, add kjsm files (30 часов назад) <Sergey Rostov> *bcf894aba3- Gradle, JS, resolver: return null if npm dependency being resolved before kotlinNpmInstall (30 часов назад) <Sergey Rostov> *8b0dffe182- Gradle, JS, compilation resolver: close dependent compilation resolver when it's packageJson task is up-to-date (30 часов назад) <Sergey Rostov> *3658ad785f- Gradle, JS, NpmResolutionManager: cleanup and document states (30 часов назад) <Sergey Rostov> *327d75dc5d- Gradle, JS: Extract NpmResolutionManager (30 часов назад) <Sergey Rostov> *982f08ce7a- Gradle, JS: replace NodeJs plugin and extension with NpmResolver plugin (30 часов назад) <Sergey Rostov> *2f90742809- Gradle, JS: rework nodejs extensions and plugins (30 часов назад) <Sergey Rostov> *24f08a614e- Gradle, GradleNodeModulesCache: use new ProcessedFilesCache API (30 часов назад) <Sergey Rostov> *fd2d99e205- Gradle, ProcessedFilesCache: use file as target type (not string) (30 часов назад) <Sergey Rostov> *9679403831- Gradle, ProcessedFilesCache: optimize serialization (30 часов назад) <Sergey Rostov> *dff48b251d- Gradle, JS: rework extension registering and resolver phasing (30 часов назад) <Sergey Rostov> *f4dcc18baf- Gradle, JS: rework NpmResolver (30 часов назад) <Sergey Rostov> *196e3f968e- (tag: build-1.3.50-dev-2049) New J2K: fix generating nj2k tests bunch files (30 часов назад) <Ilya Kirillov> *cabc26184b- New J2K: convert single Java static import statements (30 часов назад) <Ilya Kirillov> *b18350e9c8- New J2K: fix ExceptionInInitializerError in JKJavaPrimitiveTypeImpl (30 часов назад) <Ilya Kirillov> *f0dd21790a- New J2K: add plain text copy-paste conversion test for new J2K (30 часов назад) <Ilya Kirillov> *041677ab1b- New J2K: force use old j2k for all not file/copy-paste conversions (30 часов назад) <Ilya Kirillov> *8f69cca2b3- New J2K: enable new J2K by default (30 часов назад) <Ilya Kirillov> *ba3927b580- New J2K: add default null value to property with type parameter type when it is implicit in Java (30 часов назад) <Ilya Kirillov> *9d6338afb2- New J2K: do not fail conversion if some of post-processings throws exception (30 часов назад) <Ilya Kirillov> *a9865e5d7b- New J2K: check for element validity before applying fix in diagnostic-based post processings (30 часов назад) <Ilya Kirillov> *236f62be2a- New J2K, minor: refactor code builder (30 часов назад) <Ilya Kirillov> *934425e86a- New J2K: rearrange and optimize some post-processings (30 часов назад) <Ilya Kirillov> *370f113b78- New J2K: run add/remove modifiers post-processings only single time && do not call resolve in them for some corner cases (30 часов назад) <Ilya Kirillov> *3e04bfb156- New J2K: do not print modifiers which are going to be removed in postprocessing (30 часов назад) <Ilya Kirillov> *0b7b16162d- (tag: build-1.3.50-dev-2046) 182: scripts, pass File finding script definition instead of File.name (31 час назад) <Natalia Selezneva> *6ab46204cb- (tag: build-1.3.50-dev-2041) [JS IR BE] Properly handle primary constructors (32 часа назад) <Roman Artemev> *a112345418- [JS IR BE] Fix builtin constructor lowering (32 часа назад) <Roman Artemev> *131158df65- [JS IR BE] Refact MultipleCatchLowering (32 часа назад) <Roman Artemev> *1605dc3251- [JS IR BE] Remove unused classifier symbol from IrTypeOperatorCall builder (32 часа назад) <Roman Artemev> *69c4db82d4- (tag: build-1.3.50-dev-2040) Uast: `IdeaKotlinUastResolveProviderService` analyze as `BodyResolveMode.PARTIAL_WITH_CFA` (32 часа назад) <Nicolay Mitropolsky> *fda5692fc6- (tag: build-1.3.50-dev-2039) RemoveCurlyBracesFromTemplateInspection: add heuristic to change severity Change severity to INFORMATION if a variable hasn't whitespace around & add an option to return the old behavior #KT-31717 Fixed (32 часа назад) <Dmitry Gridin> *e4d0c2cb0e- (tag: build-1.3.50-dev-2038) Scripts: switch ScriptReportSink to new scripting API (33 часа назад) <Natalia Selezneva> *bd0f947222- Refactor script reports: introduce getter, check that report are changed inside attach method (33 часа назад) <Natalia Selezneva> *68b45ce1dc- FromFileAttributeScriptDependenciesLoader should be applicable when there are scriptCompilationConfiguration file attribute (33 часа назад) <Natalia Selezneva> *923e89db69- Provide toString method for ScriptCompilationConfigurationWrapper (33 часа назад) <Natalia Selezneva> *7215e03a47- Scripts: rewrite search without usage of legacy script definition (33 часа назад) <Natalia Selezneva> *4853190752- Scratch: should always have default script definition (33 часа назад) <Natalia Selezneva> *b0c9339dee- Scripts: search for script definition using PsiFile instead of file name (33 часа назад) <Natalia Selezneva> *fbe965be9d- Scripts: pass File finding script definition instead of File.name (33 часа назад) <Natalia Selezneva> *ac4df86fa6- (tag: build-1.3.50-dev-2037) Fix performance test compilation (33 часа назад) <Vladimir Dolzhenko> *9da630a1ac- (tag: build-1.3.50-dev-2036) Fix compilation of KotlinMPPGradleProjectResolver in bunch 192 (2 дня назад) <Andrey Uskov> *3c41db654a- (tag: build-1.3.50-dev-2034) Fix performance test compilation for 192 (2 дня назад) <Vladimir Dolzhenko> *7d14fb756d- (tag: build-1.3.50-dev-2032) Make Duration storageUnit inline val to avoid state initialization (2 дня назад) <Ilya Gorbunov> *f7fc5d2ffa- (tag: build-1.3.50-dev-2031) Fix codegen for JvmOverloads with more than 32 parameters (2 дня назад) <Alexander Udalov> *40633768bc- (tag: build-1.3.50-dev-2028) Implement dependency deduplication in order to reduce memory consumption during import process (2 дня назад) <Andrey Uskov> *09c2b2800c- Migrate collections to arrays for memory optimisation during import process (2 дня назад) <Andrey Uskov> *f6f072693a- Fully disable editing target platforms for HMPP modules. Show java target platform version in Facets (2 дня назад) <Andrey Uskov> *c98ad923bd- Import list of pure kotlin source roots from gradle in facet settings for inspections #KT-32300 Fixed (2 дня назад) <Andrey Uskov> *2665fff373- Import package prefix from MPP projects (2 дня назад) <Andrey Uskov> *2b6f566d58- Import package prefix from gradle #KT-19693 Fixed (2 дня назад) <Andrey Uskov> *dbec626a49- (tag: build-1.3.50-dev-2024) Fix performance test compilation for 182 (2 дня назад) <Vladimir Dolzhenko> *ffb65b2655- (tag: build-1.3.50-dev-2021) Build: Fix kotlinBuildProperties, should always proguard on teamcity (2 дня назад) <Vyacheslav Gerasimov> *8605ad6630- Build: Upgrade gradle to 5.5 (2 дня назад) <Vyacheslav Gerasimov> *a6be6f4986- (tag: build-1.3.50-dev-2019) Use Class.forName instead of ClassLoader.loadClass in reflection (2 дня назад) <Alexander Udalov> *72d74ff888- (tag: build-1.3.50-dev-2011) Add build gradle kts performance tests (2 дня назад) <Vladimir Dolzhenko> *c292380aff- (tag: build-1.3.50-dev-2005) Improve Kotlin/Native disabled targets warning, KT-29693 (2 дня назад) <Sergey Igushkin> *dabb7bb496- (tag: build-1.3.50-dev-1999) Fix new inference CLI tests on Windows (2 дня назад) <Alexander Udalov> *b82c32a807- (tag: build-1.3.50-dev-1995) Use default target for android tests (2 дня назад) <Mikhael Bogdanov> *d4fb76c1da- (tag: build-1.3.50-dev-1994) [JS IR BE] Fix overriding property of Throwable (2 дня назад) <Roman Artemev> *d9c6d38715- [JS IR BE] Fix private members lowering (2 дня назад) <Roman Artemev> *7573fcde53- (tag: build-1.3.50-dev-1991, tag: build-1.3.50-dev-1990) Demote new experimental capitalize overloads in overload resolution (3 дня назад) <Ilya Gorbunov> *686bcb830e- (tag: build-1.3.50-dev-1982) Bit query and bit rotation functions for UInt, ULong, UShort, UByte (3 дня назад) <Ilya Gorbunov> *39bdf34b9f- Use common implementation of fastLog2 based on countLeadingZeroBits (3 дня назад) <Ilya Gorbunov> *f8724654a1- Bit query and bit rotation functions for Int, Long, Short, Byte (3 дня назад) <Ilya Gorbunov> *32fc131d62- Rename jvm actuals from Numbers to NumbersJVM (3 дня назад) <Ilya Gorbunov> *da8fb3a195- (tag: build-1.3.50-dev-1979) JVM_IR: Respect -Xno-param-assertions (3 дня назад) <Steven Schäfer> *dd20b74030- Split GenerateNotNullAssertionsTests into standard box and bytecode tests (3 дня назад) <Steven Schäfer> *dfd0042a5b- (tag: build-1.3.50-dev-1978, tag: build-1.3.50-dev-1976) Do not create single element list if only one candidate (3 дня назад) <Simon Ogorodnik> *f434248cb7- FIR property getter: take return type from property even if it's error (3 дня назад) <Mikhail Glukhikh> *d96c66adac- FIR: partially implement invoke resolution (3 дня назад) <Mikhail Glukhikh> *2ca0056cd0- (tag: build-1.3.50-dev-1971) ReplaceGuardClause inspection: check contracts availability (3 дня назад) <Toshiaki Kameyama> *8cbcb66197- ReplaceGuardClause inspection: don't report when argument is not String (3 дня назад) <Toshiaki Kameyama> *90b0ea73dc- Add inspection for check/require/checkNotNull/requireNotNull (3 дня назад) <Toshiaki Kameyama> *64780293d3- (tag: build-1.3.50-dev-1969) "Redundant visibility modifier" inspection: don't report for property getter (3 дня назад) <Toshiaki Kameyama> *a96a938f87- (tag: build-1.3.50-dev-1965) Fix creating of the script definition from legacy template (3 дня назад) <Ilya Chernikov> *d3810bfcae- (tag: build-1.3.50-dev-1964) Add `operator` modifier by inspection on idea module (3 дня назад) <Dmitry Gridin> *795dcfa8ff- Minor: clean up some quickfixes & refactorings (3 дня назад) <Dmitry Gridin> *9ba7907b81- (tag: build-1.3.50-dev-1955, tag: build-1.3.50-dev-1950) Fix compatibility issues with third-party plugins (3 дня назад) <Yan Zhulanow> *36e1149e51- Light classes: Fix getTextOffset() and getTextRange() for property accessors (3 дня назад) <Yan Zhulanow> *7078302e6c- Light classes: Fix getTextOffset() for identifiers (3 дня назад) <Yan Zhulanow> *0f4085066f- Debugger: Do not assume we are inside the class body when in '}' (KT-15259) (3 дня назад) <Yan Zhulanow> *a8efb349ed- Debugger, minor: Remove debugger labels in dispatch receivers (3 дня назад) <Yan Zhulanow> *8f20f0b963- Debugger: Do not calculate default source file if an alternative one is available (3 дня назад) <Yan Zhulanow> *d45bbaabcd- Debugger: Fix missing NOPs in optimized Unit.INSTANCE calls (KT-31702) (3 дня назад) <Yan Zhulanow> *f60bf5cb97- KT-31127: register only generated Java sources to AGP (3 дня назад) <Ivan Gavrilovic> *2c102ecd57- Replicate old backend's naming logic for captured receiver parameter and extension receiver parameters. (3 дня назад) <Jiaxiang Chen> *9760c156a4- Debugger: Fix breakpoints on if/loops with constant conditions (KT-14421) (3 дня назад) <Yan Zhulanow> *6fc801afd2- Debugger: Make calls to LocalVariableProxyImpl.type lazy (3 дня назад) <Yan Zhulanow> *91565076e2- Debugger: Fix property accessor evaluation in scripts (KT-23526) (3 дня назад) <Yan Zhulanow> *6686ed2e38- Evaluator: Do not report parsing error on empty block/expression (KT-11938) (3 дня назад) <Yan Zhulanow> *6d7d524b9b- Debugger: Fix 'expect fun' evaluation from common code (KT-26742) (3 дня назад) <Yan Zhulanow> *873f4a1b08- Debugger: Accept empty code fragment contexts (KT-19556) (3 дня назад) <Yan Zhulanow> *188ed82081- Debugger: Handle closure receivers came from outer callables properly (KT-31709) (3 дня назад) <Yan Zhulanow> *577f32740e- Debugger: Fix isDumb contract in evaluator (KT-31510) (3 дня назад) <Yan Zhulanow> *c2f0286183- Debugger: Prefer the closest captured values (3 дня назад) <Yan Zhulanow> *4fe6431b0f- Debugger: Disable value rendering in watches by default (KT-19084) (3 дня назад) <Yan Zhulanow> *0f3d85716c- Debugger: Fix test, synthetic this variable is now hidden in Kotlin variables mode (3 дня назад) <Yan Zhulanow> *1eab78124a- Debugger: Fix private member priority test (3 дня назад) <Yan Zhulanow> *54f78a2920- Debugger: Remove debugger-related hacks in resolution (3 дня назад) <Yan Zhulanow> *b4f515a436- Debugger: Support Kotlin variables for inlined lambdas inside inline functions (KT-31418) (3 дня назад) <Yan Zhulanow> *afa0bec6f6- Debugger: Change the inline depth calculation heuristics, fix debugging for inlined lambdas (KT-30919) (3 дня назад) <Yan Zhulanow> *9c9d2b5ad4- Minor: Rename constant to match its meaning (3 дня назад) <Yan Zhulanow> *5777592024- Debugger: Support captured values (KT-30740) (3 дня назад) <Yan Zhulanow> *f16459df32- Pill: Support 'runtimeOnly' dependency configuration (3 дня назад) <Yan Zhulanow> *6eefea6715- (tag: build-1.3.50-dev-1929) Add tests for obsolete issues (5 дней назад) <Mikhail Zarechenskiy> *675f01ee80- (tag: build-1.3.50-dev-1923) [JS IR BE] Set Throwable subtype name in extendThrowable function (6 дней назад) <Svyatoslav Kuzmich> *4379780ff8- (tag: build-1.3.50-dev-1919) Fixed extra argument in function call after rebase (6 дней назад) <Leonid Startsev> *80ddac64e0- (tag: build-1.3.50-dev-1917) Add serializers for primitive arrays to default types list (6 дней назад) <Leonid Startsev> *cfceeb1e8c- (tag: build-1.3.50-dev-1915) Implement direct bindings to script properties mapping in the JSR-223 implementation (6 дней назад) <Ilya Chernikov> *4940f64265- Refactor scripting infrastructure - convert usages to the new entities (6 дней назад) <Ilya Chernikov> *80ada5113e- Fix flaky test (6 дней назад) <Ilya Chernikov>
Kotlin/Native
Kotlin/Native is an LLVM backend for the Kotlin compiler, runtime implementation, and native code generation facility using the LLVM toolchain.
Kotlin/Native is primarily designed to allow compilation for platforms where virtual machines are not desirable or possible (such as iOS or embedded targets), or where a developer is willing to produce a reasonably-sized self-contained program without the need to ship an additional execution runtime.
Prerequisites:
- install JDK for your platform, instead of JRE. The build requires
tools.jar, which is not included in JRE; - on macOS install Xcode 10.2
- on Fedora 26+
yum install ncurses-compat-libsmay be needed - on recent Ubuntu
apt install libncurses5is needed
To compile from sources use following steps:
First, download dependencies:
./gradlew dependencies:update
Then, build the compiler and libraries:
./gradlew bundle
To build with experimental targets support compile with -Porg.jetbrains.kotlin.native.experimentalTargets.
The build can take about an hour on a Macbook Pro. To run a shorter build with only the host compiler and libraries, run:
./gradlew dist distPlatformLibs
To include Kotlin compiler in composite build and build
against it, use the kotlinProjectPath project property:
./gradlew dist -PkotlinProjectPath=path/to/kotlin/project
To include Kotlin/Native Shared in a composite build and build against
it, use the sharedProjectPath project property:
./gradlew dist -PsharedProjectPath=path/to/kotlin/native/shared
It's possible to include in a composite build both Kotlin compiler and Kotlin/Native Shared simultaneously.
After that, you should be able to compile your programs like this:
export PATH=./dist/bin:$PATH
kotlinc hello.kt -o hello
For an optimized compilation, use -opt:
kotlinc hello.kt -o hello -opt
For tests, use:
./gradlew backend.native:tests:run
To generate interoperability stubs, create a library definition file
(refer to samples/tetris/.../sdl.def), and run the cinterop tool like this:
cinterop -def lib.def
See the provided samples and INTEROP.md for more details.
The Interop tool generates a library in the .klib library format. See LIBRARIES.md
for more details on this file format.