[Gradle] Fix embedAndSign failire when signing is disable
^KT-50837 Verification Pending
This commit is contained in:
committed by
Space Team
parent
322799f823
commit
5700212119
+32
@@ -138,6 +138,38 @@ class AppleFrameworkIT : KGPBaseTest() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DisplayName("EmbedAnsSign executes normally when signing is disabled")
|
||||||
|
@OptIn(EnvironmentalVariablesOverride::class)
|
||||||
|
// We need to use Gradle 7.2 here because of the issue https://github.com/gradle/gradle/issues/13957
|
||||||
|
@GradleTestVersions(minVersion = TestVersions.Gradle.G_7_2)
|
||||||
|
@GradleAndroidTest
|
||||||
|
fun testEmbedAnsSignExecutionWithoutSigning(
|
||||||
|
gradleVersion: GradleVersion,
|
||||||
|
agpVersion: String,
|
||||||
|
jdkProvider: JdkVersions.ProvidedJdk,
|
||||||
|
) {
|
||||||
|
|
||||||
|
nativeProject(
|
||||||
|
"sharedAppleFramework",
|
||||||
|
gradleVersion,
|
||||||
|
buildJdk = jdkProvider.location,
|
||||||
|
buildOptions = defaultBuildOptions.copy(
|
||||||
|
androidVersion = agpVersion
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
val environmentVariables = mapOf(
|
||||||
|
"CONFIGURATION" to "debug",
|
||||||
|
"SDK_NAME" to "iphoneos",
|
||||||
|
"ARCHS" to "arm64",
|
||||||
|
"TARGET_BUILD_DIR" to projectPath.absolutePathString(),
|
||||||
|
"FRAMEWORKS_FOLDER_PATH" to "build/xcode-derived"
|
||||||
|
)
|
||||||
|
build(":shared:embedAndSignAppleFrameworkForXcode", environmentVariables = EnvironmentalVariables(environmentVariables)) {
|
||||||
|
assertDirectoryInProjectExists("build/xcode-derived/sdk.framework")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@DisplayName("embedAndSignAppleFrameworkForXcode fail")
|
@DisplayName("embedAndSignAppleFrameworkForXcode fail")
|
||||||
@GradleAndroidTest
|
@GradleAndroidTest
|
||||||
// We need to use Gradle 7.2 here because of the issue https://github.com/gradle/gradle/issues/13957
|
// We need to use Gradle 7.2 here because of the issue https://github.com/gradle/gradle/issues/13957
|
||||||
|
|||||||
+11
-7
@@ -183,7 +183,9 @@ internal fun Project.registerEmbedAndSignAppleFrameworkTask(framework: Framework
|
|||||||
property("type", envBuildType)
|
property("type", envBuildType)
|
||||||
property("targets", envTargets)
|
property("targets", envTargets)
|
||||||
property("embeddedFrameworksDir", envEmbeddedFrameworksDir)
|
property("embeddedFrameworksDir", envEmbeddedFrameworksDir)
|
||||||
property("sign", envSign)
|
if (envSign != null) {
|
||||||
|
property("sign", envSign)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -194,12 +196,14 @@ internal fun Project.registerEmbedAndSignAppleFrameworkTask(framework: Framework
|
|||||||
task.dependsOn(assembleTask)
|
task.dependsOn(assembleTask)
|
||||||
task.files = files(File(appleFrameworkDir(envFrameworkSearchDir), framework.outputFile.name))
|
task.files = files(File(appleFrameworkDir(envFrameworkSearchDir), framework.outputFile.name))
|
||||||
task.destDir = envEmbeddedFrameworksDir
|
task.destDir = envEmbeddedFrameworksDir
|
||||||
if (envSign != null) task.doLast {
|
if (envSign != null) {
|
||||||
val binary = envEmbeddedFrameworksDir
|
task.doLast {
|
||||||
.resolve(framework.outputFile.name)
|
val binary = envEmbeddedFrameworksDir
|
||||||
.resolve(framework.outputFile.nameWithoutExtension)
|
.resolve(framework.outputFile.name)
|
||||||
exec {
|
.resolve(framework.outputFile.nameWithoutExtension)
|
||||||
it.commandLine("codesign", "--force", "--sign", envSign, "--", binary)
|
exec {
|
||||||
|
it.commandLine("codesign", "--force", "--sign", envSign, "--", binary)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user