Commit Graph

50 Commits

Author SHA1 Message Date
Yahor Berdnikau 6b19b8b9d0 [Repo] Don't use kotlinOptions in repo build scripts
^KT-63419 In Progress
2024-02-22 14:48:10 +00:00
Alexander Shabalin 4468167a64 [K/N] Move kotlin-native/utilities/basic-utils to compiler/utils 2024-02-08 20:43:11 +00:00
Dmitriy Dolovov f4617f405c [Native] Don't use KLIB repositories in generation of platform libs
Don't pass KLIB repositories via '-repo' or '-r' compiler parameters.

^KT-61098
2023-11-15 19:38:25 +00:00
Ivan Kochurkin 1827df82c4 Removed useless as casts from compiler code
It allows compiling code with K2 and enabled `-Werror`
2023-10-24 20:59:56 +00:00
Alexander Shabalin 3ec4f2e0ee [K/N] Remove jsinterop because K/N wasm32 target is removed ^KT-59008
See https://kotl.in/native-targets-tiers for details
2023-08-30 12:17:52 +00:00
Pavel Punegov ecb6b5dc58 [K/N][build] Remove obsolete kotlin-native-shared project
This project was replaced by the :native:kotlin-native-utils located at
native/utils. All sources were already merged.


Merge-request: KT-MR-11847
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2023-08-28 14:57:16 +00:00
Svyatoslav Scherbina 7ca0cb1077 Native: don't add ExperimentalForeignApi to platform libs
Use -Xdisable-experimental-annotation when generating platform libs.
As a result, unlike all other cinterop libraries, declarations in
platform libs won't require ExperimentalForeignApi opt-in

^KT-58362
2023-07-21 11:54:14 +00:00
Dmitrii Krasnov f2816a5531 Added property for overriding konan distribution location
#KT-50463 Fixed

Merge-request: KT-MR-10310
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com>
2023-07-12 12:36:51 +00:00
Sergey Bogolepov d433d1eb3f KT-58862: Remove cinterop -mode option
metadata cinterop libraries perform pretty well for years,
so we can drop this flag.
2023-06-30 14:16:01 +00:00
Vladimir Sukharev ebc4cf7f96 [K/N] Normalize klib paths for KonanLibraryImpl
^KT-58979 Fixed

Merge-request: KT-MR-10372
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-05-31 04:53:58 +00:00
Pavel Punegov c49128aa99 [K/N][perf] Performance project build
* Add build-tools plugin
* Cleanup code
* Add missing methods after the move
2023-02-27 10:48:27 +00:00
Artem Daugel-Dauge 0d1e7e83b5 [K/N, CLI] Pass through errors from Gradle to Xcode
^KT-55650

Merge-request: KT-MR-8245
Merged-by: Artem Daugel-Dauge <Artem.Daugel-Dauge@jetbrains.com>
2023-01-13 20:54:05 +00:00
Igor Chevdar 73e10b17c6 [K/N][gradle] Set klib version from gradle 2023-01-11 14:13:02 +00:00
Svyatoslav Scherbina 399ea1092e Remove kotlinc K/N scripts because they clash with real (K/JVM) kotlinc
These scripts were deprecated in 1.5.0.
2022-12-29 10:48:03 +00:00
Vladimir Sukharev b883dc5434 [KT-39120] Add "-fmodules" argument support to Cinterop
Merge-request: KT-MR-6921
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2022-11-30 08:46:40 +00:00
Pavel Punegov d2c58cdd27 [K/N][build] Dependencies fixes: trove4j and kotlin-compiler
* Depend on kotlin-compiler project instead of its runtimeElements only
* trove4j fixes: add as a dependency and use common version
* Strip dependencies in different projects: remove unnecessary
2022-10-21 10:33:40 +00:00
Igor Chevdar 1963860a92 [K/N][caches] Removed old slow and hacky version of per-file caches building 2022-09-27 17:06:48 +00:00
Alexander Udalov c410c5d3cd Do not reset freeCompilerArgs for some kotlin-native modules
Otherwise common compiler arguments which are set for all modules in the
project in `buildSrc/src/main/kotlin/common-configuration.gradle.kts`
are not applied. The most interesting of those are `-Xuse-k2` (if K2 is
enabled) and `-Xjvm-default=all`.
2022-09-27 11:04:31 +00:00
Sergey Bogolepov a88ef04671 [K/N] Turn back red code.
For some reason build is failing during publication
with the previous change. Will deal with it later.
2022-09-16 13:25:41 +00:00
Sergey Bogolepov 6de5671db8 Revert "Revert "[K/N] Convert StubGenerator build script to Kotlin""
This reverts commit b53d6d0d7e.
2022-09-16 13:25:41 +00:00
Nikolay Krasko b53d6d0d7e Revert "[K/N] Convert StubGenerator build script to Kotlin"
This reverts commit ddc2eb79c3.
2022-09-16 11:25:18 +02:00
Sergey Bogolepov ddc2eb79c3 [K/N] Convert StubGenerator build script to Kotlin
Besides usual pros of kts, it simplifies potential reuse
of code from other build.gradle.kts (namely, Interop:Indexer).

Also, this commit fixes red code in IDE by adding proper dependencies.
2022-09-16 04:53:41 +00:00
Igor Chevdar 7e79b2b500 [K/N][IR][codegen] Preliminary support of per-file caches 2022-08-06 17:40:23 +00:00
Yahor Berdnikau 603d043abc Move Kotlin/Native compiler arguments into :compiler:cli:cli-common
This allows to reference them in the Gradle plugins without enabling
kotlin-native part of the repository

