Unverified Commit decca00f authored by Ilya Ryzhenkov's avatar Ilya Ryzhenkov Committed by GitHub

Avoid sharing folders for build outputs to enable proper up-to-date checks and...

Avoid sharing folders for build outputs to enable proper up-to-date checks and use of gradle 8.1.1 (#717)
parent 328d5e56
...@@ -13,8 +13,8 @@ plugins { ...@@ -13,8 +13,8 @@ plugins {
id("org.jetbrains.dokka") version "1.7.20" id("org.jetbrains.dokka") version "1.7.20"
`maven-publish` `maven-publish`
signing signing
id("org.gradle.crypto.checksum") version "1.1.0" id("org.gradle.crypto.checksum") version "1.4.0"
id("de.undercouch.download") version "4.1.2" id("de.undercouch.download") version "5.4.0"
} }
val coroutinesVersion = "1.5.2" val coroutinesVersion = "1.5.2"
...@@ -148,6 +148,9 @@ fun compileNativeBridgesTask(os: OS, arch: Arch, isArm64Simulator: Boolean): Tas ...@@ -148,6 +148,9 @@ fun compileNativeBridgesTask(os: OS, arch: Arch, isArm64Simulator: Boolean): Tas
compiler.set(compilerForTarget(os, arch)) compiler.set(compilerForTarget(os, arch))
buildTargetOS.set(os) buildTargetOS.set(os)
if (isArm64Simulator) {
buildSuffix.set("sim")
}
buildTargetArch.set(arch) buildTargetArch.set(arch)
buildVariant.set(buildType) buildVariant.set(buildType)
...@@ -635,12 +638,12 @@ fun skiaStaticLibraries(skiaDir: String, targetString: String): List<String> { ...@@ -635,12 +638,12 @@ fun skiaStaticLibraries(skiaDir: String, targetString: String): List<String> {
val allJvmRuntimeJars = mutableMapOf<Pair<OS, Arch>, TaskProvider<Jar>>() val allJvmRuntimeJars = mutableMapOf<Pair<OS, Arch>, TaskProvider<Jar>>()
val skikoAwtJar by project.tasks.registering(Jar::class) { val skikoAwtJarForTests by project.tasks.registering(Jar::class) {
archiveBaseName.set("skiko-awt") archiveBaseName.set("skiko-awt-test")
from(kotlin.jvm("awt").compilations["main"].output.allOutputs) from(kotlin.jvm("awt").compilations["main"].output.allOutputs)
} }
val skikoAwtRuntimeJar = createSkikoJvmJarTask(targetOs, targetArch, skikoAwtJar) val skikoAwtRuntimeJarForTests = createSkikoJvmJarTask(targetOs, targetArch, skikoAwtJarForTests)
val skikoRuntimeDirForTests = skikoRuntimeDirForTestsTask(targetOs, targetArch, skikoAwtJar, skikoAwtRuntimeJar) val skikoRuntimeDirForTests = skikoRuntimeDirForTestsTask(targetOs, targetArch, skikoAwtJarForTests, skikoAwtRuntimeJarForTests)
val skikoJarForTests = skikoJarForTestsTask(skikoRuntimeDirForTests) val skikoJarForTests = skikoJarForTestsTask(skikoRuntimeDirForTests)
if (supportAndroid) { if (supportAndroid) {
...@@ -814,6 +817,7 @@ fun createCompileJvmBindingsTask( ...@@ -814,6 +817,7 @@ fun createCompileJvmBindingsTask(
dependsOn(skiaJvmBindingsDir) dependsOn(skiaJvmBindingsDir)
buildTargetOS.set(targetOs) buildTargetOS.set(targetOs)
buildTargetArch.set(targetArch) buildTargetArch.set(targetArch)
buildSuffix.set("jvm")
buildVariant.set(buildType) buildVariant.set(buildType)
val srcDirs = projectDirs( val srcDirs = projectDirs(
...@@ -918,6 +922,7 @@ fun createLinkJvmBindings( ...@@ -918,6 +922,7 @@ fun createLinkJvmBindings(
val libNamePrefix = if (targetOs.isWindows) "skiko" else "libskiko" val libNamePrefix = if (targetOs.isWindows) "skiko" else "libskiko"
libOutputFileName.set("$libNamePrefix-${targetOs.id}-${targetArch.id}${targetOs.dynamicLibExt}") libOutputFileName.set("$libNamePrefix-${targetOs.id}-${targetArch.id}${targetOs.dynamicLibExt}")
buildTargetOS.set(targetOs) buildTargetOS.set(targetOs)
buildSuffix.set("jvm")
buildTargetArch.set(targetArch) buildTargetArch.set(targetArch)
buildVariant.set(buildType) buildVariant.set(buildType)
linker.set(linkerForTarget(targetOs, targetArch)) linker.set(linkerForTarget(targetOs, targetArch))
......
...@@ -23,6 +23,9 @@ abstract class AbstractSkikoNativeToolTask : DefaultTask() { ...@@ -23,6 +23,9 @@ abstract class AbstractSkikoNativeToolTask : DefaultTask() {
@get:Input @get:Input
abstract val buildTargetOS: Property<OS> abstract val buildTargetOS: Property<OS>
@get:Input @get:Optional
abstract val buildSuffix: Property<String>
@get:Input @get:Input
abstract val buildTargetArch: Property<Arch> abstract val buildTargetArch: Property<Arch>
...@@ -42,8 +45,9 @@ abstract class AbstractSkikoNativeToolTask : DefaultTask() { ...@@ -42,8 +45,9 @@ abstract class AbstractSkikoNativeToolTask : DefaultTask() {
project.objects.directoryProperty().apply { project.objects.directoryProperty().apply {
set( set(
project.layout.buildDirectory.map { project.layout.buildDirectory.map {
val suffix = "${buildVariant.get().id}-${buildTargetOS.get().id}-${buildTargetArch.get().id}" val suffix = if (buildSuffix.orNull != null) "-${buildSuffix.get()}" else ""
it.dir("out/$outDirNameForTool/$suffix") val folder = "${buildVariant.get().id}-${buildTargetOS.get().id}$suffix-${buildTargetArch.get().id}"
it.dir("out/$outDirNameForTool/$folder")
} }
) )
} }
......
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment