Commit Graph

3201 Commits

Author SHA1 Message Date
Nikolay Igotti 93a3444a70 Python extension sample. (#1123) 2017-12-08 12:38:19 +03:00
Svyatoslav Scherbina 0d082d6730 Improve kotlin.Unit support in produced framework
Make the Objective-C wrapper unique, and provide the method to get it
2017-12-07 18:56:26 +03:00
Svyatoslav Scherbina 7696f41f6c Fix Objective-C protocol adopting Kotlin one when producing framework 2017-12-07 18:56:26 +03:00
Svyatoslav Scherbina cf076ffff0 Don't expose special classes when producing frameworks
* Kotlin annotation classes;
* Enum entry classes;
* Interop types.
2017-12-07 18:56:26 +03:00
Svyatoslav Scherbina 8b6d3c0a69 Add dynamic and framework to -produce CLI description 2017-12-07 18:56:26 +03:00
Svyatoslav Scherbina b705fa9656 Guard Kotlin code from foreign exceptions when producing framework 2017-12-07 18:56:26 +03:00
Igor Chevdar 03ef9e4855 Added test on special bridges 2017-12-07 17:06:13 +03:00
Igor Chevdar c3a6ea4946 Special bridge building fix 2017-12-07 17:06:13 +03:00
Alexander Gorshenev c30d30c96c Don't #include C Adapter header into its cpp.
Just textually concatenate.
2017-12-07 05:10:24 +03:00
Alexander Gorshenev 63aff3eded Compile the C Adaptor with clang and link it to the final binary. 2017-12-07 05:10:24 +03:00
Alexander Gorshenev 5116d43f4f Some renaming to reflect reality. 2017-12-07 05:10:24 +03:00
Igor Chevdar 86e221ed58 Added tests on workers's bridges 2017-12-06 18:32:22 +03:00
Igor Chevdar 8df6ff5215 Added bridges building for workers 2017-12-06 18:32:22 +03:00
SvyatoslavScherbina 9893951d9f Add README.md to 'calculator' sample (#1115) 2017-12-06 16:49:11 +03:00
SvyatoslavScherbina 8a66b30278 Add 'calculator' iOS sample (#1106)
It shows how to use Kotlin library from iOS project
2017-12-06 12:48:53 +03:00
Svyatoslav Scherbina d51e0e0a30 Improve produced framework layout on mac 2017-12-06 12:10:02 +03:00
Svyatoslav Scherbina b5e81a8008 Improve package class naming for -produce framework
Don't include common package to the name
2017-12-06 12:10:02 +03:00
Svyatoslav Scherbina 5ade7505b3 Implement Info.plist generation for produced frameworks 2017-12-06 12:10:02 +03:00
Svyatoslav Scherbina 954caf836a Add -install_name to produced frameworks 2017-12-06 12:10:02 +03:00
Svyatoslav Scherbina 85103a455b Add dynamic linker flags for ios and ios_sim targets 2017-12-06 12:10:02 +03:00
Svyatoslav Scherbina 0279cee371 Remove workarounds for LLVM bug 33220 2017-12-06 09:25:18 +03:00
SvyatoslavScherbina b51d029a33 Add support for producing dynamic/framework from Gradle (#1105) 2017-12-05 09:37:07 +03:00
Vasily Levchenko 391d15df2e [kotlin compiler][update] 1.2-20171130.125257-68
kotlinScriptRuntimeVersion=1.2-20171130.125320-68
kotlinStdLibVersion=1.2-20171130.125324-68
kotlinReflectVersion=1.2-20171130.125314-68
kotlinStdLibJdk8Version=1.2-20171130.125330-68
kotlinGradlePluginVersion=1.2-20171130.125310-68
2017-12-05 05:28:11 +03:00
Nikolay Igotti 0b8d65ed12 Move to 1.2 2017-12-04 23:18:19 +03:00
Igor Chevdar c384c68c77 Fixed warning 2017-12-04 18:17:30 +03:00
Dom Williams a3c4e57434 Fix minor typo (#1109) 2017-12-04 16:24:47 +03:00
Igor Chevdar 05179971c1 Added test 2017-12-04 16:09:05 +03:00
Igor Chevdar 4c07c70829 Removed double evaluation of enum's args 2017-12-04 16:09:05 +03:00
Mike Sinkovsky 4a02ab2939 llvm 5.0 migration remainings 2017-12-01 17:09:02 +03:00
Nikolay Igotti 5663c176a5 Runtime ABI (#1097) 2017-12-01 17:04:51 +03:00
Aleksey Kladov a271f676d5 debug: a test was fixed by llvm upgrade
Closes KT-20323
2017-12-01 15:37:03 +03:00
Alexander Gorshenev cdd3185920 Instead of execClang we now have execKonanClang which properly invokes
the distribution clang able to utilize distributed sysroots etc.
And execBareClang which just invokes the distribution clang with system sysroot.
2017-12-01 12:11:34 +03:00
Vasily Levchenko 3a6cb76dc1 [llvm][update][5.0.0] llvm 5.0.0 2017-12-01 10:36:34 +03:00
Vasily Levchenko e2d2ed5237 [codegen][debug info] wrong usage of DW_OP_plus with const fixed 2017-12-01 10:36:34 +03:00
Ilya Matveev 1c16fc1166 build: Rename kotlin version properties
kotlin_version -> buildKotlinVersion
kotlinVersion -> kotlinCompilerVersion
2017-12-01 13:01:08 +07:00
Ilya Matveev f8b6519864 Fix platform lib build on TeamCity 2017-12-01 13:01:08 +07:00
Nikolay Igotti 8ae1a156b7 Generate reverse interop stubs (#1065) 2017-11-30 18:09:40 +03:00
Igor Chevdar 6492682b28 Supported recursive references in enums
Split enum entries initialization onto two steps:
1. Allocation of all instances and storing them in the array;
2. Calling constructors on each instance.
2017-11-30 16:27:06 +03:00
Igor Chevdar faa9986489 DFGBuilder fix
Intrinsic functions considered internal.
2017-11-30 16:27:06 +03:00
Ilya Matveev a991b51064 gradle-plugin: Fix konanArtifact block for Kotlin DSL 2017-11-30 18:23:58 +07:00
Rodrigo B. de Oliveira 1144a6e036 Explicitly declare public type of konanArtifacts extension
Because `KonanArtifactContainer` inherits from Gradle's `DefaultPolymorphicDomainObjectContainer`, it inherits its implementation of [`HasPublicType`](https://github.com/gradle/gradle/blob/283a513257628b93a0b092f78385e2b42fec6da3/subprojects/model-core/src/main/java/org/gradle/api/reflect/HasPublicType.java#L29). This default implementation tells Gradle to expose the extension as a `NamedDomainObjectContainer<ElementType>` where `ElementType` is inferred in a best-effort manner. 

This means that any additional members of `KonanArtifactContainer` wouldn't be easily accessible in a Gradle Kotlin build script.

This commit explicitly declares the public extension type to be `KonanArtifactContainer` by using the appropriate [`ExtensionContainer#create` overload](https://docs.gradle.org/current/javadoc/org/gradle/api/plugins/ExtensionContainer.html#create(java.lang.Class,%20java.lang.String,%20java.lang.Class,%20java.lang.Object...)).
2017-11-30 12:58:53 +07:00
Ilya Matveev 917919d27e gradle-plugin: Improve CMake generation test 2017-11-30 12:16:08 +07:00
Ilya Matveev b47f7dcf73 gradle-plugin: Fix CMake generation 2017-11-30 12:16:08 +07:00
Ilya Matveev 4a8d07493c gradle-plugin: Support user jvm args 2017-11-30 12:16:08 +07:00
Ilya Matveev 8d8da0acf2 gradle-plugin: Update compiler downloading path 2017-11-30 12:16:08 +07:00
Svyatoslav Scherbina d745e80135 Implement -produce framework option
It compiles Kotlin code to Objective-C framework
(also importable to Swift)
2017-11-29 12:12:02 +03:00
Svyatoslav Scherbina 6114a5b35c Preserve visibility of classes copied by inliner 2017-11-29 12:12:02 +03:00
Ilya Matveev 7889d13974 stdlib: Support kotlin.math 2017-11-28 19:39:33 +07:00
Ilya Matveev 2227c6c522 stdlib: Implement float/double <-> bits conversion 2017-11-28 19:39:33 +07:00
Aleksey Kladov a033dbf131 gradle-plugin: generate CMake file 2017-11-28 18:46:46 +07:00