diff options
author | Oleg Shaldybin <olegsh@google.com> | 2023-06-05 17:55:55 +0000 |
---|---|---|
committer | Oleg Shaldybin <olegsh@google.com> | 2023-06-15 20:54:42 +0000 |
commit | 9d6c9c0f4476fc5369be31e1c710ff898bc497fd (patch) | |
tree | 248e54a31421fdcdebfaf7e83aace32f7bc8a8ad /java9/build.gradle.kts | |
parent | 68ac043b69bd19a8c64348357861b1df81c627b3 (diff) | |
download | perfmark-9d6c9c0f4476fc5369be31e1c710ff898bc497fd.tar.gz |
Import perfmark v-0.26
Test: n/a
Change-Id: I40b60666382659bb11c80cadbc1fa3f860508320
Diffstat (limited to 'java9/build.gradle.kts')
-rw-r--r-- | java9/build.gradle.kts | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/java9/build.gradle.kts b/java9/build.gradle.kts new file mode 100644 index 0000000..5a163a4 --- /dev/null +++ b/java9/build.gradle.kts @@ -0,0 +1,88 @@ +import net.ltgt.gradle.errorprone.errorprone + +plugins { + id("io.github.reyerizo.gradle.jcstress") +} + +buildscript { + extra.apply{ + set("moduleName", "io.perfmark.javanine") + } +} + +val jdkVersion = JavaVersion.VERSION_1_9 + +description = "PerfMark Java9 API" + +sourceSets { + create("jmh") +} + +val jmhImplementation by configurations.getting { + extendsFrom(configurations.implementation.get()) +} + +val jmhAnnotationProcessor by configurations.getting { + extendsFrom(configurations.annotationProcessor.get()) +} + +dependencies { + implementation(project(":perfmark-impl")) + compileOnly(libs.jsr305) + + testImplementation(project(":perfmark-api")) + testImplementation(project(":perfmark-testing")) + jcstressImplementation(project(":perfmark-impl")) + + jmhImplementation(project(":perfmark-api")) + jmhImplementation(project(":perfmark-impl")) + jmhImplementation(project(":perfmark-java9")) + jmhImplementation(project(":perfmark-testing")) + jmhImplementation(libs.junit) + jmhImplementation(libs.jmhcore) + jmhAnnotationProcessor(libs.jmhanno) +} + +tasks.named<JavaCompile>("compileJava") { + sourceCompatibility = jdkVersion.toString() + targetCompatibility = jdkVersion.toString() +} + +tasks.named<JavaCompile>("compileJmhJava") { + sourceCompatibility = JavaVersion.VERSION_11.toString() + targetCompatibility = JavaVersion.VERSION_11.toString() + options.errorprone.excludedPaths.set(".*/build/generated/sources/annotationProcessor/.*") + +} + +tasks.register<Test>("jmh") { + description = "Runs integration tests." + group = "stress" + + testClassesDirs = sourceSets["jmh"].output.classesDirs + classpath = sourceSets["jmh"].runtimeClasspath + + javaLauncher.set(javaToolchains.launcherFor({ + languageVersion.set(JavaLanguageVersion.of("11")) + })) +} + + +tasks.named<Jar>("jar") { + exclude("io/perfmark/java9/Internal*") +} + +tasks.named<Javadoc>("javadoc") { + exclude("io/perfmark/java9/**") +} + +// ./gradlew --no-daemon clean :perfmark-java9:jcstress +jcstress { + jcstressDependency = "org.openjdk.jcstress:jcstress-core:0.5" + // mode "tough" + deoptRatio = "2" +} + +tasks.named<JavaCompile>("compileJcstressJava") { + options.errorprone.excludedPaths.set(".*/build/generated/sources/annotationProcessor/.*") +} |