From 99b980e76d5e3d5329af2c345e3129d3055fe294 Mon Sep 17 00:00:00 2001 From: Edoardo Luppi Date: Sat, 29 Mar 2025 23:43:56 +0100 Subject: [PATCH 1/2] build: clean up the main build script Set LV to 2.1, and restore the 1.8 JVM target. --- build.gradle.kts | 16 +++++----------- gradle.properties | 18 ++++++++++++------ 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 500703d..9a7a9fe 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,9 +1,5 @@ -@file:OptIn(ExperimentalKotlinGradlePluginApi::class) - import io.github.petertrr.configurePublishing import io.github.petertrr.ext.booleanProperty -import io.gitlab.arturbosch.detekt.Detekt -import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.dsl.KotlinVersion @@ -26,8 +22,8 @@ kotlin { explicitApi() compilerOptions { - apiVersion = KotlinVersion.KOTLIN_1_9 - languageVersion = KotlinVersion.KOTLIN_1_9 + apiVersion = KotlinVersion.KOTLIN_2_1 + languageVersion = KotlinVersion.KOTLIN_2_1 } jvm { @@ -35,7 +31,7 @@ kotlin { compileTaskProvider.configure { compilerOptions { // Minimum bytecode level is 52 - jvmTarget = JvmTarget.JVM_11 + jvmTarget = JvmTarget.JVM_1_8 // Output interfaces with default methods freeCompilerArgs.addAll( @@ -105,9 +101,7 @@ detekt { } tasks { - withType { - named("check") { - dependsOn(this@withType) - } + check { + dependsOn(detekt) } } diff --git a/gradle.properties b/gradle.properties index b8732a4..043e625 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,12 @@ -kotlin.code.style=official -org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -org.gradle.caching=true -# https://kotlinlang.org/docs/whatsnew19.html#preview-of-gradle-configuration-cache -org.gradle.configuration-cache=false -org.gradle.parallel=true \ No newline at end of file +######################### +# Gradle settings +######################### +org.gradle.jvmargs = -Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +org.gradle.parallel = true +org.gradle.caching = true +org.gradle.configuration-cache = false + +######################### +# Kotlin settings +######################### +kotlin.code.style = official From 36f80c829f98bec4b4003951fbf10fb565f69634 Mon Sep 17 00:00:00 2001 From: Edoardo Luppi Date: Sun, 30 Mar 2025 16:29:01 +0200 Subject: [PATCH 2/2] build: enable all supported native targets --- build.gradle.kts | 29 +++++++++++++++++++++++++++-- gradle.properties | 3 +++ 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 9a7a9fe..48cbe09 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -77,11 +77,36 @@ kotlin { nodejs() } + // Tier 1 + macosX64() + macosArm64() + iosSimulatorArm64() + iosX64() + iosArm64() + + // Tier 2 linuxX64() linuxArm64() + watchosSimulatorArm64() + watchosX64() + watchosArm32() + watchosArm64() + tvosSimulatorArm64() + tvosX64() + tvosArm64() + + // Tier 3 mingwX64() - macosX64() - macosArm64() + androidNativeArm32() + androidNativeArm64() + androidNativeX86() + androidNativeX64() + watchosDeviceArm64() + + // Deprecated. + // Should follow the same route as official Kotlin libraries + @Suppress("DEPRECATION") + linuxArm32Hfp() sourceSets { commonTest { diff --git a/gradle.properties b/gradle.properties index 043e625..d9742d7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -10,3 +10,6 @@ org.gradle.configuration-cache = false # Kotlin settings ######################### kotlin.code.style = official + +# Kotlin/Native +kotlin.native.enableKlibsCrossCompilation = true