From e2b051e2d5e857e8305d149f85e3fe588a32b263 Mon Sep 17 00:00:00 2001 From: Nikolay Igotti Date: Thu, 28 Jun 2018 15:52:00 +0300 Subject: [PATCH] Documentation tweaks. --- FAQ.md | 8 +++++++- README.md | 2 +- RELEASE_NOTES.md | 4 ++-- .../jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt | 4 +++- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/FAQ.md b/FAQ.md index 7b6827e2e8c..3ba1ed46d9b 100644 --- a/FAQ.md +++ b/FAQ.md @@ -16,10 +16,16 @@ Q: How do I create shared library? A: Use `-produce dynamic` compiler switch, or `konanArtifacts { dynamic('foo') {} }` in Gradle. It will produce platform-specific shared object (.so on Linux, .dylib on macOS and .dll on Windows targets) and -C language header, allowing to use all public APIs available in your Kotlin/Native program from C code. +C language header, allowing to use all public APIs available in your Kotlin/Native program from C/C++ code. See `samples/python_extension` as an example of using such shared object to provide a bridge between Python and Kotlin/Native. +Q: How do I create static library or an object file? + +A: Use `-produce static` compiler switch, or `konanArtifacts { static('foo') {} }` in Gradle. +It will produce platform-specific static object (.a library format) and C language header, allowing to +use all public APIs available in your Kotlin/Native program from C/C++ code. + Q: How do I run Kotlin/Native behind corporate proxy? A: As Kotlin/Native need to download platform specific toolchain, you need to specify diff --git a/README.md b/README.md index 1a9d86b38f0..603c6b7bc89 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ 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 9.3 +* on macOS install Xcode 9.4.1 * on Fedora 26+ ```yum install ncurses-compat-libs``` may be needed To compile from sources use following steps: diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 9147b62511e..5c7e97f9880 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -25,7 +25,7 @@ the following platforms: (`-target linux`, default on Linux hosts) * Microsoft Windows x86-64 (tested on Windows 7 and Windows 10), host and target (`-target mingw`, default on Windows hosts) - * Apple iOS (arm64), cross-compiled target (`-target ios`), hosted on macOS + * Apple iOS (armv7 and arm64 devices, x86 simulator), cross-compiled target (`-target ios_arm64`), hosted on macOS * Linux arm32 hardfp, Raspberry Pi, cross-compiled target (`-target raspberrypi`), hosted on Linux * Linux mips big endian, cross-compiled target (`-target mips`), hosted on Linux * Linux mips little endian, cross-compiled target (`-target mipsel`), hosted on Linux @@ -38,7 +38,7 @@ the following platforms: To run _Kotlin/Native_ JDK 8 or Java 9 (JDK) for the host platform has to be installed. -On macOS it also requires Xcode 9.3 or newer to be installed. +On macOS it also requires Xcode 9.4.1 or newer to be installed. The language and library version supported by this EAP release mostly match Kotlin 1.2.60. However, there are certain limitations, see section [Known Limitations](#limitations). diff --git a/backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt b/backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt index ccdb2a70e48..6ad57e4bdc3 100644 --- a/backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt +++ b/backend.native/cli.bc/src/org/jetbrains/kotlin/cli/bc/K2NativeCompilerArguments.kt @@ -75,7 +75,9 @@ class K2NativeCompilerArguments : CommonCompilerArguments() { @Argument(value = "-entry", shortName = "-e", valueDescription = "", description = "Qualified entry point name") var mainPackage: String? = null - @Argument(value = "-produce", shortName = "-p", valueDescription = "{program|dynamic|framework|library|bitcode}", description = "Specify output file kind") + @Argument(value = "-produce", shortName = "-p", + valueDescription = "{program|static|dynamic|framework|library|bitcode}", + description = "Specify output file kind") var produce: String? = null @Argument(value = "-repo", shortName = "-r", valueDescription = "", description = "Library search path")