X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/d34970ee2ba0f65c491d306073c9b3a598516f1d..798648515b77507c242752457b4dc17c155bad6e:/gnu/packages/java.scm
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index e074dab46d..806f13ab89 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -651,8 +651,9 @@ the standard javac executable. The tool runs on JamVM instead of SableVM.")))
(source (origin
(method git-fetch)
(uri (git-reference
- (url "git://git.savannah.gnu.org/classpath.git")
+ (url "https://git.savannah.gnu.org/git/classpath.git")
(commit commit)))
+ (file-name (string-append "classpath-" version "-checkout"))
(sha256
(base32
"1v2rww76ww322mpg3s12a1kkc6gkp31bm9gcxs532h0wq285fiw4"))))
@@ -684,7 +685,7 @@ the standard javac executable. The tool runs on JamVM instead of SableVM.")))
"--disable-gjdoc")
#:phases
(modify-phases %standard-phases
- (add-before 'configure 'bootstrap
+ (add-after 'unpack 'bootstrap
(lambda _
(zero? (system* "autoreconf" "-vif"))))
(add-after 'unpack 'remove-unsupported-annotations
@@ -1064,7 +1065,7 @@ bootstrapping purposes.")
(license license:gpl2+)))
(define-public icedtea-7
- (let* ((version "2.6.10")
+ (let* ((version "2.6.11")
(drop (lambda (name hash)
(origin
(method url-fetch)
@@ -1082,7 +1083,7 @@ bootstrapping purposes.")
version ".tar.xz"))
(sha256
(base32
- "0am945k2zqrka2xn7lb5grmkad4lwncnhnwk8iq6f269birzsj8w"))
+ "1ibp6ybqnf8g7mbs45bkbv44dwz4h2w9gr4rh15yvr1m8lqkq1i0"))
(modules '((guix build utils)))
(snippet
'(substitute* "Makefile.in"
@@ -1475,25 +1476,25 @@ bootstrapping purposes.")
(native-inputs
`(("openjdk-src"
,(drop "openjdk"
- "02klsxp9hlf5sial6mxpiq53hmrhlrg6x774j7bjjfhb7hpdvadh"))
+ "1zhr4l9kxnbzghcsgjk3vmih9qpg1wrr9qry7fx04l97svp1ylhd"))
("corba-drop"
,(drop "corba"
- "1vbly6khri241xda05gnwkpf2fk41d96ls96ximi084mx0a3w5rd"))
+ "108v15ncb2rnsyzgzncjlm1f57d1sv60zd9qbpas8kqmvpp8r0gz"))
("jaxp-drop"
,(drop "jaxp"
- "0s8zln64vdwdxwlw1vpfzm8xbpyhgsv3nqjmnv7y36qpsszg27a5"))
+ "0zcpcmm3g1s7m31glrbw3ys7azi97ixcvbyxd40y9xzdja3jyr52"))
("jaxws-drop"
,(drop "jaxws"
- "0myd66bv8ib8krzgqv754bc564rd8xwpwabvf7my1apyb86vap3n"))
+ "1gkqm0p3sr8d0xpki3fhf7cvmgqxx8ambgl5f3jx2plfnhsg96d2"))
("jdk-drop"
,(drop "jdk"
- "10b4lfv10vba07zblw0wii7mhrfhf32pf7410x5nz2q0smgszl2h"))
+ "1d9fjnzdx4m6gwkvmj2n097ag0mvkhm3lldaxjki8x8c6a5clknf"))
("langtools-drop"
,(drop "langtools"
- "0lvncxb5qzrlqkflrnd0l8vwy155cwj1jb07rkq10z2vx0bq7lq2"))
+ "0zscdp9arcq7gr8j7jq4m75gq0w1i3ryxpdnrc8fl0msh4w2s2k5"))
("hotspot-drop"
,(drop "hotspot"
- "0q6mdgbbd3681y3n0z1v783irdjhhi73z6sn5csczpyhjm318axb"))
+ "1y6vnssn5y50x27g4ypdb5wwpmi7zf7jdi8gqbymkwf6n8p5y1d6"))
("ant" ,ant-bootstrap)
("attr" ,attr)
("coreutils" ,coreutils)
@@ -1543,7 +1544,7 @@ IcedTea build harness.")
(license license:gpl2+))))
(define-public icedtea-8
- (let* ((version "3.4.0")
+ (let* ((version "3.5.1")
(drop (lambda (name hash)
(origin
(method url-fetch)
@@ -1552,7 +1553,7 @@ IcedTea build harness.")
"/icedtea8/" version "/" name ".tar.xz"))
(sha256 (base32 hash))))))
(package (inherit icedtea-7)
- (version "3.4.0")
+ (version "3.5.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1560,7 +1561,7 @@ IcedTea build harness.")
version ".tar.xz"))
(sha256
(base32
- "16if055973y6yw7n5gczp8iksvc31cy4p5by9lkbniadqj4z665m"))
+ "1j8iv0cdk9fkh3yb5is7z29m9k3s89w6y9090538j6aa7p4nmalf"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -1602,7 +1603,7 @@ IcedTea build harness.")
(string-append "lib" name ".so")))))
(for-each
(lambda (file)
- (catch 'encoding-error
+ (catch 'decoding-error
(lambda ()
(substitute* file
(("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
@@ -1627,39 +1628,43 @@ IcedTea build harness.")
(copy-recursively "openjdk.build/docs" doc)
(copy-recursively "openjdk.build/images/j2re-image" jre)
(copy-recursively "openjdk.build/images/j2sdk-image" jdk)
+ ;; Install the nss.cfg file to JRE to enable SSL/TLS
+ ;; support via NSS.
+ (copy-file (string-append jdk "/jre/lib/security/nss.cfg")
+ (string-append jre "/lib/security/nss.cfg"))
#t)))))))
(native-inputs
`(("jdk" ,icedtea-7 "jdk")
("openjdk-src"
,(drop "openjdk"
- "0va5i3zr8y8ncv914rz914jda9d88gq0viww3smdqnln8n78rszi"))
+ "0a6yrq8y1zkzc7hm2l28rm3vzy5izfxhmmhhhvc91lhfclnqcd2q"))
("aarch32-drop"
,(drop "aarch32"
"0cway5a5hcfyh4pzl9zz5xr7lil4gsliy6r5iqbaasd2d9alvqiq"))
("corba-drop"
,(drop "corba"
- "1l9zr97a3kq00bj4i8wcdsjlz3xlfldxd8zhkcxikinwd5n0n8a7"))
+ "031sc6byd8lqvz3cd07phm13pqrxalxk9f3a2q8pim5n4sbsy0qb"))
("jaxp-drop"
,(drop "jaxp"
- "0lqxrsr3xlpwm2na6f2rpl7znrz34dkb9dg3zjmympyjy4kqljn7"))
+ "1815jaj0k0w1s0g0jr1ahkajp1jx2qlb08i6l9ha4wyqqyp49a4n"))
("jaxws-drop"
,(drop "jaxws"
- "1b3chckk10dzrpa7cswmcf1jvryaiwkj8lihfqjr5j7l668jwr4h"))
+ "0vh4f85cxhqvabzg86ycpz02519cdzgsn5dr75k22rkmbbxnbbl6"))
("jdk-drop"
,(drop "jdk"
- "15lq0k2jv2x26x6vqkbljdcxk35i3b60pcsw3j1sdfmlk1xy6wgc"))
+ "196ycqz4d9kknc6b219q4ib83l1kkl6w6l1cznw9bzaafyynqa35"))
("langtools-drop"
,(drop "langtools"
- "17xkb8ahkg04ri0bp5wblcp1a2lp8j7c83ic5zdbggvgm339k5s8"))
+ "0ssnadlr5cxhmj06nmni34kdynix1sjhcvjzahm5yzfd7dfllmgy"))
("hotspot-drop"
,(drop "hotspot"
- "0xpx8ykaq0ki6r0dl3dzca2xgp1p82z8mvsxcs2931ib667ncgcp"))
+ "0f7fxf0s9kadvs80hm5ga72pyp9r0fvl8zm1wmd1wrks8kl79sd6"))
("nashorn-drop"
,(drop "nashorn"
- "1bnn4731lhlvg8axy4mjxgvh646yl22hp52wipx8cfca4vkn2f1z"))
+ "0m95qgnd4z6p0xp9m06ihss7skx2yrm7xw69jsjsrxpriy1shiwy"))
("shenandoah-drop"
,(drop "shenandoah"
- "0fpxl8zlii1hpm777r875ys2cr5ih3gb6p1nm9jfa6krjrccrxv1"))
+ "0yjlcgp6mldp30hmkfl68mdwlbg3gb0m6xd5y7srczni7cln5f3i"))
,@(fold alist-delete (package-native-inputs icedtea-7)
'("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop"
"jdk-drop" "langtools-drop" "hotspot-drop")))))))
@@ -1868,6 +1873,41 @@ designs.")
license:asl2.0
license:cpl1.0)))))
+(define-public java-classpathx-servletapi
+ (package
+ (name "java-classpathx-servletapi")
+ (version "3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/classpathx/servletapi/"
+ "servletapi-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0y9489pk4as9q6x300sk3ycc0psqfxcd4b0xvbmf3rhgli8q1kx3"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:tests? #f ; there is no test target
+ #:build-target "compile"
+ ;; NOTE: This package does not build with Java 8 because of a type
+ ;; mismatch in
+ ;; "source/javax/servlet/jsp/el/ImplicitObjectELResolver.java". It
+ ;; defines the return value of ScopeMap's "remove" method to be of type
+ ;; "Object", whereas Map's "remove" method returns boolean.
+ #:make-flags
+ (list "-Dbuild.compiler=javac1.7"
+ (string-append "-Ddist=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'install
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* `("ant" "dist" ,@make-flags))))))))
+ (home-page "https://www.gnu.org/software/classpathx/")
+ (synopsis "Java servlet API implementation")
+ (description "This is the GNU servlet API distribution, part of the
+ClasspathX project. It provides implementations of version 3.0 of the servlet
+API and version 2.1 of the Java ServerPages API.")
+ (license license:gpl3+)))
+
(define-public java-swt
(package
(name "java-swt")
@@ -4086,6 +4126,87 @@ for your architecture which is provided by the jsvc package.
This is a part of the Apache Commons Project.")
(license license:asl2.0)))
+(define-public java-javaewah
+ (package
+ (name "java-javaewah")
+ (version "1.1.6")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/lemire/javaewah/"
+ "archive/JavaEWAH-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1n7j1r1h24wlhwv9zdcj6yqjrhma2ixwyzm15l5vrv6yqjs6753b"))))
+ (build-system ant-build-system)
+ (arguments `(#:jar-name "javaewah.jar"))
+ (inputs
+ `(("java-junit" ,java-junit)
+ ("java-hamcrest-core" ,java-hamcrest-core)))
+ (home-page "https://github.com/lemire/javaewah")
+ (synopsis "Compressed alternative to the Java @code{BitSet} class")
+ (description "This is a word-aligned compressed variant of the Java
+@code{Bitset} class. It provides both a 64-bit and a 32-bit RLE-like
+compression scheme. It can be used to implement bitmap indexes.
+
+The goal of word-aligned compression is not to achieve the best compression,
+but rather to improve query processing time. Hence, JavaEWAH tries to save CPU
+cycles, maybe at the expense of storage. However, the EWAH scheme is always
+more efficient storage-wise than an uncompressed bitmap (as implemented in the
+@code{BitSet} class by Sun).")
+ ;; GPL2.0 derivates are explicitly allowed.
+ (license license:asl2.0)))
+
+(define-public java-slf4j-api
+ (package
+ (name "java-slf4j-api")
+ (version "1.7.25")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.slf4j.org/dist/slf4j-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "13j51sgzmhhdrfa74gkal5zpip7r1440dh7zsi2c8bpb2zs1v8kb"))
+ (modules '((guix build utils)))
+ ;; Delete bundled jars.
+ (snippet
+ '(begin
+ (for-each delete-file (find-files "." "\\.jar$"))
+ #t))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "slf4j-api.jar"
+ #:source-dir "slf4j-api/src/main"
+ #:test-dir "slf4j-api/src/test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'build 'regenerate-jar
+ (lambda _
+ ;; pom.xml ignores these files in the jar creation process. If we don't,
+ ;; we get the error "This code should have never made it into slf4j-api.jar"
+ (delete-file-recursively "build/classes/org/slf4j/impl")
+ (zero? (system* "jar" "-cf" "build/jar/slf4j-api.jar" "-C"
+ "build/classes" "."))))
+ (add-before 'check 'dont-test-abstract-classes
+ (lambda _
+ ;; abstract classes are not meant to be run with junit
+ (substitute* "build.xml"
+ (("")
+ (string-append ""
+ ""))))))))
+ (inputs
+ `(("java-junit" ,java-junit)
+ ("java-hamcrest-core" ,java-hamcrest-core)))
+ (home-page "https://www.slf4j.org/")
+ (synopsis "Simple logging facade for Java")
+ (description "The Simple Logging Facade for Java (SLF4J) serves as a
+simple facade or abstraction for various logging
+frameworks (e.g. @code{java.util.logging}, @code{logback}, @code{log4j})
+allowing the end user to plug in the desired logging framework at deployment
+time.")
+ (license license:expat)))
+
(define-public antlr2
(package
(name "antlr2")
@@ -4570,3 +4691,28 @@ generate classes, directly in binary form. The provided common
transformations and analysis algorithms allow to easily assemble custom
complex transformations and code analysis tools.")
(license license:bsd-3)))
+
+(define-public java-commons-cli-1.2
+ ;; This is a bootstrap dependency for Maven2.
+ (package
+ (inherit java-commons-cli)
+ (version "1.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://apache/commons/cli/source/"
+ "commons-cli-" version "-src.tar.gz"))
+ (sha256
+ (base32
+ "0rvfgzgv2pc1m091dfj3ih9ddsjjppr1f1wf0qmc3bk6b1kwv2dm"))))
+ (arguments
+ `(#:jar-name "commons-cli.jar"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'fix-build-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build.xml"
+ (("dir=\"\\$\\{test.home\\}/java\"")
+ "dir=\"${test.home}\""))
+ #t)))))
+ (native-inputs
+ `(("java-junit" ,java-junit)))))