xref: /aosp_15_r20/external/kotlinx.coroutines/benchmarks/build.gradle.kts (revision 7a7160fed73afa6648ef8aa100d4a336fe921d9a)
1 @file:Suppress("UnstableApiUsage")
2 
3 import org.jetbrains.kotlin.gradle.tasks.*
4 import org.jetbrains.kotlin.gradle.dsl.JvmTarget
5 
<lambda>null6 plugins {
7     id("com.github.johnrengelman.shadow")
8     id("me.champeau.jmh")
9 }
10 
<lambda>null11 repositories {
12     maven("https://repo.typesafe.com/typesafe/releases/")
13 }
14 
<lambda>null15 java {
16     sourceCompatibility = JavaVersion.VERSION_1_8
17     targetCompatibility = JavaVersion.VERSION_1_8
18 }
19 
<lambda>null20 tasks.named<KotlinCompile>("compileJmhKotlin") {
21     compilerOptions {
22         jvmTarget = JvmTarget.JVM_1_8
23         freeCompilerArgs.add("-Xjvm-default=all")
24     }
25 }
26 
<lambda>null27 val jmhJarTask = tasks.named<Jar>("jmhJar") {
28     archiveBaseName = "benchmarks"
29     archiveClassifier = null
30     archiveVersion = null
31     archiveVersion.convention(null as String?)
32     destinationDirectory = rootDir
33 }
34 
<lambda>null35 tasks {
36     // For some reason the DuplicatesStrategy from jmh is not enough
37     // and errors with duplicates appear unless I force it to WARN only:
38     withType<Copy> {
39         duplicatesStrategy = DuplicatesStrategy.WARN
40     }
41 
42     build {
43         dependsOn(jmhJarTask)
44     }
45 }
46 
<lambda>null47 dependencies {
48     implementation("org.openjdk.jmh:jmh-core:1.35")
49     implementation("io.projectreactor:reactor-core:${version("reactor")}")
50     implementation("io.reactivex.rxjava2:rxjava:2.1.9")
51     implementation("com.github.akarnokd:rxjava2-extensions:0.20.8")
52 
53     implementation("com.typesafe.akka:akka-actor_2.12:2.5.0")
54     implementation(project(":kotlinx-coroutines-core"))
55     implementation(project(":kotlinx-coroutines-debug"))
56     implementation(project(":kotlinx-coroutines-reactive"))
57 
58     // add jmh dependency on main
59     "jmhImplementation"(sourceSets.main.get().runtimeClasspath)
60 }
61