Files
kotlin-fork/kotlin-native/performance/KotlinVsSwift/build.gradle
T
Alexander.Likhachev a19bd2ed2e [Build] Migrate most of the build logic from Project.buildDir usage
It's going to be deprecated in Gradle 8.3

There's currently no way to pass a `org.gradle.api.provider.Provider` to the JavaExec.systemProperty or Test.systemProperty. There's a workaround using `org.gradle.process.CommandLineArgumentProvider`, but I intentionally don't rework these calls as Gradle is going to allow passing providers to configure system properties: https://github.com/gradle/gradle/issues/12247#issuecomment-1568427242
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00

63 lines
1.2 KiB
Groovy

buildscript {
apply from: "$rootProject.projectDir/../gradle/kotlinGradlePlugin.gradle"
}
def rootBuildDirectory = rootProject.projectDir
task konanRun {
subprojects.each {
dependsOn it.getTasksByName('konanRun', true)[0]
}
}
task jvmRun {
subprojects.each {
dependsOn it.getTasksByName('jvmRun', true)[0]
}
}
task clean {
subprojects.each {
dependsOn it.getTasksByName('clean', true)[0]
}
delete(layout.buildDirectory)
}
defaultTasks 'konanRun'
task mergeNativeReports {
doLast {
mergeReports(nativeJson)
uploadBenchmarkResultToArtifactory(nativeJson)
}
}
task mergeJvmReports {
doLast {
mergeReports(jvmJson)
uploadBenchmarkResultToArtifactory(jvmJson)
}
}
task jvmJsonReport {
subprojects.each {
dependsOn(it.getTasksByName('jvmJsonReport', true)[0])
}
}
task konanJsonReport {
subprojects.each {
dependsOn(it.getTasksByName('konanJsonReport', true)[0])
}
}
subprojects.each {
it.getTasksByName('jvmJsonReport', true)[0].finalizedBy mergeJvmReports
it.getTasksByName('konanJsonReport', true)[0].finalizedBy mergeNativeReports
}
task ring {
dependsOn 'clean'
dependsOn 'ring:konanRun'
}