Page MenuHomeSolus

Initial commit of kotlin-native
ClosedPublic

Authored by serebit on Sat, Oct 26, 11:42 PM.

Details

Summary

The inclusion of the kotlin-native compiler toolchain resolves T8438. This distribution of the toolchain includes the following targets:

  • Android arm32 and arm64
  • Linux arm32_hfp, arm64, mips32, mipsel32, x64, and wasm32
  • WebAssembly (wasm32)
Test Plan

Compiled and ran a hello world program using the linux_x64 target, and generated a klib interop file for libusb using the cinterop tool.

Diff Detail

Repository
R4853 kotlin-native
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

serebit created this revision.Sat, Oct 26, 11:42 PM
serebit requested review of this revision.Sat, Oct 26, 11:42 PM
serebit edited the summary of this revision. (Show Details)Sat, Oct 26, 11:44 PM
serebit added a project: Software.
serebit edited the test plan for this revision. (Show Details)
serebit edited the summary of this revision. (Show Details)
serebit edited the test plan for this revision. (Show Details)

Of note:

  • The buildscript uses the project's provided Gradle wrapper, and thus does not depend on the repository's version of Gradle. The current version of Gradle in the repository doesn't work correctly with this project, since it's so far behind (3.5.0 -> 5.5.0). If Solus's version of Gradle is updated to a more recent version, this requirement can be lifted.
  • Networking is required to allow Gradle to retrieve the wrapper and the project's JVM dependencies.
  • The compiler produces standalone executables, but requires a JDK to work correctly. It only requires JDK 8 or above, no specific versions.
  • There are additional experimental targets that I left disabled.
DataDrake accepted this revision.Thu, Nov 14, 7:47 PM
DataDrake added a subscriber: DataDrake.

LGTM. Thanks!

This revision is now accepted and ready to land.Thu, Nov 14, 7:47 PM
This revision was automatically updated to reflect the committed changes.