^KT-53108 In Progress
2022-07-14 10:57:28 +00:00
Svyatoslav Scherbina 149e596bef Native: support -Xoverride-konan-properties in generatePlatformLibraries 2022-01-26 12:43:41 +00:00
Igor Chevdar 2e5a110a3e [K/N][gradle] Fixed platform libraries generation 2022-01-25 09:17:45 +00:00
Igor Chevdar bd6ea71ead [K/N][gradle][interop] Refactored ToolConfig
Added possibility to create different strategies for loading libclang
2022-01-14 10:29:10 +05:00
Igor Chevdar 8ac234fd6b [K/N][interop] Made NativeMemoryAllocator lock-free 2022-01-14 10:29:06 +05:00
Igor Chevdar 993816a400 [K/N][runtime][interop] Refactoring to run cinterop in daemon 2022-01-14 10:29:05 +05:00
Igor Chevdar 353f82f9e6 Revert "[K/N][runtime][interop] Refactoring to run cinterop in daemon"
This reverts commit 47858126da.
2021-11-26 14:05:59 +05:00
Igor Chevdar 0ccb271323 Revert "[K/N][interop] Made NativeMemoryAllocator lock-free"
This reverts commit d642cda8f0.
2021-11-26 14:05:02 +05:00
Igor Chevdar 4b53a8e3c7 Revert "[K/N][gradle][interop] Refactored ToolConfig"
This reverts commit d9c1b1f6f7.
2021-11-26 14:01:40 +05:00
Igor Chevdar d9c1b1f6f7 [K/N][gradle][interop] Refactored ToolConfig
Added possibility to create different strategies for loading libclang
2021-11-25 23:42:10 +05:00
Igor Chevdar d642cda8f0 [K/N][interop] Made NativeMemoryAllocator lock-free 2021-11-25 23:42:09 +05:00
Igor Chevdar 47858126da [K/N][runtime][interop] Refactoring to run cinterop in daemon 2021-11-25 23:42:09 +05:00
Svyatoslav Scherbina 8bd1d7b2be Native: allow jsinterop and cinterop (legacy sourcecode mode) using SymbolName
The interop Kotlin source generators still use `@SymbolName` to link
Kotlin code with platform code.
2021-11-23 08:09:44 +00:00
Dmitriy Novozhilov 8ed1b153b4 Fix warnings 2021-08-25 14:55:52 +03:00
Alexander Udalov c821aba3bd Fix warnings in native modules 2021-08-06 22:37:00 +02:00
Vasily Levchenko 2baf344f5f [kotlin gradle plugin] enable to work with embedded k/n compiler. 2021-07-27 19:44:31 +00:00
Sergey Bogolepov f3a935adb9 Support explicit C++ flags in run_konan tool 2021-04-30 08:39:27 +00:00
Vasily Levchenko d34203991d [konan home provider] make more konan home detector more safe 2021-02-24 11:07:17 +01:00
Vasily Levchenko 8a4b5efa9e [build][native] don't ever fix dist, take it with API 2021-02-24 11:07:17 +01:00
Vasily Levchenko 840c1e612c [build] joint (step 2)
- dist:
  - compiler
  - tools(cinterop,klib)
  - stdlib
  - cache
2021-02-24 11:07:13 +01:00
Vasily Levchenko c85c3ac123 [build] joint (step 1)
(cherry picked from commit 7d0775f7e69ab900200bcf1fa78b94d68e6bd4f6)
2021-02-24 11:04:59 +01:00
SvyatoslavScherbina ee9c2f0e33 Deprecate kotlinc K/N scripts because they clash with real kotlinc
Also make them print the message clarifying that it's Kotlin/Native,
not Kotlin/JVM.

 #KT-43874 Fixed.
2021-01-19 13:37:37 +03:00
Sergey Bogolepov 9c082775e6 Support caches on ios_arm64 2020-12-14 15:25:37 +01:00
Elena Lepilkina f88d38314e Rework usage of Choice options 2020-12-14 15:25:36 +01:00
Igor Chevdar e5f7cef594 [interop] Optimized unmanaged memory alloc/free 2020-11-28 21:12:15 +01:00
Ilya Gorbunov bf4e53ae06 Use Files API for creating temp files and directories
(cherry picked from commit b9df8591d043c79f2032b782efc7539c747c2625)
2020-11-28 21:01:56 +01:00
Stanislav Erokhin f624800b84 Move everything under kotlin-native folder
I was forced to manually do update the following files, because otherwise
they would be ignored according .gitignore settings. Probably they
should be deleted from repo.

Interop/.idea/compiler.xml
Interop/.idea/gradle.xml
Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_runtime_1_0_3.xml
Interop/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_0_3.xml
Interop/.idea/modules.xml
Interop/.idea/modules/Indexer/Indexer.iml
Interop/.idea/modules/Runtime/Runtime.iml
Interop/.idea/modules/StubGenerator/StubGenerator.iml
backend.native/backend.native.iml
backend.native/bc.frontend/bc.frontend.iml
backend.native/cli.bc/cli.bc.iml
backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2Native.kt
backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt
backend.native/tests/link/lib/foo.kt
backend.native/tests/link/lib/foo2.kt
backend.native/tests/teamcity-test.property
2020-10-27 21:00:28 +03:00