Make Xcode utils public for gradle integration tests.
This commit is contained in:
committed by
Space Team
parent
239a1a4bab
commit
0ffb370579
+4
-6
@@ -9,6 +9,7 @@ import com.intellij.testFramework.TestDataFile
|
|||||||
import org.jdom.input.SAXBuilder
|
import org.jdom.input.SAXBuilder
|
||||||
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
||||||
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
||||||
|
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
|
||||||
import org.jetbrains.kotlin.gradle.internals.DISABLED_NATIVE_TARGETS_REPORTER_DISABLE_WARNING_PROPERTY_NAME
|
import org.jetbrains.kotlin.gradle.internals.DISABLED_NATIVE_TARGETS_REPORTER_DISABLE_WARNING_PROPERTY_NAME
|
||||||
import org.jetbrains.kotlin.gradle.internals.DISABLED_NATIVE_TARGETS_REPORTER_WARNING_PREFIX
|
import org.jetbrains.kotlin.gradle.internals.DISABLED_NATIVE_TARGETS_REPORTER_WARNING_PREFIX
|
||||||
import org.jetbrains.kotlin.gradle.internals.NO_NATIVE_STDLIB_PROPERTY_WARNING
|
import org.jetbrains.kotlin.gradle.internals.NO_NATIVE_STDLIB_PROPERTY_WARNING
|
||||||
@@ -17,6 +18,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind
|
|||||||
import org.jetbrains.kotlin.gradle.transformProjectWithPluginsDsl
|
import org.jetbrains.kotlin.gradle.transformProjectWithPluginsDsl
|
||||||
import org.jetbrains.kotlin.gradle.util.modify
|
import org.jetbrains.kotlin.gradle.util.modify
|
||||||
import org.jetbrains.kotlin.gradle.util.runProcess
|
import org.jetbrains.kotlin.gradle.util.runProcess
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.Xcode
|
||||||
import org.jetbrains.kotlin.konan.target.CompilerOutputKind
|
import org.jetbrains.kotlin.konan.target.CompilerOutputKind
|
||||||
import org.jetbrains.kotlin.konan.target.HostManager
|
import org.jetbrains.kotlin.konan.target.HostManager
|
||||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||||
@@ -101,6 +103,7 @@ private fun BaseGradleIT.Project.configureSingleNativeTarget(preset: String = Ho
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OptIn(InternalKotlinGradlePluginApi::class)
|
||||||
class GeneralNativeIT : BaseGradleIT() {
|
class GeneralNativeIT : BaseGradleIT() {
|
||||||
|
|
||||||
val nativeHostTargetName = MPPNativeTargets.current
|
val nativeHostTargetName = MPPNativeTargets.current
|
||||||
@@ -373,12 +376,7 @@ class GeneralNativeIT : BaseGradleIT() {
|
|||||||
frameworkPaths.forEach { assertFileExists(it) }
|
frameworkPaths.forEach { assertFileExists(it) }
|
||||||
|
|
||||||
assertTrue(fileInWorkingDir(headerPaths[0]).readText().contains("+ (int32_t)exported"))
|
assertTrue(fileInWorkingDir(headerPaths[0]).readText().contains("+ (int32_t)exported"))
|
||||||
val xcodeVersionString = runProcess(
|
val xcodeMajorVersion = Xcode!!.currentVersion.split(".")[0].toInt()
|
||||||
listOf("/usr/bin/xcrun", "xcodebuild", "-version"),
|
|
||||||
workingDir,
|
|
||||||
System.getenv()
|
|
||||||
).output.lines()[0].removePrefix("Xcode ")
|
|
||||||
val xcodeMajorVersion = xcodeVersionString.split(".")[0].toInt()
|
|
||||||
|
|
||||||
// Check that by default release frameworks have bitcode embedded.
|
// Check that by default release frameworks have bitcode embedded.
|
||||||
withNativeCommandLineArguments(":linkMainReleaseFrameworkIos") { arguments ->
|
withNativeCommandLineArguments(":linkMainReleaseFrameworkIos") { arguments ->
|
||||||
|
|||||||
+6
-6
@@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.utils
|
package org.jetbrains.kotlin.gradle.utils
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
|
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
|
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
|
||||||
import org.jetbrains.kotlin.konan.target.Architecture.ARM32
|
import org.jetbrains.kotlin.konan.target.Architecture.ARM32
|
||||||
@@ -15,16 +16,15 @@ import org.jetbrains.kotlin.konan.target.HostManager
|
|||||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toUpperCaseAsciiOnly
|
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toUpperCaseAsciiOnly
|
||||||
|
|
||||||
|
@InternalKotlinGradlePluginApi
|
||||||
|
val Xcode = XcodeUtils.INSTANCE
|
||||||
|
|
||||||
internal val Xcode = XcodeUtils()
|
@InternalKotlinGradlePluginApi
|
||||||
|
class XcodeUtils private constructor() {
|
||||||
internal class XcodeUtils private constructor() {
|
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private val current: XcodeUtils? =
|
internal val INSTANCE: XcodeUtils? =
|
||||||
if (HostManager.hostIsMac) XcodeUtils() else null
|
if (HostManager.hostIsMac) XcodeUtils() else null
|
||||||
|
|
||||||
operator fun invoke() = current
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val currentVersion: String by lazy {
|
val currentVersion: String by lazy {
|
||||||
|
|||||||
Reference in New Issue
Block a user