Update XCode to 10.2. (#2825)

This commit is contained in:
Nikolay Igotti
2019-03-28 14:26:29 +03:00
committed by GitHub
parent 7971090461
commit 19310d84c6
6 changed files with 46 additions and 18 deletions
+1 -1
View File
@@ -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 10.1
* on macOS install Xcode 10.2
* on Fedora 26+ ```yum install ncurses-compat-libs``` may be needed
To compile from sources use following steps:
@@ -128,6 +128,19 @@ fun runProcess(executor: (Action<in ExecSpec>) -> ExecResult?,
fun runProcess(executor: (Action<in ExecSpec>) -> ExecResult?,
executable: String, vararg args: String) = runProcess(executor, executable, args.toList())
/**
* Creates a new executor service with additional action [actionParameter] executed after the main one.
* The following is an example how to pass an environment parameter
* @code `executor.add(Action { it.environment = mapOf("JAVA_OPTS" to "-verbose:gc") })::execute`
*/
fun ExecutorService.add(actionParameter: Action<in ExecSpec>) = object : ExecutorService {
override fun execute(action: Action<in ExecSpec>): ExecResult? =
this@add.execute(Action {
action.execute(it)
actionParameter.execute(it)
})
}
/**
* Returns Project's process executor
* @see Project.exec
@@ -85,9 +85,20 @@ open class FrameworkTest : DefaultTask() {
}
private fun runTest(testExecutable: Path) {
val target = project.testTarget()
val platform = project.platformManager().platform(target)
val configs = platform.configurables as AppleConfigurables
val swiftPlatform = when (target) {
KonanTarget.IOS_X64 -> "iphonesimulator"
KonanTarget.IOS_ARM32, KonanTarget.IOS_ARM64 -> "iphoneos"
KonanTarget.MACOS_X64 -> "macosx"
else -> throw IllegalStateException("Test target $target is not supported")
}
val libraryPath = configs.absoluteTargetToolchain + "/usr/lib/swift/$swiftPlatform"
val executor = (project.convention.plugins["executor"] as? ExecutorService)
?: throw RuntimeException("Executor wasn't found")
val (stdOut, stdErr, exitCode) = runProcess(executor = executor::execute,
val (stdOut, stdErr, exitCode) = runProcess(
executor = executor.add(Action { it.environment = mapOf("DYLD_LIBRARY_PATH" to libraryPath) })::execute,
executable = testExecutable.toString())
println("""
+3 -2
View File
@@ -21,8 +21,9 @@ remoteRoot=konan_tests
kotlinCompilerRepo=https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_dev_CompilerAllPlugins),number:1.3.40-dev-937,branch:default:true,pinned:true/artifacts/content/maven
kotlinVersion=1.3.40-dev-937
testKotlinVersion=1.3.40-dev-937
sharedRepo=https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_KotlinNativeShared_BuildAndTest),number:1.0-dev-16,branch:default:true,pinned:true/artifacts/content/maven
sharedVersion=1.0-dev-16
# See https://teamcity.jetbrains.com/viewType.html?buildTypeId=Kotlin_KotlinNativeShared_BuildAndTest.
sharedRepo=https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_KotlinNativeShared_BuildAndTest),number:1.0-dev-23,branch:default:true,pinned:true/artifacts/content/maven
sharedVersion=1.0-dev-23
konanVersion=1.3.0
org.gradle.jvmargs='-Dfile.encoding=UTF-8'
org.gradle.workers.max=4
+15 -13
View File
@@ -25,6 +25,8 @@ dependencyProfiles = default alt
airplaneMode = false
# if true, ignores Xcode version check.
ignoreXcodeVersionCheck = false
# Disabled until decided better mechanism.
# useFixedXcodeVersion = 10.2
downloadingAttempts = 10
downloadingAttemptIntervalMs = 3000
@@ -35,11 +37,11 @@ llvmVersion = 6.0.1
# Mac OS X.
llvmHome.macos_x64 = clang-llvm-6.0.1-darwin-macos
targetToolchain.macos_x64 = target-toolchain-8-macos_x64
targetToolchain.macos_x64 = target-toolchain-9-macos_x64
libffiDir.macos_x64 = libffi-3.2.1-3-darwin-macos
arch.macos_x64 = x86_64
targetSysRoot.macos_x64 = target-sysroot-8-macos_x64
targetSysRoot.macos_x64 = target-sysroot-9-macos_x64
llvmLtoFlags.macos_x64 =
llvmLtoOptFlags.macos_x64 = -O3 -function-sections
llvmLtoNooptFlags.macos_x64 = -O1
@@ -56,25 +58,25 @@ dependencies.macos_x64 = \
libffi-3.2.1-3-darwin-macos \
clang-llvm-6.0.1-darwin-macos
target-sysroot-8-macos_x64.default = \
target-sysroot-9-macos_x64.default = \
remote:internal
target-toolchain-8-macos_x64.default = \
target-toolchain-9-macos_x64.default = \
remote:internal
# Apple's 32-bit iOS.
targetToolchain.macos_x64-ios_arm32 = target-toolchain-8-macos_x64
targetToolchain.macos_x64-ios_arm32 = target-toolchain-9-macos_x64
dependencies.macos_x64-ios_arm32 = \
libffi-3.2.1-3-darwin-macos \
clang-llvm-6.0.1-darwin-macos
target-sysroot-8-ios_arm32.default = \
target-sysroot-9-ios_arm32.default = \
remote:internal
arch.ios_arm32 = armv7
entrySelector.ios_arm32 = -alias _Konan_main _main
# Shared with 64-bit version.
targetSysRoot.ios_arm32 = target-sysroot-8-ios_arm64
targetSysRoot.ios_arm32 = target-sysroot-9-ios_arm64
llvmLtoFlags.ios_arm32 =
llvmLtoOptFlags.ios_arm32 = -O3 -function-sections
linkerNoDebugFlags.ios_arm32 = -S
@@ -88,17 +90,17 @@ osVersionMinFlagClang.ios_arm32 = -miphoneos-version-min
osVersionMin.ios_arm32 = 9.0
# Apple's 64-bit iOS.
targetToolchain.macos_x64-ios_arm64 = target-toolchain-8-macos_x64
targetToolchain.macos_x64-ios_arm64 = target-toolchain-9-macos_x64
dependencies.macos_x64-ios_arm64 = \
libffi-3.2.1-3-darwin-macos \
clang-llvm-6.0.1-darwin-macos
target-sysroot-8-ios_arm64.default = \
target-sysroot-9-ios_arm64.default = \
remote:internal
arch.ios_arm64 = arm64
entrySelector.ios_arm64 = -alias _Konan_main _main
targetSysRoot.ios_arm64 = target-sysroot-8-ios_arm64
targetSysRoot.ios_arm64 = target-sysroot-9-ios_arm64
llvmLtoFlags.ios_arm64 =
llvmLtoOptFlags.ios_arm64 = -O3 -function-sections
linkerNoDebugFlags.ios_arm64 = -S
@@ -112,17 +114,17 @@ osVersionMinFlagClang.ios_arm64 = -miphoneos-version-min
osVersionMin.ios_arm64 = 9.0
# Apple's iOS simulator.
targetToolchain.macos_x64-ios_x64 = target-toolchain-8-macos_x64
targetToolchain.macos_x64-ios_x64 = target-toolchain-9-macos_x64
dependencies.macos_x64-ios_x64 = \
libffi-3.2.1-3-darwin-macos \
clang-llvm-6.0.1-darwin-macos
target-sysroot-8-ios_x64.default = \
target-sysroot-9-ios_x64.default = \
remote:internal
arch.ios_x64 = x86_64
entrySelector.ios_x64 = -alias _Konan_main _main
targetSysRoot.ios_x64 = target-sysroot-8-ios_x64
targetSysRoot.ios_x64 = target-sysroot-9-ios_x64
llvmLtoFlags.ios_x64 =
llvmLtoOptFlags.ios_x64 = -O3 -function-sections
llvmLtoNooptFlags.ios_x64 = -O1
+2 -1
View File
@@ -1,6 +1,7 @@
#!/usr/bin/env bash
KONAN_TOOLCHAIN_VERSION=8
# "brew install coreutils" for grealpath.
KONAN_TOOLCHAIN_VERSION=9
SDKS="macosx iphoneos iphonesimulator"
TARBALL_macosx=target-sysroot-$KONAN_TOOLCHAIN_VERSION-macos_x64
TARBALL_iphoneos=target-sysroot-$KONAN_TOOLCHAIN_VERSION-ios_arm64