From 3422e10ededa47ed7e71cc4fd55aab4cf65ea905 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sun, 25 Feb 2018 11:45:17 +0100
Subject: gnu: Update java-testng to 6.14.3.
* gnu/packages/java.scm (java-testng): Update to 6.14.3.
---
gnu/packages/java.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 47220fc75..94c806b99 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6959,7 +6959,7 @@ those in Perl and JavaScript.")
(define-public java-testng
(package
(name "java-testng")
- (version "6.14.2")
+ (version "6.14.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -6968,7 +6968,7 @@ those in Perl and JavaScript.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0ngj88dpbqqdx9084cmiasmn9q3v5dgx45qbvxpip47nxc5x14xy"))))
+ "0y6vq30i5g276kw0v2bhbvci22ijg7ax49ap2611yqlhbs4d6dqv"))))
(build-system ant-build-system)
(arguments
`(#:jdk ,icedtea-8; java.util.function
--
cgit v1.3
From 3214afabff01f7aae1d4790059a6f40763023711 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 21:53:53 +0100
Subject: gnu: Add java-plexus-component-annotations.
* gnu/packages/java.scm (java-plexus-component-annotations): New
variable.
---
gnu/packages/java.scm | 14 ++++++++++++++
1 file changed, 14 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 94c806b99..5f8f7fdb5 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2660,6 +2660,20 @@ archives (jar).")
`(("archiver" ,java-plexus-archiver)
("hamcrest" ,java-hamcrest-core)))))
+(define-public java-plexus-component-annotations
+ (package
+ (inherit java-plexus-container-default)
+ (name "java-plexus-component-annotations")
+ (arguments
+ `(#:jar-name "plexus-component-annotations.jar"
+ #:source-dir "plexus-component-annotations/src/main/java"
+ #:tests? #f)); no tests
+ (inputs '())
+ (native-inputs '())
+ (synopsis "Plexus descriptors generator")
+ (description "This package is a Maven plugin to generate Plexus descriptors
+from source tags and class annotations.")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From a7ad92ade94d456f991062aedede9fd1ecd64b07 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Wed, 14 Feb 2018 22:11:34 +0100
Subject: gnu: Make java-plexus-container-default-bootstrap private.
* gnu/packages/java.scm (java-plexus-container-default-bootstrap): Make
private.
---
gnu/packages/java.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 5f8f7fdb5..7312d4703 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2483,7 +2483,7 @@ mechanism of Java. It is especially useful for dynamic loading of application
components.")
(license license:asl2.0)))
-(define-public java-plexus-container-default-bootstrap
+(define java-plexus-container-default-bootstrap
(package
(name "java-plexus-container-default-bootstrap")
(version "1.7.1")
--
cgit v1.3
From 4f77ba17c663881c0657c838fbcb2a98e9137aa5 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 22:02:24 +0100
Subject: gnu: Add java-plexus-cipher.
* gnu/packages/java.scm (java-plexus-cipher): New variable.
---
gnu/packages/java.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7312d4703..57370db76 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2674,6 +2674,42 @@ archives (jar).")
(description "This package is a Maven plugin to generate Plexus descriptors
from source tags and class annotations.")))
+(define-public java-plexus-cipher
+ (package
+ (name "java-plexus-cipher")
+ (version "1.7")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/codehaus-plexus/plexus-cipher"
+ "/archive/plexus-cipher-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1j3r8xzlxlk340snkjp6lk2ilkxlkn8qavsfiq01f43xmvv8ymk3"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "plexus-cipher.jar"
+ #:source-dir "src/main/java"
+ #:jdk ,icedtea-8
+ #:tests? #f; FIXME: requires sisu-inject-bean
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (copy-recursively "src/main/resources" "build/classes")
+ (mkdir-p "build/classes/META-INF/sisu")
+ (with-output-to-file "build/classes/META-INF/sisu/javax.inject.Named"
+ (lambda _
+ (display "org.sonatype.plexus.components.cipher.DefaultPlexusCipher\n")))
+ #t)))))
+ (inputs
+ `(("java-cdi-api" ,java-cdi-api)
+ ("java-javax-inject" ,java-javax-inject)))
+ (home-page "https://github.com/sonatype/plexus-cipher")
+ (synopsis "Encryption/decryption Component")
+ (description "Plexus-cipher contains a component to deal with encryption
+and decryption.")
+ (license license:asl2.0)))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From 239126d48b960013cc368a3f3636e760e0adb8fd Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 23:00:09 +0100
Subject: gnu: Add java-plexus-compiler-api.
* gnu/packages/java.scm (java-plexus-compiler-api): New variable.
---
gnu/packages/java.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 57370db76..45904ff84 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2710,6 +2710,35 @@ from source tags and class annotations.")))
and decryption.")
(license license:asl2.0)))
+(define-public java-plexus-compiler-api
+ (package
+ (name "java-plexus-compiler-api")
+ (version "2.8.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/codehaus-plexus/plexus-compiler"
+ "/archive/plexus-compiler-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g3x26pymcdnfnwv2a1i57pd5s26f5zqfi1rdy98z1bn01klx25k"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "plexus-compiler-api.jar"
+ #:source-dir "plexus-compiler-api/src/main/java"
+ #:jdk ,icedtea-8
+ #:test-dir "plexus-compiler-api/src/test"))
+ (inputs
+ `(("java-plexus-container-default" ,java-plexus-container-default)
+ ("java-plexus-util" ,java-plexus-utils)))
+ (native-inputs
+ `(("java-junit" ,java-junit)))
+ (home-page "https://github.com/codehaus-plexus/plexus-compiler")
+ (synopsis "Plexus Compilers component's API to manipulate compilers")
+ (description "This package contains the API used by components to manipulate
+compilers.")
+ (license (list license:asl2.0
+ license:expat))))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From f8a519fa3f8af3e3be842d84be49897d0bd9fd06 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 23:09:20 +0100
Subject: gnu: Add java-plexus-compiler-javac.
gnu/packages/java.scm (java-plexus-compiler-javac): New variable.
---
gnu/packages/java.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 45904ff84..dc8523369 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2739,6 +2739,26 @@ compilers.")
(license (list license:asl2.0
license:expat))))
+(define-public java-plexus-compiler-javac
+ (package
+ (inherit java-plexus-compiler-api)
+ (name "java-plexus-compiler-javac")
+ (arguments
+ `(#:jar-name "plexus-compiler-javac.jar"
+ #:source-dir "plexus-compilers/plexus-compiler-javac/src/main/java"
+ #:jdk ,icedtea-8
+ #:tests? #f; depends on compiler-test -> maven-core -> ... -> this package.
+ #:test-dir "plexus-compilers/plexus-compiler-javac/src/test"))
+ (inputs
+ `(("java-plexus-compiler-api" ,java-plexus-compiler-api)
+ ("java-plexus-utils" ,java-plexus-utils)
+ ("java-plexus-container-default" ,java-plexus-container-default)))
+ (native-inputs
+ `(("java-junit" ,java-junit)))
+ (synopsis "Javac Compiler support for Plexus Compiler component")
+ (description "This package contains the Javac Compiler support for Plexus
+Compiler component.")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From 8f524749bc26601d4dc781978104718adb7addc8 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 22:42:43 +0100
Subject: gnu: Add java-sisu-build-api.
* gnu/packages/java.scm (java-sisu-build-api): New variable.
---
gnu/packages/java.scm | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index dc8523369..bbc39831e 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2759,6 +2759,61 @@ compilers.")
(description "This package contains the Javac Compiler support for Plexus
Compiler component.")))
+(define-public java-sisu-build-api
+ (package
+ (name "java-sisu-build-api")
+ (version "0.0.7")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/sonatype/sisu-build-api/"
+ "archive/plexus-build-api-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c3rrpma3x634xp2rm2p5iskfhzdyc7qfbhjzr70agrl1jwghgy2"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "sisu-build-api.jar"
+ #:source-dir "src/main/java"
+ #:jdk ,icedtea-8
+ #:tests? #f; FIXME: how to run the tests?
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (copy-recursively "src/main/resources" "build/classes")
+ (substitute* (find-files "build/classes")
+ (("\\$\\{project.version\\}") ,version))
+ #t))
+ (add-before 'build 'generate-plexus-compontent
+ (lambda _
+ (mkdir-p "build/classes/META-INF/plexus")
+ ;; This file is required for plexus to inject this package.
+ ;; FIXME: how is it generated?
+ (with-output-to-file "build/classes/META-INF/plexus/components.xml"
+ (lambda _
+ (display
+ "\n
+ \n
+ \n
+ org.sonatype.plexus.build.incremental.BuildContext\n
+ default\n
+ org.sonatype.plexus.build.incremental.DefaultBuildContext\n
+ Filesystem based non-incremental build context implementation\n
+which behaves as if all files were just created.\n
+ \n
+ \n
+\n")))
+ #t)))))
+ (inputs
+ `(("java-plexus-utils" ,java-plexus-utils)
+ ("java-plexus-container-default" ,java-plexus-container-default)))
+ (home-page "https://github.com/sonatype/sisu-build-api/")
+ (synopsis "Base build API for maven")
+ (description "This package contains the base build API for maven and
+a default implementation of it. This API is about scanning files in a
+project and determining what files need to be rebuilt.")
+ (license license:asl2.0)))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From b26c8b618457943075eaf5d33592af0eabf53cc8 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 22:51:17 +0100
Subject: gnu: Add java-modello-core.
* gnu/packages/java.scm (java-modello-core): New variable.
---
gnu/packages/java.scm | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index bbc39831e..d7a1299a7 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2814,6 +2814,69 @@ a default implementation of it. This API is about scanning files in a
project and determining what files need to be rebuilt.")
(license license:asl2.0)))
+(define-public java-modello-core
+ (package
+ (name "java-modello-core")
+ (version "1.9.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/codehaus-plexus/modello"
+ "/archive/modello-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0l2pvns8pmlrmjm3iknp7gpg3654y1m8qhy55b19sdwdchdcyxfh"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "modello-core.jar"
+ #:source-dir "modello-core/src/main/java"
+ #:test-dir "modello-core/src/test"
+ #:main-class "org.codehaus.modello.ModelloCli"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (mkdir-p "build/classes/META-INF/plexus")
+ (copy-file "modello-core/src/main/resources/META-INF/plexus/components.xml"
+ "build/classes/META-INF/plexus/components.xml")
+ #t))
+ (add-before 'check 'fix-tests
+ (lambda _
+ (with-directory-excursion "modello-core/src/test/java/org/codehaus"
+ (substitute* '("modello/core/DefaultModelloCoreTest.java"
+ "modello/core/io/ModelReaderTest.java")
+ (("src/test") "modello-core/src/test")))
+ #t)))))
+ (inputs
+ `(("java-plexus-utils" ,java-plexus-utils)
+ ("java-plexus-container-default" ,java-plexus-container-default)
+ ("java-sisu-build-api" ,java-sisu-build-api)))
+ (native-inputs
+ `(("java-junit" ,java-junit)
+ ("java-plexus-classworlds" ,java-plexus-classworlds)
+ ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect)
+ ("java-guava" ,java-guava)))
+ (home-page "http://codehaus-plexus.github.io/modello/")
+ (synopsis "Framework for code generation from a simple model")
+ (description "Modello is a framework for code generation from a simple model.
+
+Modello generates code from a simple model format: based on a plugin
+architecture, various types of code and descriptors can be generated from the
+single model, including Java POJOs, XML/JSON/YAML marshallers/unmarshallers,
+XSD and documentation.")
+ (license (list
+ license:expat
+ ;; Although this package uses only files licensed under expat,
+ ;; other parts of the source are licensed under different
+ ;; licenses. We include them to be inherited by other packages.
+ license:asl2.0
+ ;; Some files in modello-plugin-java are licensed under a
+ ;; 5-clause BSD license.
+ (license:non-copyleft
+ (string-append "file:///modello-plugins/modello-plugin-java/"
+ "src/main/java/org/codehaus/modello/plugin/"
+ "java/javasource/JNaming.java"))))))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From fc620befd4d4236db8f446dba2e0f3abcd4c0cfb Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 22:52:22 +0100
Subject: gnu: Add java-modello-plugins-java.
* gnu/packages/java.scm (java-modello-plugins-java): New variable.
---
gnu/packages/java.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index d7a1299a7..05cf91999 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2877,6 +2877,30 @@ XSD and documentation.")
"src/main/java/org/codehaus/modello/plugin/"
"java/javasource/JNaming.java"))))))
+(define-public java-modello-plugins-java
+ (package
+ (inherit java-modello-core)
+ (name "java-modello-plugins-java")
+ (arguments
+ `(#:jar-name "modello-plugins-java.jar"
+ #:source-dir "modello-plugins/modello-plugin-java/src/main/java"
+ #:test-dir "modello-plugins/modello-plugin-java/src/test"
+ #:jdk ,icedtea-8
+ #:tests? #f; requires maven-model, which depends on this package
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (mkdir-p "build/classes")
+ (copy-recursively "modello-plugins/modello-plugin-java/src/main/resources"
+ "build/classes")
+ #t)))))
+ (inputs
+ `(("java-modello-core" ,java-modello-core)
+ ,@(package-inputs java-modello-core)))
+ (synopsis "Modello Java Plugin")
+ (description "Modello Java Plugin generates Java objects for the model.")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From a0ce95ba8f6beb79fe77fe4f199dbe49e243bbbc Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 22:53:12 +0100
Subject: gnu: Add java-modello-plugins-xml.
* gnu/packages/java.scm (java-modello-plugins-xml): New variable.
---
gnu/packages/java.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 05cf91999..6d77967de 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2901,6 +2901,38 @@ XSD and documentation.")
(synopsis "Modello Java Plugin")
(description "Modello Java Plugin generates Java objects for the model.")))
+(define-public java-modello-plugins-xml
+ (package
+ (inherit java-modello-core)
+ (name "java-modello-plugins-xml")
+ (arguments
+ `(#:jar-name "modello-plugins-xml.jar"
+ #:source-dir "modello-plugins/modello-plugin-xml/src/main/java"
+ #:test-dir "modello-plugins/modello-plugin-xml/src/test"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (mkdir-p "build/classes")
+ (copy-recursively
+ "modello-plugins/modello-plugin-xml/src/main/resources"
+ "build/classes")
+ #t))
+ (add-before 'check 'fix-paths
+ (lambda _
+ (with-directory-excursion "modello-plugins/modello-plugin-xml/src/test"
+ (substitute*
+ "java/org/codehaus/modello/plugins/xml/XmlModelloPluginTest.java"
+ (("src/test") "modello-plugins/modello-plugin-xml/src/test"))))))))
+ (inputs
+ `(("java-modello-core" ,java-modello-core)
+ ("java-modello-plugins-java" ,java-modello-plugins-java)
+ ,@(package-inputs java-modello-core)))
+ (synopsis "Modello XML Plugin")
+ (description "Modello XML Plugin contains shared code for every plugins
+working on XML representation of the model.")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From e470856017a705d4ba1881363717579e62f28671 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 23:23:38 +0100
Subject: gnu: Add java-modello-test.
gnu/packages/java.scm (java-modello-test): New variable.
---
gnu/packages/java.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 6d77967de..f8bb5e58f 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2933,6 +2933,25 @@ XSD and documentation.")
(description "Modello XML Plugin contains shared code for every plugins
working on XML representation of the model.")))
+(define-public java-modello-test
+ (package
+ (inherit java-modello-core)
+ (name "java-modello-test")
+ (arguments
+ `(#:jar-name "modello-test.jar"
+ #:source-dir "modello-test/src/main/java"
+ #:tests? #f; no tests
+ #:jdk ,icedtea-8))
+ (inputs
+ `(("java-plexus-utils" ,java-plexus-utils)
+ ("java-plexus-compiler-api" ,java-plexus-compiler-api)
+ ("java-plexus-compiler-javac" ,java-plexus-compiler-javac)
+ ("java-plexus-container-default" ,java-plexus-container-default)))
+ (synopsis "Modello test package")
+ (description "The modello test package contains the basis to create
+Modello generator unit-tests, including sample models and xml files to test
+every feature for every plugin.")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From 36607d3bfe1f0d26773ffaefd22b4968c6237999 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 23:30:59 +0100
Subject: gnu: Add java-modello-plugins-xpp3.
gnu/packages/java.scm (java-modello-plugins-xpp3): New variable.
---
gnu/packages/java.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index f8bb5e58f..93b343f62 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2952,6 +2952,38 @@ working on XML representation of the model.")))
Modello generator unit-tests, including sample models and xml files to test
every feature for every plugin.")))
+(define-public java-modello-plugins-xpp3
+ (package
+ (inherit java-modello-core)
+ (name "java-modello-plugins-xpp3")
+ (arguments
+ `(#:jar-name "modello-plugins-xpp3.jar"
+ #:source-dir "modello-plugins/modello-plugin-xpp3/src/main/java"
+ #:test-dir "modello-plugins/modello-plugin-xpp3/src/test"
+ ;; One of the test dependencies is maven-model which depends on this package.
+ #:tests? #f
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (mkdir-p "build/classes")
+ (copy-recursively "modello-plugins/modello-plugin-xpp3/src/main/resources"
+ "build/classes")
+ #t)))))
+ (inputs
+ `(("java-modello-core" ,java-modello-core)
+ ("java-modello-plugins-java" ,java-modello-plugins-java)
+ ("java-modello-plugins-xml" ,java-modello-plugins-xml)
+ ,@(package-inputs java-modello-core)))
+ (native-inputs
+ `(("java-xmlunit" ,java-xmlunit)
+ ("java-modello-test" ,java-modello-test)
+ ,@(package-native-inputs java-modello-core)))
+ (synopsis "Modello XPP3 Plugin")
+ (description "The modello XPP3 plugin generates XML readers and writers based
+on the XPP3 API (XML Pull Parser).")))
+
(define-public java-asm
(package
(name "java-asm")
--
cgit v1.3
From 0aa85081d6319b582d53e9113be41cbe1a59f2a8 Mon Sep 17 00:00:00 2001
From: Julien Lepiller
Date: Sat, 10 Feb 2018 23:46:31 +0100
Subject: gnu: Add java-plexus-sec-dispatcher.
* gnu/packages/java.scm (java-plexus-sec-dispatcher): New variable.
---
gnu/packages/java.scm | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 88 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 93b343f62..2b7a76fda 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2759,6 +2759,94 @@ compilers.")
(description "This package contains the Javac Compiler support for Plexus
Compiler component.")))
+(define-public java-plexus-sec-dispatcher
+ (package
+ (name "java-plexus-sec-dispatcher")
+ (version "1.4") ;; Newest release listed at the Maven Central Repository.
+ (source (origin
+ ;; This project doesn't tag releases or publish tarballs, so we take
+ ;; the "prepare release plexus-sec-dispatcher-1.4" git commit.
+ (method url-fetch)
+ (uri (string-append "https://github.com/sonatype/plexus-sec-dispatcher/"
+ "archive/7db8f88048.tar.gz"))
+ (sha256
+ (base32
+ "1smfrk4n7xbrsxpxcp2j4i0j8q86j73w0w6xg7qz83dp6dagdjgp"))
+ (file-name (string-append name "-" version ".tar.gz"))))
+ (arguments
+ `(#:jar-name "plexus-sec-dispatcher.jar"
+ #:source-dir "src/main/java"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'generate-models
+ (lambda* (#:key inputs #:allow-other-keys)
+ (define (modello-single-mode file version mode)
+ (zero? (system* "java"
+ "org.codehaus.modello.ModelloCli"
+ file mode "src/main/java" version
+ "false" "true")))
+ (let ((file "src/main/mdo/settings-security.mdo"))
+ (and
+ (modello-single-mode file "1.0.0" "java")
+ (modello-single-mode file "1.0.0" "xpp3-reader")
+ (modello-single-mode file "1.0.0" "xpp3-writer")))))
+ (add-before 'build 'generate-components.xml
+ (lambda _
+ (mkdir-p "build/classes/META-INF/plexus")
+ (with-output-to-file "build/classes/META-INF/plexus/components.xml"
+ (lambda _
+ (display
+ "\n
+ \n
+ \n
+ org.sonatype.plexus.components.sec.dispatcher.SecDispatcher\n
+ default\n
+ org.sonatype.plexus.components.sec.dispatcher.DefaultSecDispatcher\n
+ \n
+ \n
+ \n
+ org.sonatype.plexus.components.cipher.PlexusCipher\n
+ _cipher\n
+ \n
+ \n
+ org.sonatype.plexus.components.sec.dispatcher.PasswordDecryptor\n
+ _decryptors\n
+ \n
+ \n
+ \n
+ <_configuration-file>~/.settings-security.xml\n
+ \n
+ \n
+ \n
+\n")))))
+ (add-before 'check 'fix-paths
+ (lambda _
+ (copy-recursively "src/test/resources" "target"))))))
+ (inputs
+ `(("java-plexus-cipher" ,java-plexus-cipher)))
+ (native-inputs
+ `(("java-modello-core" ,java-modello-core)
+ ;; for modello:
+ ("java-plexus-container-default" ,java-plexus-container-default)
+ ("java-plexus-classworlds" ,java-plexus-classworlds)
+ ("java-plexus-utils" ,java-plexus-utils)
+ ("java-guava" ,java-guava)
+ ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect)
+ ("java-sisu-build-api" ,java-sisu-build-api)
+ ;; modello plugins:
+ ("java-modellop-plugins-java" ,java-modello-plugins-java)
+ ("java-modellop-plugins-xml" ,java-modello-plugins-xml)
+ ("java-modellop-plugins-xpp3" ,java-modello-plugins-xpp3)
+ ;; for tests
+ ("java-junit" ,java-junit)))
+ (build-system ant-build-system)
+ (home-page "https://github.com/sonatype/plexus-sec-dispatcher")
+ (synopsis "Plexus Security Dispatcher Component")
+ (description "This package is the Plexus Security Dispatcher Component.
+This component decrypts a string passed to it.")
+ (license license:asl2.0)))
+
(define-public java-sisu-build-api
(package
(name "java-sisu-build-api")
--
cgit v1.3
From c1cb8576453db450493726ab44f34910dfa10ed7 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Wed, 28 Feb 2018 22:12:52 +0100
Subject: gnu: Add java-ecj-3.
* gnu/packages/java.scm (java-ecj-3): New variable.
---
gnu/packages/java.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 2b7a76fda..4ea6f4d8c 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2018,6 +2018,41 @@ debugging, etc.")
(delete-file-recursively "lib") #t))
(replace 'install (install-jars "bin/lib")))))))
+;; This is the last 3.x release of ECJ
+(define-public java-ecj-3
+ (package
+ (name "java-ecj")
+ (version "3.8.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://archive.eclipse.org/eclipse/"
+ "downloads/drops/R-" version
+ "-201301310800/ecjsrc-" version ".jar"))
+ (sha256
+ (base32
+ "01mdj14jw11g1jfnki4fi8229p0c6zzckd38zqy2w4m3cjcvsx04"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:tests? #f ; none included
+ #:jdk ,icedtea-7 ; doesn't build with JDK8+
+ #:make-flags (list "-f" "src/build.xml")
+ #:build-target "build"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-manifest
+ (lambda _
+ ;; Record the main class to make ecj executable.
+ (with-atomic-file-replacement "src/META-INF/MANIFEST.MF"
+ (lambda (in out)
+ (display "Manifest-Version: 1.0
+Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
+ out)))))
+ (replace 'install (install-jars ".")))))
+ (home-page "https://eclipse.org")
+ (synopsis "Eclipse Java development tools core batch compiler")
+ (description "This package provides the Eclipse Java core batch compiler.")
+ (license license:epl1.0)))
+
(define-public java-classpathx-servletapi
(package
(name "java-classpathx-servletapi")
--
cgit v1.3
From f201b18ed7d7f8ab640f2e571aad765cf3c572dd Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Wed, 28 Feb 2018 22:13:12 +0100
Subject: gnu: Add java-ecj-3.5.
* gnu/packages/java.scm (java-ecj-3.5): New variable.
---
gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 4ea6f4d8c..7a90bfba0 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2053,6 +2053,37 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
(description "This package provides the Eclipse Java core batch compiler.")
(license license:epl1.0)))
+;; This is needed for java-cisd-args4j
+(define-public java-ecj-3.5
+ (package (inherit java-ecj-3)
+ (version "3.5.1")
+ (source (origin
+ (method url-fetch/zipbomb)
+ (uri (string-append "http://archive.eclipse.org/eclipse/"
+ "downloads/drops/R-" version
+ "-200909170800/ecjsrc-" version ".zip"))
+ (sha256
+ (base32
+ "1vnl2mavisc567bip736xzsvvbjif5279wc4a7pbdik5wlir8qr7"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:tests? #f ; none included
+ #:jdk ,icedtea-7 ; doesn't build with JDK8+
+ #:build-target "build"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-manifest
+ (lambda _
+ ;; Record the main class to make ecj executable.
+ (with-atomic-file-replacement "META-INF/MANIFEST.MF"
+ (lambda (in out)
+ (dump-port in out)
+ (display "Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
+ out)))))
+ (replace 'install (install-jars ".")))))
+ (native-inputs
+ `(("unzip" ,unzip)))))
+
(define-public java-classpathx-servletapi
(package
(name "java-classpathx-servletapi")
--
cgit v1.3
From 602f54f436d41634adaa56e4ff645a6bad202daf Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:36:58 +0100
Subject: gnu: java-jnacl: Use invoke.
* gnu/packages/java.scm (java-jnacl)[arguments]: Use "invoke".
---
gnu/packages/java.scm | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 7a90bfba0..bc2fb32eb 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7538,18 +7538,18 @@ to use.")
#t))
(replace 'check
(lambda _
- (system* "ant" "compile-tests")
- (and
- (zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
- ":build/classes"
- ":build/test-classes")
- "org.testng.TestNG" "-testclass"
- "build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class"))
- (zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
- ":build/classes"
- ":build/test-classes")
- "org.testng.TestNG" "-testclass"
- "build/test-classes/com/neilalexander/jnacl/NaClTest.class"))))))))
+ (invoke "ant" "compile-tests")
+ (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+ ":build/classes"
+ ":build/test-classes")
+ "org.testng.TestNG" "-testclass"
+ "build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class")
+ (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+ ":build/classes"
+ ":build/test-classes")
+ "org.testng.TestNG" "-testclass"
+ "build/test-classes/com/neilalexander/jnacl/NaClTest.class")
+ #t)))))
(native-inputs
`(("java-testng" ,java-testng)
("java-fest-util" ,java-fest-util)
--
cgit v1.3
From e15864281615d3bc72d772b9bea704accd9262c3 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:39:38 +0100
Subject: gnu: java-jnacl: Correct license.
* gnu/packages/java.scm (java-jnacl)[license]: Change to BSD-2.
---
gnu/packages/java.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index bc2fb32eb..e7715b4b3 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7558,7 +7558,7 @@ to use.")
(synopsis "Java implementation of NaCl")
(description "Pure Java implementation of the NaCl: Networking and
Cryptography library.")
- (license license:mpl2.0)))
+ (license license:bsd-2)))
(define-public java-mvel2
(package
--
cgit v1.3
From 8333c206a90977c5080313b1cb85b0513bd8e12d Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:40:02 +0100
Subject: gnu: java-jnacl: Simplify build phase.
* gnu/packages/java.scm (java-jnacl)[arguments]: Simplify "fix-tests" phase.
---
gnu/packages/java.scm | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index e7715b4b3..a197da819 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7531,9 +7531,8 @@ to use.")
(modify-phases %standard-phases
(add-before 'build 'fix-tests
(lambda _
- (substitute* "src/test/java/com/neilalexander/jnacl/NaClTest.java"
- (("assertions.Assertions") "assertions.api.Assertions"))
- (substitute* "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java"
+ (substitute* '("src/test/java/com/neilalexander/jnacl/NaClTest.java"
+ "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java")
(("assertions.Assertions") "assertions.api.Assertions"))
#t))
(replace 'check
--
cgit v1.3
From 3e87923a67bb1352651ee0877633934fa0457f72 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:43:05 +0100
Subject: gnu: java-jnacl: Update to 0.1.0-2.094e819.
* gnu/packages/java.scm (java-jnacl): Update to 0.1.0-2.094e819.
---
gnu/packages/java.scm | 94 ++++++++++++++++++++++++++-------------------------
1 file changed, 48 insertions(+), 46 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a197da819..c527e6898 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7511,53 +7511,55 @@ to use.")
(license license:asl2.0)))
(define-public java-jnacl
- (package
- (name "java-jnacl")
- (version "0.1.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/neilalexander/jnacl")
- (commit "40c322e0a42637ab17cdf941138eeaf2494055f8")))
- (sha256
- (base32
- "1pspnmp44q61a2q4bpslpxw86rfn8s5l0xgvyrikqgdvg7ypx597"))))
- (build-system ant-build-system)
- (arguments
- `(#:jar-name "java-jnacl.jar"
- #:source-dir "src/main/java"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'fix-tests
- (lambda _
- (substitute* '("src/test/java/com/neilalexander/jnacl/NaClTest.java"
- "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java")
- (("assertions.Assertions") "assertions.api.Assertions"))
- #t))
- (replace 'check
- (lambda _
- (invoke "ant" "compile-tests")
- (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
- ":build/classes"
- ":build/test-classes")
- "org.testng.TestNG" "-testclass"
- "build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class")
- (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
- ":build/classes"
- ":build/test-classes")
- "org.testng.TestNG" "-testclass"
- "build/test-classes/com/neilalexander/jnacl/NaClTest.class")
- #t)))))
- (native-inputs
- `(("java-testng" ,java-testng)
- ("java-fest-util" ,java-fest-util)
- ("java-fest-assert" ,java-fest-assert)))
- (home-page "https://github.com/neilalexander/jnacl")
- (synopsis "Java implementation of NaCl")
- (description "Pure Java implementation of the NaCl: Networking and
+ (let ((commit "094e819afdd63ea81a499b3bcb42a271006bebd9")
+ (revision "2"))
+ (package
+ (name "java-jnacl")
+ (version (string-append "0.1.0-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/neilalexander/jnacl.git")
+ (commit commit)))
+ (sha256
+ (base32
+ "1d6g6xhn83byv5943n7935wwjsk0ibk0qdvqgr699qqgqqmwisbb"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "java-jnacl.jar"
+ #:source-dir "src/main/java"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'fix-tests
+ (lambda _
+ (substitute* '("src/test/java/com/neilalexander/jnacl/NaClTest.java"
+ "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java")
+ (("assertions.Assertions") "assertions.api.Assertions"))
+ #t))
+ (replace 'check
+ (lambda _
+ (invoke "ant" "compile-tests")
+ (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+ ":build/classes"
+ ":build/test-classes")
+ "org.testng.TestNG" "-testclass"
+ "build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class")
+ (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+ ":build/classes"
+ ":build/test-classes")
+ "org.testng.TestNG" "-testclass"
+ "build/test-classes/com/neilalexander/jnacl/NaClTest.class")
+ #t)))))
+ (native-inputs
+ `(("java-testng" ,java-testng)
+ ("java-fest-util" ,java-fest-util)
+ ("java-fest-assert" ,java-fest-assert)))
+ (home-page "https://github.com/neilalexander/jnacl")
+ (synopsis "Java implementation of NaCl")
+ (description "Pure Java implementation of the NaCl: Networking and
Cryptography library.")
- (license license:bsd-2)))
+ (license license:bsd-2))))
(define-public java-mvel2
(package
--
cgit v1.3
From 8c7d32e07c39df8a0d95c142eb46ecf0f8b65e57 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:43:56 +0100
Subject: gnu: java-jnacl: Do not prefix jar with "java-".
* gnu/packages/java.scm (java-jnacl)[arguments]: Rename jar to "jnacl.jar".
---
gnu/packages/java.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index c527e6898..6350b57a8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7526,7 +7526,7 @@ to use.")
"1d6g6xhn83byv5943n7935wwjsk0ibk0qdvqgr699qqgqqmwisbb"))))
(build-system ant-build-system)
(arguments
- `(#:jar-name "java-jnacl.jar"
+ `(#:jar-name "jnacl.jar"
#:source-dir "src/main/java"
#:jdk ,icedtea-8
#:phases
--
cgit v1.3
From 080d0b605aa7cb0dc433d98b24a0bfeea63a2798 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:45:53 +0100
Subject: gnu: java-commons-jexl-2: Use invoke.
* gnu/packages/java.scm (java-commons-jexl-2)[arguments]: Use invoke.
---
gnu/packages/java.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 6350b57a8..830ecaf2f 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7654,8 +7654,9 @@ configuration and string construction.")
(add-before 'build 'run-javacc
(lambda _
(with-directory-excursion "src/main/java/org/apache/commons/jexl2/parser/"
- (and (zero? (system* "java" "jjtree" "Parser.jjt"))
- (zero? (system* "java" "javacc" "Parser.jj")))))))))
+ (invoke "java" "jjtree" "Parser.jjt")
+ (invoke "java" "javacc" "Parser.jj"))
+ #t)))))
(inputs
`(("java-commons-logging-minimal" ,java-commons-logging-minimal)))
(native-inputs
--
cgit v1.3
From 6338ea9a88cb651a9796bdb2a62786d61acd5ad1 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:48:49 +0100
Subject: gnu: java-hawtjni: Simplify build phases.
* gnu/packages/java.scm (java-hawtjni)[arguments]: Use "invoke" instead of
"system*"; use "install-file" instead of "mkdir-p" and "copy-file".
---
gnu/packages/java.scm | 25 +++++++++++--------------
1 file changed, 11 insertions(+), 14 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 830ecaf2f..579ab9b41 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -8384,26 +8384,23 @@ including pre-existing objects that you do not have source-code of.")
(modify-phases %standard-phases
(add-before 'build 'build-native
(lambda* (#:key inputs #:allow-other-keys)
- (with-directory-excursion "hawtjni-generator/src/main/resources/"
- (and
- (system* "gcc" "-c" "hawtjni.c" "-o" "hawtjni.o"
- "-fPIC" "-O2"
- (string-append "-I" (assoc-ref inputs "jdk") "/include/linux"))
- (system* "gcc" "-c" "hawtjni-callback.c" "-o" "hawtjni-callback.o"
- "-fPIC" "-O2"
- (string-append "-I" (assoc-ref inputs "jdk") "/include/linux"))
- (system* "gcc" "-o" "libhawtjni.so" "-shared"
- "hawtjni.o" "hawtjni-callback.o")))))
+ (let ((include (string-append "-I" (assoc-ref inputs "jdk") "/include/linux")))
+ (with-directory-excursion "hawtjni-generator/src/main/resources/"
+ (invoke "gcc" "-c" "hawtjni.c" "-o" "hawtjni.o"
+ "-fPIC" "-O2" include)
+ (invoke "gcc" "-c" "hawtjni-callback.c" "-o" "hawtjni-callback.o"
+ "-fPIC" "-O2" include)
+ (invoke "gcc" "-o" "libhawtjni.so" "-shared"
+ "hawtjni.o" "hawtjni-callback.o")))
+ #t))
(add-after 'install 'install-native
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(inc (string-append out "/include")))
- (mkdir-p lib)
- (mkdir-p inc)
(with-directory-excursion "hawtjni-generator/src/main/resources/"
- (copy-file "libhawtjni.so" (string-append lib "/libhawtjni.so"))
- (copy-file "hawtjni.h" (string-append inc "/hawtjni.h"))))
+ (install-file "libhawtjni.so" lib)
+ (install-file "hawtjni.h" inc)))
#t)))))
(inputs
`(("java-commons-cli" ,java-commons-cli)
--
cgit v1.3
From 3d6925ef51995cf4aab1c128cfcb6c322c0c5467 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:52:00 +0100
Subject: gnu: java-jansi-native: Fix description.
* gnu/packages/java.scm (java-jansi-native)[description]: Replace placeholder
text with an actual description.
---
gnu/packages/java.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 579ab9b41..1c8435830 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -8465,8 +8465,9 @@ that is part of the SWT Tools project.")
`(("java-hawtjni" ,java-hawtjni)))
(home-page "https://fusesource.github.io/jansi/")
(synopsis "Native library for jansi")
- (description "Java-jansi-native contains the native library for the jansi
-frobnication library/framework.")
+ (description "This package provides the native library for jansi, a small
+Java library that allows you to use ANSI escape sequences to format your
+console output.")
(license license:asl2.0)))
(define-public java-jansi
--
cgit v1.3
From e85c1bf6cd72887eb20680ac8ebf578b5831e6f6 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:53:15 +0100
Subject: gnu: java-jansi-native: Simplify.
* gnu/packages/java.scm (java-jansi-native)[arguments]: Use "invoke"; remove
useless "mkdir-p".
---
gnu/packages/java.scm | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 1c8435830..3c208ffe6 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -8437,14 +8437,14 @@ that is part of the SWT Tools project.")
(with-directory-excursion "src/main/native-package/src"
(substitute* "jansi_ttyname.c"
(("#include \"jansi_.*") ""))
- (and
- (system* "gcc" "-c" "jansi_ttyname.c" "-o" "jansi_ttyname.o"
- (string-append "-I" (assoc-ref inputs "java-hawtjni")
- "/include")
- (string-append "-I" (assoc-ref inputs "jdk")
- "/include/linux")
- "-fPIC" "-O2")
- (system* "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o")))))
+ (invoke "gcc" "-c" "jansi_ttyname.c" "-o" "jansi_ttyname.o"
+ (string-append "-I" (assoc-ref inputs "java-hawtjni")
+ "/include")
+ (string-append "-I" (assoc-ref inputs "jdk")
+ "/include/linux")
+ "-fPIC" "-O2")
+ (invoke "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o")
+ #t)))
(add-before 'build 'install-native
(lambda _
(let ((dir (string-append "build/classes/META-INF/native/"
@@ -8457,7 +8457,6 @@ that is part of the SWT Tools project.")
#t))
(add-after 'install 'install-native
(lambda* (#:key outputs #:allow-other-keys)
- (mkdir-p (string-append (assoc-ref outputs "out") "/include"))
(install-file "src/main/native-package/src/jansi.h"
(string-append (assoc-ref outputs "out") "/include"))
#t)))))
--
cgit v1.3
From 13f38d31a4cf3d3dcc7935c21b3288c65f143f00 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:56:02 +0100
Subject: gnu: antlr3-3.1: Use invoke.
* gnu/packages/java.scm (antlr3-3.1)[arguments]: Use invoke.
---
gnu/packages/java.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3c208ffe6..b3a0c8936 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -5709,12 +5709,13 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
(for-each (lambda (file)
(display file)
(newline)
- (system* "antlr" "-o" dir (string-append dir file)))
+ (invoke "antlr" "-o" dir (string-append dir file)))
'("antlr.g" "antlr.print.g" "assign.types.g"
"buildnfa.g" "define.g")))
(format #t "codegen.g\n")
- (system* "antlr" "-o" "src/org/antlr/codegen"
- "src/org/antlr/codegen/codegen.g")))
+ (invoke "antlr" "-o" "src/org/antlr/codegen"
+ "src/org/antlr/codegen/codegen.g")
+ #t))
(add-before 'build 'fix-build-xml
(lambda _
(substitute* "build.xml"
--
cgit v1.3
From ec32bc9860fc54b8a4f874f7c67465172b2e1ec2 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 20:56:32 +0100
Subject: gnu: antlr3-3.1: Remove version from package name.
* gnu/packages/java.scm (antlr3-3.1)[name]: Remove.
[arguments]: Adjust accordingly.
---
gnu/packages/java.scm | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index b3a0c8936..9e9c10125 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -5666,7 +5666,6 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
(define antlr3-3.1
(package
(inherit antlr3)
- (name "antlr3-3.1")
(version "3.1")
(source (origin
(method url-fetch)
@@ -5677,7 +5676,7 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
(base32
"0sfimc9cpbgrihz4giyygc8afgpma2c93yqpwb951giriri6x66z"))))
(arguments
- `(#:jar-name (string-append ,name "-" ,version ".jar")
+ `(#:jar-name (string-append "antlr3-" ,version ".jar")
#:source-dir "src:runtime/Java/src"
#:tests? #f
#:phases
--
cgit v1.3
From 1b6bc5167519d5c87b87fd4d7e367fbbe54c9b2e Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 21:00:24 +0100
Subject: gnu: java-lz4: Use invoke.
* gnu/packages/java.scm (java-lz4)[arguments]: Use invoke.
---
gnu/packages/java.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9e9c10125..8cc3b7201 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7696,7 +7696,8 @@ by technical operatives or consultants working with enterprise platforms.")
(add-before 'configure 'generate-source
(lambda _
(with-directory-excursion "src/build/source_templates"
- (zero? (system* "mvel2" "../gen_sources.mvel" "../../java"))))))))
+ (invoke "mvel2" "../gen_sources.mvel" "../../java"))
+ #t)))))
(native-inputs
`(("mvel" ,java-mvel2)))
(home-page "https://jpountz.github.io/lz4-java")
--
cgit v1.3
From 9be4b9fa582090a74395e18883e9d97c1b1119e2 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 21:02:03 +0100
Subject: gnu: java-bouncycastle-bcprov: Use invoke.
* gnu/packages/java.scm (java-bouncycastle-bcprov)[arguments]: Use invoke.
---
gnu/packages/java.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 8cc3b7201..113c75603 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7727,7 +7727,8 @@ algorithms and xxHash hashing algorithm.")
(lambda _
(mkdir-p "src")
(with-directory-excursion "src"
- (zero? (system* "unzip" "../src.zip"))))))))
+ (invoke "unzip" "../src.zip"))
+ #t)))))
(native-inputs
`(("unzip" ,unzip)
("junit" ,java-junit)))
--
cgit v1.3
From 201084ac1ff9cace8350ff820f1b30b1720540fe Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Tue, 27 Feb 2018 21:03:37 +0100
Subject: gnu: java-bouncycastle-bcpkix: Use invoke.
* gnu/packages/java.scm (java-bouncycastle-bcpkix)[arguments]: Use invoke.
---
gnu/packages/java.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 113c75603..0f8c04e8b 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7759,7 +7759,8 @@ for the Java programming language.")
(lambda _
(mkdir-p "src")
(with-directory-excursion "src"
- (zero? (system* "unzip" "../src.zip"))))))))
+ (invoke "unzip" "../src.zip"))
+ #t)))))
(native-inputs
`(("unzip" ,unzip)
("junit" ,java-junit)))
--
cgit v1.3
From 30d554732a449c9d5dea630a07f687f1c9328393 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Wed, 22 Nov 2017 19:25:34 +0100
Subject: gnu: Add java-cisd-base.
* gnu/packages/java.scm (java-cisd-base): New variable.
---
gnu/packages/java.scm | 149 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 149 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 0f8c04e8b..1e2b30d8d 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2084,6 +2084,155 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
(native-inputs
`(("unzip" ,unzip)))))
+(define-public java-cisd-base
+ (let ((revision 38938)
+ (base-version "14.12.0"))
+ (package
+ (name "java-cisd-base")
+ (version (string-append base-version "-" (number->string revision)))
+ (source (origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "http://svnsis.ethz.ch/repos/cisd/"
+ "base/tags/release/"
+ (version-major+minor base-version)
+ ".x/" base-version "/base/"))
+ (revision revision)))
+ (file-name (string-append "java-cisd-base-" version "-checkout"))
+ (sha256
+ (base32
+ "1i5adyf7nzclb0wydgwa1az04qliid8035vpahaandmkmigbnxiy"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete included gradle jar
+ (delete-file-recursively "gradle/wrapper")
+ ;; Delete pre-built native libraries
+ (delete-file-recursively "libs")
+ #t))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:make-flags '("-file" "build/build.xml")
+ #:test-target "jar-test"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-build-resources
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-recursively (assoc-ref inputs "build-resources")
+ "../build_resources")
+ #t))
+ (add-after 'unpack-build-resources 'fix-dependencies
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build/build.xml"
+ (("\\$\\{lib\\}/testng/testng-jdk15.jar")
+ (string-append (assoc-ref inputs "java-testng")
+ "/share/java/java-testng.jar"))
+ (("\\$\\{lib\\}/commons-lang/commons-lang.jar")
+ (string-append (assoc-ref inputs "java-commons-lang")
+ "/share/java/commons-lang-"
+ ,(package-version java-commons-lang) ".jar"))
+ (("\\$\\{lib\\}/commons-io/commons-io.jar")
+ (string-append (assoc-ref inputs "java-commons-io")
+ "/share/java/commons-io-"
+ ,(package-version java-commons-io)
+ "-SNAPSHOT.jar"))
+ ;; Remove dependency on svn
+ (("string revision))
+ (("\\$\\{version.number\\}") ,base-version))
+ ;; Remove dependency on classycle
+ (substitute* "../build_resources/ant/build-common.xml"
+ (("string revision)))
+ (source (origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "http://svnsis.ethz.ch/repos/cisd/"
+ "args4j/tags/release/"
+ (version-major+minor base-version)
+ ".x/" base-version "/args4j/"))
+ (revision revision)))
+ (file-name (string-append "java-cisd-args4j-" version "-checkout"))
+ (sha256
+ (base32
+ "0hhqznjaivq7ips7mkwas78z42s6djsm20rrs7g1zd59rcsakxn2"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:make-flags '("-file" "build/build.xml")
+ #:tests? #f ; there are no tests
+ ;; There are weird build failures with JDK8, such as: "The type
+ ;; java.io.ObjectInputStream cannot be resolved. It is indirectly
+ ;; referenced from required .class files"
+ #:jdk ,icedtea-7
+ #:modules ((guix build ant-build-system)
+ (guix build utils)
+ (guix build java-utils)
+ (sxml simple)
+ (sxml transform)
+ (sxml xpath))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-build-resources
+ (lambda* (#:key inputs #:allow-other-keys)
+ (mkdir-p "../build_resources")
+ (invoke "tar" "xf" (assoc-ref inputs "build-resources")
+ "-C" "../build_resources"
+ "--strip-components=1")
+ (mkdir-p "../build_resources/lib")
+ #t))
+ (add-after 'unpack-build-resources 'fix-dependencies
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; FIXME: There should be a more convenient abstraction for
+ ;; editing XML files.
+ (with-directory-excursion "../build_resources/ant/"
+ (chmod "build-common.xml" #o664)
+ (call-with-output-file "build-common.xml.new"
+ (lambda (port)
+ (sxml->xml
+ (pre-post-order
+ (with-input-from-file "build-common.xml"
+ (lambda _ (xml->sxml #:trim-whitespace? #t)))
+ `(;; Remove dependency on classycle and custom ant tasks
+ (taskdef . ,(lambda (tag . kids)
+ (let ((name ((sxpath '(name *text*)) kids)))
+ (if (or (member "build-info" name)
+ (member "dependency-checker" name)
+ (member "build-java-subprojects" name)
+ (member "project-classpath" name))
+ '() ; skip
+ `(,tag ,@kids)))))
+ (typedef . ,(lambda (tag . kids)
+ (let ((name ((sxpath '(name *text*)) kids)))
+ (if (member "recursive-jar" name)
+ '() ; skip
+ `(,tag ,@kids)))))
+ (build-java-subprojects . ,(lambda _ '()))
+ ;; Ignore everything else
+ (*default* . ,(lambda (tag . kids) `(,tag ,@kids)))
+ (*text* . ,(lambda (_ txt) txt))))
+ port)))
+ (rename-file "build-common.xml.new" "build-common.xml"))
+ (substitute* "build/build.xml"
+ (("\\$\\{lib\\}/cisd-base/cisd-base.jar")
+ (string-append (assoc-ref inputs "java-cisd-base")
+ "/share/java/sis-base.jar"))
+ ;; Remove dependency on svn
+ (("string revision))
+ (("\\$\\{version.number\\}") ,base-version)
+ ;; Don't use custom ant tasks.
+ (("recursive-jar") "jar")
+ (("string revision)))
+ (source (origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "http://svnsis.ethz.ch/repos/cisd/"
+ "jhdf5/tags/release/"
+ (version-major+minor base-version)
+ ".x/" base-version "/jhdf5/"))
+ (revision revision)))
+ (file-name (string-append "java-cisd-jhdf5-" version "-checkout"))
+ (sha256
+ (base32
+ "13i17s2hn0q9drdqvp8csy7770p3hdbh9rp30ihln2ldkfawdmz0"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete included gradle jar
+ (delete-file-recursively "gradle/wrapper")
+ ;; Delete pre-built native libraries
+ (delete-file-recursively "libs")
+ #t))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:make-flags '("-file" "build/build.xml")
+ #:build-target "jar-all"
+ #:test-target "jar-test"
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ ;; Don't erase results from the build phase when building tests.
+ (add-after 'unpack 'separate-test-target-from-clean
+ (lambda _
+ (substitute* "build/build.xml"
+ (("\"jar-test\" depends=\"clean, ")
+ "\"jar-test\" depends=\""))
+ #t))
+ (add-after 'unpack 'unpack-build-resources
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-recursively (assoc-ref inputs "build-resources")
+ "../build_resources")
+ (delete-file-recursively "../build_resources/lib/")
+ (mkdir-p "../build_resources/lib")
+ ;; Remove dependency on classycle
+ (substitute* "../build_resources/ant/build-common.xml"
+ (("string revision))
+ (("\\$\\{version.number\\}") ,base-version))
+ #t))
+ (add-after 'unpack-build-resources 'fix-dependencies
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "../build_resources/ant/build-common.xml"
+ (("../libraries/testng/testng-jdk15.jar")
+ (string-append (assoc-ref inputs "java-testng")
+ "/share/java/java-testng.jar")))
+ (substitute* "build/build.xml"
+ (("\\$\\{lib\\}/sis-base/sis-base.jar")
+ (string-append (assoc-ref inputs "java-cisd-base")
+ "/share/java/sis-base.jar"))
+ (("\\$\\{lib\\}/cisd-args4j/cisd-args4j.jar")
+ (string-append (assoc-ref inputs "java-cisd-args4j")
+ "/share/java/cisd-args4j.jar"))
+ (("\\$\\{lib\\}/commons-lang/commons-lang.jar")
+ (string-append (assoc-ref inputs "java-commons-lang")
+ "/share/java/commons-lang-"
+ ,(package-version java-commons-lang) ".jar"))
+ (("\\$\\{lib\\}/commons-io/commons-io.jar")
+ (string-append (assoc-ref inputs "java-commons-io")
+ "/share/java/commons-io-"
+ ,(package-version java-commons-io)
+ "-SNAPSHOT.jar"))
+ (("\\$\\{lib\\}/testng/testng-jdk15.jar")
+ (string-append (assoc-ref inputs "java-testng")
+ "/share/java/java-testng.jar"))
+ (("\\$\\{lib\\}/junit4/junit.jar")
+ (string-append (assoc-ref inputs "java-junit")
+ "/share/java/junit.jar"))
+ (("\\$\\{lib\\}/jmock/hamcrest/hamcrest-core.jar")
+ (string-append (assoc-ref inputs "java-hamcrest-core")
+ "/share/java/hamcrest-core.jar")))
+ ;; Remove dependency on ch.rinn.restrictions
+ (with-directory-excursion "source/java/ch/systemsx/cisd/hdf5/"
+ (substitute* '("BitSetConversionUtils.java"
+ "HDF5Utils.java")
+ (("import ch.rinn.restrictions.Private;") "")
+ (("@Private") "")))
+ (with-directory-excursion "sourceTest/java/ch/systemsx/cisd/hdf5/"
+ (substitute* '("BitSetConversionTest.java"
+ "h5ar/HDF5ArchiverTest.java")
+ (("import ch.rinn.restrictions.Friend;") "")
+ (("@Friend.*") ""))
+ ;; Remove leftovers from removing @Friend
+ (substitute* "h5ar/HDF5ArchiverTest.java"
+ (("\\{ HDF5Archiver.class, IdCache.class, LinkRecord.class \\}\\)")
+ "")))
+ #t))
+ (add-before 'configure 'build-native-library
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((jdk (assoc-ref inputs "jdk"))
+ (hdf5 (assoc-ref inputs "hdf5"))
+ (dir ,(match (%current-system)
+ ("i686-linux"
+ "i386-Linux")
+ ((or "armhf-linux" "aarch64-linux")
+ "arm-Linux")
+ ((or "x86_64-linux")
+ "amd64-Linux")
+ (_ "unknown-Linux"))))
+ (with-directory-excursion "source/c"
+ (apply invoke `("gcc" "-shared" "-O3"
+ "-fPIC"
+ "-Wl,--exclude-libs,ALL"
+ ,@(find-files "jhdf5" "\\.c$")
+ ,@(find-files "hdf-java" "\\.c$")
+ ,(string-append "-I" hdf5 "/include")
+ ,(string-append "-I" jdk "/include")
+ ,(string-append "-I" jdk "/include/linux")
+ ,(string-append hdf5 "/lib/libhdf5.a")
+ "-o" "libjhdf5.so" "-lz")))
+ (install-file "source/c/libjhdf5.so"
+ (string-append "libs/native/jhdf5/" dir))
+ #t)))
+ ;; In the "check" phase we only build the test executable.
+ (add-after 'check 'run-tests
+ (lambda _
+ (invoke "java" "-jar" "targets/dist/sis-jhdf5-test.jar")
+ (delete-file "targets/dist/sis-jhdf5-test.jar")
+ #t))
+ (replace 'install
+ (install-jars "targets/dist")))))
+ (inputs
+ `(("java-cisd-base" ,java-cisd-base)
+ ("java-cisd-args4j" ,java-cisd-args4j)
+ ("java-commons-lang" ,java-commons-lang)
+ ("java-commons-io" ,java-commons-io)
+ ("hdf5" ,hdf5)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("jdk" ,icedtea-8)
+ ("java-testng" ,java-testng)
+ ("java-junit" ,java-junit)
+ ("java-jmock" ,java-jmock)
+ ("java-hamcrest-core" ,java-hamcrest-core)
+ ("build-resources"
+ ,(origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "http://svnsis.ethz.ch/repos/cisd/"
+ "jhdf5/tags/release/"
+ (version-major+minor base-version)
+ ".x/" base-version
+ "/build_resources/"))
+ (revision revision)))
+ (sha256
+ (base32
+ "0b6335gkm4x895rac6kfg9d3rpq0sy19ph4zpg2gyw6asfsisjhk"))))))
+ (home-page "https://wiki-bsse.ethz.ch/display/JHDF5/")
+ (synopsis "Java binding for HDF5")
+ (description "JHDF5 is a high-level API in Java for reading and writing
+HDF5 files, building on the libraries provided by the HDF Group.")
+ ;; The C sources are under a non-copyleft license, which looks like a
+ ;; variant of the BSD licenses. The whole package is under the ASL2.0.
+ (license (list license:asl2.0
+ (license:non-copyleft "file://source/c/COPYING"))))))
+
(define-public java-classpathx-servletapi
(package
(name "java-classpathx-servletapi")
--
cgit v1.3
From 93abc975feca4d877b0a14a0dd8f3613dcbd7c9b Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Thu, 1 Mar 2018 19:41:38 +0100
Subject: gnu: Add java-openchart2.
* gnu/packages/java.scm (java-openchart2): New variable.
---
gnu/packages/java.scm | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 298874f75..1e671b90b 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -9292,3 +9292,44 @@ against expected outcomes.")
("java-junit" ,java-junit)))
(native-inputs
`(("java-mockito-1" ,java-mockito-1)))))
+
+(define-public java-openchart2
+ (package
+ (name "java-openchart2")
+ (version "1.4.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://download.approximatrix.com/openchart2/"
+ "openchart2-" version ".source.zip"))
+ (sha256
+ (base32
+ "1xq96zm5r02n1blja0072jmmsifmxc40lbyfbnmcnr6mw42frh4g"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-junit-errors
+ (lambda _
+ (with-directory-excursion "unittest/src/com/approximatrix/charting/"
+ (substitute* '("coordsystem/ticklocator/NumericXTickLocatorTest.java"
+ "coordsystem/ticklocator/NumericYTickLocatorTest.java"
+ "coordsystem/ticklocator/ObjectXTickLocatorTest.java"
+ "model/DefaultChartDataModelConstraintsTest.java"
+ "model/MultiScatterDataModelConstraintsTest.java"
+ "model/threedimensional/DotPlotDataModelConstraintsTest.java")
+ (("(assertEquals[^;]+);" before _)
+ (string-append (string-drop-right before 2) ", 1E-6);"))))
+ #t))
+ (replace 'install (install-jars ".")))))
+ (native-inputs
+ `(("unzip" ,unzip)
+ ("java-junit" ,java-junit)
+ ("java-hamcrest-core" ,java-hamcrest-core)))
+ (home-page "http://approximatrix.com/products/openchart2/")
+ (synopsis "Simple plotting for Java")
+ (description "Openchart2 provides a simple, yet powerful, interface for
+Java programmers to create two-dimensional charts and plots. The library
+features an assortment of graph styles, including advanced scatter plots, bar
+graphs, and pie charts.")
+ (license license:lgpl2.1+)))
--
cgit v1.3
From 4c763b4d6792adb0a8d3f61a241e490385cc0683 Mon Sep 17 00:00:00 2001
From: Gábor Boskovits
Date: Sun, 4 Mar 2018 14:13:47 +0100
Subject: gnu: antlr3-3.1: Fix java8 issue.
* gnu/packages/java.scm (antlr3-3.1)[source]: Add patch.
* gnu/packages/patches/antlr3-3_1-fix-java8-compilation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Danny Milosavljevic
---
gnu/local.mk | 1 +
gnu/packages/java.scm | 4 ++-
.../patches/antlr3-3_1-fix-java8-compilation.patch | 35 ++++++++++++++++++++++
3 files changed, 39 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/antlr3-3_1-fix-java8-compilation.patch
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/local.mk b/gnu/local.mk
index 9684d949f..dffecfc7e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -553,6 +553,7 @@ dist_patch_DATA = \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
+ %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
%D%/packages/patches/ao-cad-aarch64-support.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 1e671b90b..cda7f0e01 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6113,7 +6113,9 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
version ".tar.gz"))
(sha256
(base32
- "0sfimc9cpbgrihz4giyygc8afgpma2c93yqpwb951giriri6x66z"))))
+ "0sfimc9cpbgrihz4giyygc8afgpma2c93yqpwb951giriri6x66z"))
+ (patches
+ (search-patches "antlr3-3_1-fix-java8-compilation.patch"))))
(arguments
`(#:jar-name (string-append "antlr3-" ,version ".jar")
#:source-dir "src:runtime/Java/src"
diff --git a/gnu/packages/patches/antlr3-3_1-fix-java8-compilation.patch b/gnu/packages/patches/antlr3-3_1-fix-java8-compilation.patch
new file mode 100644
index 000000000..0c4deb024
--- /dev/null
+++ b/gnu/packages/patches/antlr3-3_1-fix-java8-compilation.patch
@@ -0,0 +1,35 @@
+Based on the upstream fix for the java8 compilation issue.
+Simplified patch.
+Upstream version of patch does not work with this source tree.
+
+The issue is that in java8 it is an error to pass null to
+removeAll. Results in null pointer exception. java7
+behaviour was to return the list unmodified.
+
+From db2a350c6d90efaa8dde949fa76005c2c5af45c4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=A1bor=20Boskovits?=
+Date: Fri, 5 Jan 2018 17:05:31 +0100
+Subject: [PATCH] Fix java8 compilation.
+
+---
+ src/org/antlr/tool/CompositeGrammar.java | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/org/antlr/tool/CompositeGrammar.java b/src/org/antlr/tool/CompositeGrammar.java
+index f1408e7..7e02431 100644
+--- a/src/org/antlr/tool/CompositeGrammar.java
++++ b/src/org/antlr/tool/CompositeGrammar.java
+@@ -218,7 +218,9 @@ public class CompositeGrammar {
+ public List getIndirectDelegates(Grammar g) {
+ List direct = getDirectDelegates(g);
+ List delegates = getDelegates(g);
+- delegates.removeAll(direct);
++ if (direct != null) {
++ delegates.removeAll(direct);
++ }
+ return delegates;
+ }
+
+--
+2.15.1
+
--
cgit v1.3
From 48c8622010bd0cfc7bc82578772993178308a0b7 Mon Sep 17 00:00:00 2001
From: Gábor Boskovits
Date: Sun, 4 Mar 2018 14:16:37 +0100
Subject: gnu: antlr3-3.3: Fix java8 issue.
* gnu/packages/java.scm (antlr3-3.3)[source]: Add patch.
* gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Danny Milosavljevic
---
gnu/local.mk | 1 +
gnu/packages/java.scm | 4 ++-
.../patches/antlr3-3_3-fix-java8-compilation.patch | 35 ++++++++++++++++++++++
3 files changed, 39 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/local.mk b/gnu/local.mk
index dffecfc7e..2ef9b6859 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -554,6 +554,7 @@ dist_patch_DATA = \
%D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
+ %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \
%D%/packages/patches/ao-cad-aarch64-support.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index cda7f0e01..21e241d0f 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6023,7 +6023,9 @@ tree walking, and translation.")
version ".tar.gz"))
(sha256
(base32
- "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m"))))
+ "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m"))
+ (patches
+ (search-patches "antlr3-3_3-fix-java8-compilation.patch"))))
(arguments
`(#:jar-name (string-append ,name "-" ,version ".jar")
#:source-dir (string-join '("tool/src/main/java"
diff --git a/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch b/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch
new file mode 100644
index 000000000..a7d6be9b6
--- /dev/null
+++ b/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch
@@ -0,0 +1,35 @@
+Based on the upstream fix for the java8 compilation issue.
+Simplified patch.
+Upstream version of patch does not work with this source tree.
+
+The issue is that in java8 it is an error to pass null to
+removeAll. Results in null pointer exception. java7
+behaviour was to return the list unmodified.
+
+From 43867d50c05d1c06ab7220eb974a8874ae10c308 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=A1bor=20Boskovits?=
+Date: Fri, 5 Jan 2018 19:08:24 +0100
+Subject: [PATCH] Fix java8 complilation error.
+
+---
+ tool/src/main/java/org/antlr/tool/CompositeGrammar.java | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
+index f34ea73..63740a6 100644
+--- a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
++++ b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
+@@ -226,7 +226,9 @@ public class CompositeGrammar {
+ public List getIndirectDelegates(Grammar g) {
+ List direct = getDirectDelegates(g);
+ List delegates = getDelegates(g);
+- delegates.removeAll(direct);
++ if(direct != null) {
++ delegates.removeAll(direct);
++ }
+ return delegates;
+ }
+
+--
+2.15.1
+
--
cgit v1.3
From 0f2778029a536ceac93208f2e66af9d3e1ef44a7 Mon Sep 17 00:00:00 2001
From: Gábor Boskovits
Date: Sat, 3 Mar 2018 22:59:05 +0100
Subject: gnu: java-ops4j-pax-tinybundles: Use distribution bndlib version.
* gnu/packages/java.scm (java-ops4j-pax-tinybundles)[arguments]<#:phases>:
Modify fix-version to use the distibution version of java-aqute-bndlib.
---
gnu/packages/java.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 21e241d0f..5cc4a56f8 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -6980,7 +6980,8 @@ it manages project dependencies, gives diffs jars, and much more.")
;; packaging. It uses the version referenced in pom.xml. We replace
;; it with our own version.
(substitute* "src/test/java/org/ops4j/pax/tinybundles/bnd/BndTest.java"
- (("2.4.0.201411031534") "3.4.0")))))))
+ (("[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*")
+ ,(package-version java-aqute-bndlib))))))))
(inputs
`(("lang" ,java-ops4j-base-lang)
("io" ,java-ops4j-base-io)
--
cgit v1.3
From f2785bd657c55cd36f436b1f6ee1af5d72683162 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Sat, 10 Mar 2018 18:35:31 +0100
Subject: gnu: icedtea-8: Build "out" reproducibly.
Partially fixes .
* gnu/packages/java.scm (icedtea-8)[arguments]: Add phases
"patch-keystore" and "strip-jar-timestamps".
[source]: Also patch DIST_ID in "configure" script.
---
gnu/packages/java.scm | 146 +++++++++++++++++++++++++++++---------------------
1 file changed, 86 insertions(+), 60 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 5cc4a56f8..bb20b1d46 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -1591,7 +1591,8 @@ IcedTea build harness.")
(modules '((guix build utils)))
(snippet
'(begin
- (substitute* "acinclude.m4"
+ (substitute* '("configure"
+ "acinclude.m4")
;; Do not embed build time
(("(DIST_ID=\"Custom build).*$" _ prefix)
(string-append prefix "\"\n"))
@@ -1600,65 +1601,90 @@ IcedTea build harness.")
"DIST_NAME=\"guix\""))
#t))))
(arguments
- (substitute-keyword-arguments (package-arguments icedtea-7)
- ((#:configure-flags flags)
- `(let ((jdk (assoc-ref %build-inputs "jdk")))
- `(;;"--disable-bootstrap"
- "--enable-bootstrap"
- "--enable-nss"
- "--disable-downloading"
- "--disable-system-pcsc"
- "--disable-system-sctp"
- "--disable-tests" ;they are run in the check phase instead
- "--with-openjdk-src-dir=./openjdk.src"
- ,(string-append "--with-jdk-home=" jdk))))
- ((#:phases phases)
- `(modify-phases ,phases
- (delete 'fix-x11-extension-include-path)
- (delete 'patch-paths)
- (delete 'set-additional-paths)
- (delete 'patch-patches)
- (add-after 'unpack 'patch-jni-libs
- ;; Hardcode dynamically loaded libraries.
- (lambda _
- (let* ((library-path (search-path-as-string->list
- (getenv "LIBRARY_PATH")))
- (find-library (lambda (name)
- (search-path
- library-path
- (string-append "lib" name ".so")))))
- (for-each
- (lambda (file)
- (catch 'decoding-error
- (lambda ()
- (substitute* file
- (("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
- _ name version)
- (format #f "\"~a\"" (find-library name)))
- (("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
- (format #f "\"~a\"" (find-library name)))))
- (lambda _
- ;; Those are safe to skip.
- (format (current-error-port)
- "warning: failed to substitute: ~a~%"
- file))))
- (find-files "openjdk.src/jdk/src/solaris/native"
- "\\.c|\\.h"))
- #t)))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((doc (string-append (assoc-ref outputs "doc")
- "/share/doc/icedtea"))
- (jre (assoc-ref outputs "out"))
- (jdk (assoc-ref outputs "jdk")))
- (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)))))))
+ `(#:imported-modules
+ ((guix build ant-build-system)
+ (guix build syscalls)
+ ,@%gnu-build-system-modules)
+ ,@(substitute-keyword-arguments (package-arguments icedtea-7)
+ ((#:modules modules)
+ `((guix build utils)
+ (guix build gnu-build-system)
+ ((guix build ant-build-system) #:prefix ant:)
+ (ice-9 match)
+ (ice-9 popen)
+ (srfi srfi-19)
+ (srfi srfi-26)))
+ ((#:configure-flags flags)
+ `(let ((jdk (assoc-ref %build-inputs "jdk")))
+ `( ;;"--disable-bootstrap"
+ "--enable-bootstrap"
+ "--enable-nss"
+ "--disable-downloading"
+ "--disable-system-pcsc"
+ "--disable-system-sctp"
+ "--disable-tests" ;they are run in the check phase instead
+ "--with-openjdk-src-dir=./openjdk.src"
+ ,(string-append "--with-jdk-home=" jdk))))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'fix-x11-extension-include-path)
+ (delete 'patch-paths)
+ (delete 'set-additional-paths)
+ (delete 'patch-patches)
+ ;; Prevent the keytool from recording the current time when
+ ;; adding certificates at build time.
+ (add-after 'unpack 'patch-keystore
+ (lambda _
+ (substitute* "openjdk.src/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java"
+ (("date = new Date\\(\\);")
+ "\
+date = (System.getenv(\"SOURCE_DATE_EPOCH\") != null) ?\
+new Date(Long.parseLong(System.getenv(\"SOURCE_DATE_EPOCH\"))) :\
+new Date();"))
+ #t))
+ (add-after 'unpack 'patch-jni-libs
+ ;; Hardcode dynamically loaded libraries.
+ (lambda _
+ (let* ((library-path (search-path-as-string->list
+ (getenv "LIBRARY_PATH")))
+ (find-library (lambda (name)
+ (search-path
+ library-path
+ (string-append "lib" name ".so")))))
+ (for-each
+ (lambda (file)
+ (catch 'decoding-error
+ (lambda ()
+ (substitute* file
+ (("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
+ _ name version)
+ (format #f "\"~a\"" (find-library name)))
+ (("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
+ (format #f "\"~a\"" (find-library name)))))
+ (lambda _
+ ;; Those are safe to skip.
+ (format (current-error-port)
+ "warning: failed to substitute: ~a~%"
+ file))))
+ (find-files "openjdk.src/jdk/src/solaris/native"
+ "\\.c|\\.h"))
+ #t)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((doc (string-append (assoc-ref outputs "doc")
+ "/share/doc/icedtea"))
+ (jre (assoc-ref outputs "out"))
+ (jdk (assoc-ref outputs "jdk")))
+ (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)))
+ (add-after 'install 'strip-jar-timestamps
+ (assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))))
(native-inputs
`(("jdk" ,icedtea-7 "jdk")
("openjdk-src"
--
cgit v1.3
From bfc007e13e055ca2d535a02aa7fc4ba7f6183150 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus
Date: Sun, 11 Mar 2018 20:02:10 +0100
Subject: gnu: java-hamcrest-all: Build with icedtea-8.
* gnu/packages/java.scm (java-hamcrest-all)[arguments]: Build with icedtea-8;
do not disable tests.
[inputs]: Remove java-hamcrest-core.
---
gnu/packages/java.scm | 49 ++++++++++++++++++++-----------------------------
1 file changed, 20 insertions(+), 29 deletions(-)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index bb20b1d46..43a3a6288 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -3886,39 +3886,30 @@ The jMock library
(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))))))
+ `(#:jdk ,icedtea-8
+ ,@(substitute-keyword-arguments (package-arguments java-hamcrest-core)
+ ((#: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-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
--
cgit v1.3
From 594bd3a08aeac24cf4939a4f06f2551ff8f61167 Mon Sep 17 00:00:00 2001
From: Gábor Boskovits
Date: Sat, 10 Mar 2018 11:45:36 +0100
Subject: gnu: java-jeromq: Fix tests.
* gnu/packages/patches/java-jeromq-fix-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/java.scm (java-jeromq)[source](patches): Add it.
[arguments](#test-exclude): Disable more failing tests.
---
gnu/local.mk | 1 +
gnu/packages/java.scm | 11 +-
gnu/packages/patches/java-jeromq-fix-tests.patch | 253 +++++++++++++++++++++++
3 files changed, 263 insertions(+), 2 deletions(-)
create mode 100644 gnu/packages/patches/java-jeromq-fix-tests.patch
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/local.mk b/gnu/local.mk
index fbf7b2a7c..5c95cdae2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -785,6 +785,7 @@ dist_patch_DATA = \
%D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
+ %D%/packages/patches/java-jeromq-fix-tests.patch \
%D%/packages/patches/java-powermock-fix-java-files.patch \
%D%/packages/patches/java-xerces-bootclasspath.patch \
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 43a3a6288..bdfd3fd41 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -8578,7 +8578,8 @@ protocol-independent framework to build mail and messaging applications.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "1gxkp7lv2ahymgrqdw94ncq54bmp4m4sw5m1x9gkp7l5bxn0xsyj"))))
+ "1gxkp7lv2ahymgrqdw94ncq54bmp4m4sw5m1x9gkp7l5bxn0xsyj"))
+ (patches (search-patches "java-jeromq-fix-tests.patch"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "java-jeromq.jar"
@@ -8592,7 +8593,13 @@ protocol-independent framework to build mail and messaging applications.")
;; Failures
"**/DealerSpecTest.java"
"**/CustomDecoderTest.java"
- "**/CustomEncoderTest.java")))
+ "**/CustomEncoderTest.java"
+ "**/ConnectRidTest.java"
+ "**/ReqSpecTest.java"
+ "**/PushPullSpecTest.java"
+ "**/PubSubHwmTest.java"
+ "**/RouterSpecTest.java"
+ "**/ProxyTest.java")))
(inputs
`(("java-jnacl" ,java-jnacl)))
(native-inputs
diff --git a/gnu/packages/patches/java-jeromq-fix-tests.patch b/gnu/packages/patches/java-jeromq-fix-tests.patch
new file mode 100644
index 000000000..5466b9270
--- /dev/null
+++ b/gnu/packages/patches/java-jeromq-fix-tests.patch
@@ -0,0 +1,253 @@
+From 5803aadd3f209eba1ffbb2cf7bf16778019dbee1 Mon Sep 17 00:00:00 2001
+From: fredoboulo
+Date: Fri, 23 Feb 2018 23:55:57 +0100
+Subject: [PATCH] Fix #524 : V1 and V2 protocol downgrades handle received data
+ in handshake buffer
+
+This patch is upstream pull request, see:
+https://gihub.com/zeromq/jeromq/pull/527.
+
+It is merged on commit c2afa9c, and we can drop it on the
+0.4.4 release.
+
+---
+ src/main/java/zmq/io/StreamEngine.java | 21 ++++++++++--
+ src/test/java/zmq/io/AbstractProtocolVersion.java | 41 +++++++++++++----------
+ src/test/java/zmq/io/V0ProtocolTest.java | 12 +++++++
+ src/test/java/zmq/io/V1ProtocolTest.java | 16 +++++++--
+ src/test/java/zmq/io/V2ProtocolTest.java | 16 +++++++--
+ 5 files changed, 81 insertions(+), 25 deletions(-)
+
+diff --git a/src/main/java/zmq/io/StreamEngine.java b/src/main/java/zmq/io/StreamEngine.java
+index b8933c92..fe2f2d8d 100644
+--- a/src/main/java/zmq/io/StreamEngine.java
++++ b/src/main/java/zmq/io/StreamEngine.java
+@@ -816,9 +816,7 @@ private boolean handshake()
+ assert (bufferSize == headerSize);
+
+ // Make sure the decoder sees the data we have already received.
+- greetingRecv.flip();
+- inpos = greetingRecv;
+- insize = greetingRecv.limit();
++ decodeDataAfterHandshake(0);
+
+ // To allow for interoperability with peers that do not forward
+ // their subscriptions, we inject a phantom subscription message
+@@ -846,6 +844,8 @@ else if (greetingRecv.get(revisionPos) == Protocol.V1.revision) {
+ }
+ encoder = new V1Encoder(errno, Config.OUT_BATCH_SIZE.getValue());
+ decoder = new V1Decoder(errno, Config.IN_BATCH_SIZE.getValue(), options.maxMsgSize, options.allocator);
++
++ decodeDataAfterHandshake(V2_GREETING_SIZE);
+ }
+ else if (greetingRecv.get(revisionPos) == Protocol.V2.revision) {
+ // ZMTP/2.0 framing.
+@@ -859,6 +859,8 @@ else if (greetingRecv.get(revisionPos) == Protocol.V2.revision) {
+ }
+ encoder = new V2Encoder(errno, Config.OUT_BATCH_SIZE.getValue());
+ decoder = new V2Decoder(errno, Config.IN_BATCH_SIZE.getValue(), options.maxMsgSize, options.allocator);
++
++ decodeDataAfterHandshake(V2_GREETING_SIZE);
+ }
+ else {
+ zmtpVersion = Protocol.V3;
+@@ -904,6 +906,19 @@ else if (greetingRecv.get(revisionPos) == Protocol.V2.revision) {
+ return true;
+ }
+
++ private void decodeDataAfterHandshake(int greetingSize)
++ {
++ final int pos = greetingRecv.position();
++ if (pos > greetingSize) {
++ // data is present after handshake
++ greetingRecv.position(greetingSize).limit(pos);
++
++ // Make sure the decoder sees this extra data.
++ inpos = greetingRecv;
++ insize = greetingRecv.remaining();
++ }
++ }
++
+ private Msg identityMsg()
+ {
+ Msg msg = new Msg(options.identitySize);
+diff --git a/src/test/java/zmq/io/AbstractProtocolVersion.java b/src/test/java/zmq/io/AbstractProtocolVersion.java
+index e60db403..aa06b4a7 100644
+--- a/src/test/java/zmq/io/AbstractProtocolVersion.java
++++ b/src/test/java/zmq/io/AbstractProtocolVersion.java
+@@ -18,15 +18,18 @@
+ import zmq.SocketBase;
+ import zmq.ZError;
+ import zmq.ZMQ;
++import zmq.ZMQ.Event;
+ import zmq.util.Utils;
+
+ public abstract class AbstractProtocolVersion
+ {
++ protected static final int REPETITIONS = 1000;
++
+ static class SocketMonitor extends Thread
+ {
+- private final Ctx ctx;
+- private final String monitorAddr;
+- private final List events = new ArrayList<>();
++ private final Ctx ctx;
++ private final String monitorAddr;
++ private final ZMQ.Event[] events = new ZMQ.Event[1];
+
+ public SocketMonitor(Ctx ctx, String monitorAddr)
+ {
+@@ -41,15 +44,15 @@ public void run()
+ boolean rc = s.connect(monitorAddr);
+ assertThat(rc, is(true));
+ // Only some of the exceptional events could fire
+- while (true) {
+- ZMQ.Event event = ZMQ.Event.read(s);
+- if (event == null && s.errno() == ZError.ETERM) {
+- break;
+- }
+- assertThat(event, notNullValue());
+-
+- events.add(event);
++
++ ZMQ.Event event = ZMQ.Event.read(s);
++ if (event == null && s.errno() == ZError.ETERM) {
++ s.close();
++ return;
+ }
++ assertThat(event, notNullValue());
++
++ events[0] = event;
+ s.close();
+ }
+ }
+@@ -69,11 +72,12 @@ public void run()
+ boolean rc = ZMQ.setSocketOption(receiver, ZMQ.ZMQ_LINGER, 0);
+ assertThat(rc, is(true));
+
+- SocketMonitor monitor = new SocketMonitor(ctx, "inproc://monitor");
+- monitor.start();
+ rc = ZMQ.monitorSocket(receiver, "inproc://monitor", ZMQ.ZMQ_EVENT_HANDSHAKE_PROTOCOL);
+ assertThat(rc, is(true));
+
++ SocketMonitor monitor = new SocketMonitor(ctx, "inproc://monitor");
++ monitor.start();
++
+ rc = ZMQ.bind(receiver, host);
+ assertThat(rc, is(true));
+
+@@ -81,17 +85,18 @@ public void run()
+ OutputStream out = sender.getOutputStream();
+ for (ByteBuffer raw : raws) {
+ out.write(raw.array());
+- ZMQ.msleep(100);
+ }
+
+ Msg msg = ZMQ.recv(receiver, 0);
+ assertThat(msg, notNullValue());
+ assertThat(new String(msg.data(), ZMQ.CHARSET), is(payload));
+
+- ZMQ.msleep(500);
+- assertThat(monitor.events.size(), is(1));
+- assertThat(monitor.events.get(0).event, is(ZMQ.ZMQ_EVENT_HANDSHAKE_PROTOCOL));
+- assertThat((Integer) monitor.events.get(0).arg, is(version));
++ monitor.join();
++
++ final Event event = monitor.events[0];
++ assertThat(event, notNullValue());
++ assertThat(event.event, is(ZMQ.ZMQ_EVENT_HANDSHAKE_PROTOCOL));
++ assertThat((Integer) event.arg, is(version));
+
+ InputStream in = sender.getInputStream();
+ byte[] data = new byte[255];
+diff --git a/src/test/java/zmq/io/V0ProtocolTest.java b/src/test/java/zmq/io/V0ProtocolTest.java
+index bd547d23..1a5b7aef 100644
+--- a/src/test/java/zmq/io/V0ProtocolTest.java
++++ b/src/test/java/zmq/io/V0ProtocolTest.java
+@@ -10,6 +10,18 @@
+
+ public class V0ProtocolTest extends AbstractProtocolVersion
+ {
++ @Test
++ public void testFixIssue524() throws IOException, InterruptedException
++ {
++ for (int idx = 0; idx < REPETITIONS; ++idx) {
++ if (idx % 100 == 0) {
++ System.out.print(idx + " ");
++ }
++ testProtocolVersion0short();
++ }
++ System.out.println();
++ }
++
+ @Test(timeout = 2000)
+ public void testProtocolVersion0short() throws IOException, InterruptedException
+ {
+diff --git a/src/test/java/zmq/io/V1ProtocolTest.java b/src/test/java/zmq/io/V1ProtocolTest.java
+index e1045f34..764159d0 100644
+--- a/src/test/java/zmq/io/V1ProtocolTest.java
++++ b/src/test/java/zmq/io/V1ProtocolTest.java
+@@ -10,7 +10,19 @@
+
+ public class V1ProtocolTest extends AbstractProtocolVersion
+ {
+- @Test(timeout = 2000)
++ @Test
++ public void testFixIssue524() throws IOException, InterruptedException
++ {
++ for (int idx = 0; idx < REPETITIONS; ++idx) {
++ if (idx % 100 == 0) {
++ System.out.print(idx + " ");
++ }
++ testProtocolVersion1short();
++ }
++ System.out.println();
++ }
++
++ @Test
+ public void testProtocolVersion1short() throws IOException, InterruptedException
+ {
+ List raws = raws(0);
+@@ -25,7 +37,7 @@ public void testProtocolVersion1short() throws IOException, InterruptedException
+ assertProtocolVersion(1, raws, "abcdefg");
+ }
+
+- @Test(timeout = 2000)
++ @Test
+ public void testProtocolVersion1long() throws IOException, InterruptedException
+ {
+ List raws = raws(0);
+diff --git a/src/test/java/zmq/io/V2ProtocolTest.java b/src/test/java/zmq/io/V2ProtocolTest.java
+index d5e64bce..7fda31bc 100644
+--- a/src/test/java/zmq/io/V2ProtocolTest.java
++++ b/src/test/java/zmq/io/V2ProtocolTest.java
+@@ -21,7 +21,19 @@ protected ByteBuffer identity()
+ .put((byte) 0);
+ }
+
+- @Test(timeout = 2000)
++ @Test
++ public void testFixIssue524() throws IOException, InterruptedException
++ {
++ for (int idx = 0; idx < REPETITIONS; ++idx) {
++ if (idx % 100 == 0) {
++ System.out.print(idx + " ");
++ }
++ testProtocolVersion2short();
++ }
++ System.out.println();
++ }
++
++ @Test
+ public void testProtocolVersion2short() throws IOException, InterruptedException
+ {
+ List raws = raws(1);
+@@ -38,7 +50,7 @@ public void testProtocolVersion2short() throws IOException, InterruptedException
+ assertProtocolVersion(2, raws, "abcdefg");
+ }
+
+- @Test(timeout = 2000)
++ @Test
+ public void testProtocolVersion2long() throws IOException, InterruptedException
+ {
+ List raws = raws(1);
--
cgit v1.3
From 6c34ad73d5190b2793a1bb80bb42eeb2850f45c5 Mon Sep 17 00:00:00 2001
From: Efraim Flashner
Date: Tue, 13 Mar 2018 20:05:27 +0200
Subject: gnu: java-jnacl: Declare a source file-name.
* gnu/packages/java.scm (java-jnacl)[source]: Declare a source
file-name.
---
gnu/packages/java.scm | 1 +
1 file changed, 1 insertion(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index bdfd3fd41..e2c4b2c1e 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7982,6 +7982,7 @@ to use.")
(uri (git-reference
(url "https://github.com/neilalexander/jnacl.git")
(commit commit)))
+ (file-name (git-file-name name version))
(sha256
(base32
"1d6g6xhn83byv5943n7935wwjsk0ibk0qdvqgr699qqgqqmwisbb"))))
--
cgit v1.3
From 307856cdfa58d72434be06de12d79e2dce25189d Mon Sep 17 00:00:00 2001
From: Efraim Flashner
Date: Tue, 13 Mar 2018 20:06:29 +0200
Subject: gnu: java-snakeyaml: Declare a source file-name.
* gnu/packages/java.scm (java-snakeyaml)[source]: Declare a source
file-name.
---
gnu/packages/java.scm | 1 +
1 file changed, 1 insertion(+)
(limited to 'gnu/packages/java.scm')
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index e2c4b2c1e..521293da4 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7307,6 +7307,7 @@ configuration.")
(method url-fetch)
(uri (string-append "https://bitbucket.org/asomov/snakeyaml/get/v"
version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0rf5ha6w0waz50jz2479jsrbgmd0dnx0gs337m126j5z7zlmg7mg"))))
--
cgit v1.3