diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2017-03-02 12:24:01 +0100 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2017-05-10 17:59:24 +0200 |
commit | 62c9bfaaffe7ed5705219192a7b5eb0aab59b720 (patch) | |
tree | 221c2ce04cc2d3fbd46f226731afd9b114147dd5 | |
parent | 840969e8294b281e3460bd35e95a6e5bb9befeca (diff) |
gnu: Add java-jmh.
* gnu/packages/java.scm (java-jmh): New variable.
-rw-r--r-- | gnu/packages/java.scm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 587f85df71..619295904f 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -23,6 +23,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix hg-download) #:use-module (guix utils) #:use-module (guix build-system ant) #:use-module (guix build-system gnu) @@ -1517,3 +1518,48 @@ overly clever.") mathematics and statistics components addressing the most common problems not available in the Java programming language or Commons Lang.") (license license:asl2.0))) + +(define-public java-jmh + (package + (name "java-jmh") + (version "1.17.5") + (source (origin + (method hg-fetch) + (uri (hg-reference + (url "http://hg.openjdk.java.net/code-tools/jmh/") + (changeset version))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1fxyxhg9famwcg1prc4cgwb5wzyxqavn3cjm5vz8605xz7x5k084")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jmh-core.jar" + #:source-dir "jmh-core/src/main" + #:test-dir "jmh-core/src/test" + #:phases + (modify-phases %standard-phases + ;; This seems to be a bug in the JDK. It may not be necessary in + ;; future versions of the JDK. + (add-after 'unpack 'fix-bug + (lambda _ + (with-directory-excursion + "jmh-core/src/main/java/org/openjdk/jmh/runner/options" + (substitute* '("IntegerValueConverter.java" + "ThreadsValueConverter.java") + (("public Class<Integer> valueType") + "public Class<? extends Integer> valueType"))) + #t))))) + (inputs + `(("java-jopt-simple" ,java-jopt-simple) + ("java-commons-math3" ,java-commons-math3))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core))) + (home-page "http://openjdk.java.net/projects/code-tools/jmh/") + (synopsis "Benchmark harness for the JVM") + (description "JMH is a Java harness for building, running, and analysing +nano/micro/milli/macro benchmarks written in Java and other languages +targetting the JVM.") + ;; GPLv2 only + (license license:gpl2))) |