xref: /aosp_15_r20/external/perfmark/java9/build.gradle.kts (revision 27e8546d0ef5f99cf83d5252272c7dd38d18d29a)
1 import net.ltgt.gradle.errorprone.errorprone
2 
<lambda>null3 plugins {
4     id("io.github.reyerizo.gradle.jcstress")
5 }
6 
<lambda>null7 buildscript {
8     extra.apply{
9         set("moduleName", "io.perfmark.javanine")
10     }
11 }
12 
13 val jdkVersion = JavaVersion.VERSION_1_9
14 
15 description = "PerfMark Java9 API"
16 
<lambda>null17 sourceSets {
18     create("jmh")
19 }
20 
<lambda>null21 val jmhImplementation by configurations.getting {
22     extendsFrom(configurations.implementation.get())
23 }
24 
<lambda>null25 val jmhAnnotationProcessor by configurations.getting {
26     extendsFrom(configurations.annotationProcessor.get())
27 }
28 
<lambda>null29 dependencies {
30     implementation(project(":perfmark-impl"))
31     compileOnly(libs.jsr305)
32 
33     testImplementation(project(":perfmark-api"))
34     testImplementation(project(":perfmark-testing"))
35     jcstressImplementation(project(":perfmark-impl"))
36 
37     jmhImplementation(project(":perfmark-api"))
38     jmhImplementation(project(":perfmark-impl"))
39     jmhImplementation(project(":perfmark-java9"))
40     jmhImplementation(project(":perfmark-testing"))
41     jmhImplementation(libs.junit)
42     jmhImplementation(libs.jmhcore)
43     jmhAnnotationProcessor(libs.jmhanno)
44 }
45 
<lambda>null46 tasks.named<JavaCompile>("compileJava") {
47     sourceCompatibility = jdkVersion.toString()
48     targetCompatibility = jdkVersion.toString()
49 }
50 
<lambda>null51 tasks.named<JavaCompile>("compileJmhJava") {
52     sourceCompatibility = JavaVersion.VERSION_11.toString()
53     targetCompatibility = JavaVersion.VERSION_11.toString()
54     options.errorprone.excludedPaths.set(".*/build/generated/sources/annotationProcessor/.*")
55 
56 }
57 
<lambda>null58 tasks.register<Test>("jmh") {
59     description = "Runs integration tests."
60     group = "stress"
61 
62     testClassesDirs = sourceSets["jmh"].output.classesDirs
63     classpath = sourceSets["jmh"].runtimeClasspath
64 
65     javaLauncher.set(javaToolchains.launcherFor({
66         languageVersion.set(JavaLanguageVersion.of("11"))
67     }))
68 }
69 
70 
<lambda>null71 tasks.named<Jar>("jar") {
72     exclude("io/perfmark/java9/Internal*")
73 }
74 
<lambda>null75 tasks.named<Javadoc>("javadoc") {
76     exclude("io/perfmark/java9/**")
77 }
78 
79 //  ./gradlew --no-daemon clean :perfmark-java9:jcstress
<lambda>null80 jcstress {
81     jcstressDependency = "org.openjdk.jcstress:jcstress-core:0.5"
82     // mode "tough"
83     deoptRatio = "2"
84 }
85 
<lambda>null86 tasks.named<JavaCompile>("compileJcstressJava") {
87     options.errorprone.excludedPaths.set(".*/build/generated/sources/annotationProcessor/.*")
88 }
89