From 532d2045f5f87e9049475ddd055c7a93ea38dca0 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Fri, 30 Jul 2021 20:03:33 +0200 Subject: Add JMH benchmarks for model-data --- gradle/java-common.gradle | 4 ++-- gradle/jmh.gradle | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 gradle/jmh.gradle (limited to 'gradle') diff --git a/gradle/java-common.gradle b/gradle/java-common.gradle index 24df4201..caae7d78 100644 --- a/gradle/java-common.gradle +++ b/gradle/java-common.gradle @@ -52,9 +52,9 @@ eclipse { } } } - + jdt.file.whenMerged { properties -> - // Allow @SupperessWarnings to suppress SonalLint warnings + // Allow @SupperessWarnings to suppress SonarLint warnings properties['org.eclipse.jdt.core.compiler.problem.unhandledWarningToken'] = 'ignore' } } diff --git a/gradle/jmh.gradle b/gradle/jmh.gradle new file mode 100644 index 00000000..ea88f3e3 --- /dev/null +++ b/gradle/jmh.gradle @@ -0,0 +1,40 @@ +configurations { + jmh { + extendsFrom compile + } +} + +sourceSets { + jmh { + java.srcDirs = ['src/jmh/java'] + resources.srcDirs = ['src/jmh/resources'] + compileClasspath += sourceSets.main.runtimeClasspath + compileClasspath += sourceSets.test.runtimeClasspath + xtendOutputDir = 'src/jmh/xtend-gen' + } +} + +dependencies { + jmhRuntime "org.openjdk.jmh:jmh-core:${jmhVersion}" + jmhCompile "org.openjdk.jmh:jmh-generator-annprocess:${jmhVersion}" + jmhAnnotationProcessor "org.openjdk.jmh:jmh-generator-annprocess:${jmhVersion}" +} + +clean.doLast { + delete 'src/jmh/xtend-gen' +} + +task jmh(type: JavaExec, dependsOn: jmhClasses) { + main = 'org.openjdk.jmh.Main' + classpath = sourceSets.jmh.compileClasspath + sourceSets.jmh.runtimeClasspath +} + +eclipse.classpath { + plusConfigurations += [configurations.jmh] + + // Allow test helper classes to be used in benchmarks from Eclipse. + file.whenMerged { classpath -> + def jmhClasspathEntry = classpath.entries.find { entry -> entry.path == 'src/jmh/java' } + jmhClasspathEntry.entryAttributes['test'] = true + } +} -- cgit v1.2.3-54-g00ecf