From 53645bce2b0e71da332b8883f149c89facc39b19 Mon Sep 17 00:00:00 2001 From: Timofey Solonin Date: Fri, 25 Aug 2023 12:53:59 +0200 Subject: [PATCH] [MPP] Specify missing target for arm macOS ^KT-61439 --- .../org/jetbrains/kotlin/gradle/CompilerOptionsIT.kt | 3 +++ .../org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt | 4 +++- .../native-binaries/groovy-dsl/build.gradle | 3 ++- .../native-binaries/kotlin-dsl/build.gradle.kts | 3 ++- .../new-mpp-lib-and-app/sample-lib/build.gradle | 2 ++ .../sample-lib/src/macosArm64Main/kotlin/Main.kt | 10 ++++++++++ .../resources/macosArm64MainResource.txt | 1 + 7 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/kotlin/Main.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/resources/macosArm64MainResource.txt diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CompilerOptionsIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CompilerOptionsIT.kt index b0b670122e8..c97d1214591 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CompilerOptionsIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CompilerOptionsIT.kt @@ -242,6 +242,9 @@ internal class CompilerOptionsIT : KGPBaseTest() { | macos64Main { | languageSettings.optIn("my.custom.OptInAnnotation") | } + | macosArm64Main { + | languageSettings.optIn("my.custom.OptInAnnotation") + | } | } |} | diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt index ff02d03b795..f2097d2fc23 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt @@ -777,6 +777,7 @@ open class NewMultiplatformIT : BaseGradleIT() { |kotlin.sourceSets.nativeMain.${initialSetupForSourceSets} |kotlin.sourceSets.linux64Main.${initialSetupForSourceSets} |kotlin.sourceSets.macos64Main.${initialSetupForSourceSets} + |kotlin.sourceSets.macosArm64Main.${initialSetupForSourceSets} |kotlin.sourceSets.jvm6Main.${initialSetupForSourceSets} |kotlin.sourceSets.mingw64Main.${initialSetupForSourceSets} |kotlin.sourceSets.nodeJsMain.${initialSetupForSourceSets} @@ -795,6 +796,7 @@ open class NewMultiplatformIT : BaseGradleIT() { |kotlin.sourceSets.nativeMain.${sourceSetConfigurationChange} |kotlin.sourceSets.linux64Main.${sourceSetConfigurationChange} |kotlin.sourceSets.macos64Main.${sourceSetConfigurationChange} + |kotlin.sourceSets.macosArm64Main.${sourceSetConfigurationChange} |kotlin.sourceSets.jvm6Main.${sourceSetConfigurationChange} |kotlin.sourceSets.mingw64Main.${sourceSetConfigurationChange} |kotlin.sourceSets.nodeJsMain.${sourceSetConfigurationChange} @@ -1426,7 +1428,7 @@ open class NewMultiplatformIT : BaseGradleIT() { } val expectedDefaultSourceSets = listOf( - "jvm6", "nodeJs", "mingw64", "linux64", "macos64", "wasmJs" + "jvm6", "nodeJs", "mingw64", "linux64", "macos64", "macosArm64", "wasmJs" ).flatMapTo(mutableSetOf()) { target -> listOf("main", "test").map { compilation -> Triple( diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/groovy-dsl/build.gradle b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/groovy-dsl/build.gradle index a9708cfbf6f..025b310862a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/groovy-dsl/build.gradle +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/groovy-dsl/build.gradle @@ -38,10 +38,11 @@ kotlin { targets { macosX64("macos64") + macosArm64("macosArm64") linuxX64("linux64") mingwX64("mingw64") - configure([findByName('macos64'), findByName('linux64'), findByName('mingw64')]) { + configure([findByName('macos64'), findByName('macosArm64'), findByName('linux64'), findByName('mingw64')]) { compilations.all { kotlinOptions.verbose = true } compilations.test.kotlinOptions.freeCompilerArgs += "-nowarn" binaries { diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/kotlin-dsl/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/kotlin-dsl/build.gradle.kts index 51da0be47a8..868aaf1299a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/kotlin-dsl/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-binaries/kotlin-dsl/build.gradle.kts @@ -27,10 +27,11 @@ kotlin { } val macos = macosX64("macos64") + val macosArm = macosArm64("macosArm64") val linux = linuxX64("linux64") val windows = mingwX64("mingw64") - configure(listOf(macos, linux, windows)) { + configure(listOf(macos, macosArm, linux, windows)) { compilations.all { kotlinOptions.verbose = true } compilations["test"].kotlinOptions.freeCompilerArgs += "-nowarn" binaries { diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/build.gradle b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/build.gradle index 27d1cf00e8d..33d3d74c215 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/build.gradle +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/build.gradle @@ -38,6 +38,7 @@ kotlin { fromPreset(presets.linuxX64, 'linux64') fromPreset(presets.mingwX64, 'mingw64') fromPreset(presets.macosX64, 'macos64') + fromPreset(presets.macosArm64, 'macosArm64') // Check the DSL constructs in the Groovy DSL: fromPreset(presets.jvm, 'jvm6') { @@ -95,6 +96,7 @@ kotlin { nativeMain { dependsOn commonMain } linux64Main { dependsOn nativeMain } macos64Main { dependsOn nativeMain } + macosArm64Main { dependsOn nativeMain } } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/kotlin/Main.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/kotlin/Main.kt new file mode 100644 index 00000000000..ad8b9d82c23 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/kotlin/Main.kt @@ -0,0 +1,10 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package com.example.lib + +actual fun expectedFun(): Unit { + id(123) +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/resources/macosArm64MainResource.txt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/resources/macosArm64MainResource.txt new file mode 100644 index 00000000000..d2c4f080510 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/new-mpp-lib-and-app/sample-lib/src/macosArm64Main/resources/macosArm64MainResource.txt @@ -0,0 +1 @@ +resource \ No newline at end of file