aboutsummaryrefslogtreecommitdiff
path: root/okio/jvm/jmh/build.gradle
blob: 54eebdd3afdcfbe6fec067927de3b492f9cf9405 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import com.github.jengelman.gradle.plugins.shadow.transformers.DontIncludeResourceTransformer
import com.github.jengelman.gradle.plugins.shadow.transformers.IncludeResourceTransformer

apply plugin: 'java-library'
apply plugin: 'org.jetbrains.kotlin.jvm'
apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: 'me.champeau.gradle.jmh'

jmhJar {
  def excludeAllBenchmarkLists = new DontIncludeResourceTransformer()
  excludeAllBenchmarkLists.resource = "META-INF/BenchmarkList"
  transform(excludeAllBenchmarkLists)

  def includeCorrectBenchmarkList = new IncludeResourceTransformer()
  includeCorrectBenchmarkList.resource = "META-INF/BenchmarkList"
  includeCorrectBenchmarkList.file = new File("${project.buildDir}/jmh-generated-resources/META-INF/BenchmarkList")
  transform(includeCorrectBenchmarkList)
}

jmh {
  jvmArgs = ['-Djmh.separateClasspathJAR=true']
  include = ['com\\.squareup\\.okio\\.benchmarks\\.MessageDigestBenchmark.*']
  duplicateClassesStrategy = 'warn'
}

dependencies {
  compile project(':okio')
  compile deps.kotlin.stdLib.jdk6
  compile deps.jmh.core
  jmh project(path: ':okio', configuration: 'jvmRuntimeElements')
  jmh deps.kotlin.stdLib.jdk6
  jmh deps.jmh.core
  jmh deps.jmh.generator
}

assemble.dependsOn(jmhJar)