blob: 031618ff6c3ab8308b67baa6668efe65df0cfd2a [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
def jmhProjects = []
if (JavaVersion.current() == JavaVersion.VERSION_1_8) {
jmhProjects = [ project("iceberg-spark2"), project("iceberg-spark3") ]
} else if (JavaVersion.current() == JavaVersion.VERSION_11) {
jmhProjects = [ project("iceberg-spark3") ]
} else {
throw new GradleException("The JMH benchamrks must be run with JDK 8 or JDK 11")
}
configure(jmhProjects) {
apply plugin: 'me.champeau.gradle.jmh'
jmh {
jmhVersion = jmhVersion
failOnError = true
forceGC = true
includeTests = true
humanOutputFile = file(jmhOutputPath)
include = [jmhIncludeRegex]
}
// Path is relative to either spark2 or spark3 folder, depending on project being tested
sourceSets {
jmh {
java.srcDirs = ['src/jmh/java', '../spark/src/jmh/java']
compileClasspath += sourceSets.main.runtimeClasspath
}
}
jmhCompileGeneratedClasses {
pluginManager.withPlugin('com.palantir.baseline-error-prone') {
options.errorprone.enabled = false
}
}
}