gnu: Add java-hamcrest-all.

* gnu/packages/java.scm (java-hamcrest-all): New variable.
This commit is contained in:
Ricardo Wurmus 2017-03-03 16:14:06 +01:00
parent 91a9c65c7b
commit 439c59da52
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -1484,6 +1484,45 @@ (define-public java-jmock-1
@end itemize\n")
(license license:bsd-3)))
(define-public java-hamcrest-all
(package (inherit java-hamcrest-core)
(name "java-hamcrest-all")
(arguments
(substitute-keyword-arguments (package-arguments java-hamcrest-core)
;; FIXME: a unit test fails because org.hamcrest.SelfDescribing is not
;; found, although it is part of the hamcrest-core library that has
;; just been built.
;;
;; Fixing this one test is insufficient, though, and upstream confirmed
;; that the latest hamcrest release fails its unit tests when built
;; with Java 7. See https://github.com/hamcrest/JavaHamcrest/issues/30
((#:tests? _) #f)
((#:build-target _) "bigjar")
((#:phases phases)
`(modify-phases ,phases
;; Some build targets override the classpath, so we need to patch
;; the build.xml to ensure that required dependencies are on the
;; classpath.
(add-after 'unpack 'patch-classpath-for-integration
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "build.xml"
((" build/hamcrest-library-\\$\\{version\\}.jar" line)
(string-join
(cons line
(append
(find-files (assoc-ref inputs "java-hamcrest-core") "\\.jar$")
(find-files (assoc-ref inputs "java-junit") "\\.jar$")
(find-files (assoc-ref inputs "java-jmock") "\\.jar$")
(find-files (assoc-ref inputs "java-easymock") "\\.jar$")))
";")))
#t))))))
(inputs
`(("java-junit" ,java-junit)
("java-jmock" ,java-jmock-1)
("java-easymock" ,java-easymock)
("java-hamcrest-core" ,java-hamcrest-core)
,@(package-inputs java-hamcrest-core)))))
(define-public java-jopt-simple
(package
(name "java-jopt-simple")