From 46f9022c9919e647e62a39e0dacf51e31457e6f8 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 3 Oct 2018 23:56:44 +0200 Subject: gnu: Add java-commons-exec. * gnu/packages/java.scm (java-commons-exec-1.1): New variable. (java-commons-exec): New variable. --- gnu/packages/java.scm | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index d2f4c9d05b..5207c6cc64 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -4288,6 +4288,85 @@ setter and getter method.") file filters and endian classes.") (license license:asl2.0))) +(define-public java-commons-exec-1.1 + (package + (name "java-commons-exec") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://apache/commons/exec/source/" + "commons-exec-" version "-src.tar.gz")) + (sha256 + (base32 + "025dk8xgj10lxwwwqp0hng2rn7fr4vcirxzydqzx9k4dim667alk")))) + (build-system ant-build-system) + (arguments + `(#:test-target "test" + #:make-flags + (list (string-append "-Dmaven.junit.jar=" + (assoc-ref %build-inputs "java-junit") + "/share/java/junit.jar")) + #:phases + (modify-phases %standard-phases + (add-before 'build 'delete-network-tests + (lambda _ + (delete-file "src/test/java/org/apache/commons/exec/DefaultExecutorTest.java") + (substitute* "src/test/java/org/apache/commons/exec/TestRunner.java" + (("suite\\.addTestSuite\\(DefaultExecutorTest\\.class\\);") "")) + #t)) + ;; The "build" phase automatically tests. + (delete 'check) + (replace 'install (install-jars "target"))))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "http://commons.apache.org/proper/commons-exec/") + (synopsis "Common program execution related classes") + (description "Commons-Exec simplifies executing external processes.") + (license license:asl2.0))) + +(define-public java-commons-exec + (package + (inherit java-commons-exec-1.1) + (version "1.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://apache/commons/exec/source/" + "commons-exec-" version "-src.tar.gz")) + (sha256 + (base32 + "17yb4h6f8l49c5iyyvda4z2nmw0bxrx857nrwmsr7mmpb7x441yv")))) + (arguments + `(#:test-target "test" + #:make-flags + (list (string-append "-Dmaven.junit.jar=" + (assoc-ref %build-inputs "java-junit") + "/share/java/junit.jar") + "-Dmaven.compiler.source=1.7" + "-Dmaven.compiler.target=1.7") + #:phases + (modify-phases %standard-phases + (add-before 'build 'delete-network-tests + (lambda* (#:key inputs #:allow-other-keys) + ;; This test hangs indefinitely. + (delete-file "src/test/java/org/apache/commons/exec/issues/Exec60Test.java") + (substitute* "src/test/java/org/apache/commons/exec/issues/Exec41Test.java" + (("ping -c 10 127.0.0.1") "sleep 10")) + (substitute* "src/test/java/org/apache/commons/exec/issues/Exec49Test.java" + (("/bin/ls") "ls")) + (call-with-output-file "src/test/scripts/ping.sh" + (lambda (port) + (format port "#!~a/bin/sh\nsleep $1\n" + (assoc-ref inputs "bash")))) + #t)) + ;; The "build" phase automatically tests. + (delete 'check) + (replace 'install (install-jars "target"))))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core))))) + (define-public java-commons-lang (package (name "java-commons-lang") -- cgit v1.3 From 5165fb40f4a730b36cddeab6ae894d360e727639 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 4 Oct 2018 03:02:30 +0200 Subject: gnu: Add java-fasterxml-jackson-modules-base-mrbean. * gnu/packages/java.scm (java-fasterxml-jackson-modules-base-mrbean): New variable. --- gnu/packages/java.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 5207c6cc64..96da495c29 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -7664,6 +7664,55 @@ configuration.") (description "This package is the jaxb annotations module for jackson.") (license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing +(define-public java-fasterxml-jackson-modules-base-mrbean + (package + (name "java-fasterxml-jackson-modules-base-mrbean") + (version "2.9.4") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/FasterXML/" + "jackson-modules-base/archive/" + "jackson-modules-base-" version ".tar.gz")) + (sha256 + (base32 + "1wws95xi8sppp6b0k2vvjdjyynl20r1a4dwrhai08lzlria6blp5")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jackson-modules-base-mrbean.jar" + #:source-dir "mrbean/src/main/java" + #:test-dir "mrbean/src/test" + #:test-exclude + ;; Base class for tests + (list "**/BaseTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'generate-PackageVersion.java + (lambda _ + (let* ((out (string-append "mrbean/src/main/java/com/fasterxml/" + "jackson/module/mrbean/PackageVersion.java")) + (in (string-append out ".in"))) + (copy-file in out) + (substitute* out + (("@package@") "com.fasterxml.jackson.module.mrbean") + (("@projectversion@") ,version) + (("@projectgroupid@") "com.fasterxml.jackson.module.mrbean") + (("@projectartifactid@") "jackson-module-mrbean"))) + #t))))) + (inputs + `(("java-asm" ,java-asm) + ("java-fasterxml-jackson-annotations" + ,java-fasterxml-jackson-annotations) + ("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core) + ("java-fasterxml-jackson-databind" ,java-fasterxml-jackson-databind))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "https://github.com/FasterXML/jackson-modules-base") + (synopsis "POJO type materialization for Java") + (description "This package implements POJO type materialization. +Databinders can construct implementation classes for Java interfaces as part +of deserialization.") + (license license:asl2.0))) + (define-public java-snakeyaml (package (name "java-snakeyaml") -- cgit v1.3 From ae6922ed148b6bde06e37a2c244c67a4f5e6dc00 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 7 Oct 2018 15:28:37 +0200 Subject: gnu: Add java-jakarta-regexp. * gnu/packages/java.scm (java-jakarta-regexp): New variable. --- gnu/packages/java.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 96da495c29..93f5bb6aff 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -9634,6 +9634,39 @@ Candidate Recommendation, and will correctly serialize XML 1.1 documents if the DOM level 3 load/save API's are in use.") (license license:asl2.0))) +(define-public java-jakarta-regexp + (package + (name "java-jakarta-regexp") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://archive.apache.org/dist/jakarta/regexp/jakarta-regexp-" + version ".tar.gz")) + (sha256 + (base32 + "0zg9rmyif48dck0cv6ynpxv23mmcsx265am1fnnxss7brgw0ms3r")))) + (build-system ant-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-share (string-append out "/share/java"))) + (mkdir-p out-share) + (for-each (lambda (name) + (install-file name out-share)) + (find-files "build" "^jakarta-regexp-.*\\.jar$")) + #t)))))) + (home-page "https://attic.apache.org/projects/jakarta-regexp.html") + (synopsis "Regular expression parser generator for Java.") + (description "@code{jakarta-regexp} is an old regular expression parser +generator for Java.") + (license license:asl2.0))) + (define-public java-jline (package (name "java-jline") -- cgit v1.3 From 53fb0476ec4e5df9511490aaf8c3c70ba68aa83b Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 24 May 2018 00:21:49 +0800 Subject: gnu: javacc: 'javacc' now inherits from 'javacc-4'. * gnu/packages/java.scm (javacc, javacc-4): 'javacc' now inherits from 'javacc-4' instead of the opposite around. --- gnu/packages/java.scm | 47 ++++++++++++++++++++++++----------------------- 1 file changed, 24 insertions(+), 23 deletions(-) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 93f5bb6aff..5447be41a5 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1948,27 +1948,31 @@ designs.") license:asl2.0 license:cpl1.0))))) -(define-public javacc +(define-public javacc-4 (package (name "javacc") - (version "7.0.3") + (version "4.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/javacc/javacc/" - "archive/" version ".tar.gz")) - (file-name (string-append "javacc-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/javacc/javacc.git") + (commit "release_41"))) + (file-name (string-append "javacc-" version "-checkout")) (sha256 (base32 - "111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf")))) + "07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0")))) (build-system ant-build-system) + ;; Tests fail with + ;; /tmp/guix-build-javacc-4.1.drv-0/source/test/javacodeLA/build.xml:60: + ;; JAVACODE failed (arguments - `(#:test-target "test" + `(#:tests? #f #:phases (modify-phases %standard-phases (add-after 'unpack 'delete-bundled-libs (lambda _ (delete-file-recursively "lib") #t)) - (replace 'install (install-jars "target"))))) + (replace 'install (install-jars "bin/lib"))))) (home-page "https://javacc.org/") (synopsis "Java parser generator") (description "Java Compiler Compiler (JavaCC) is the most popular parser @@ -1980,29 +1984,26 @@ as tree building (via a tool called JJTree included with JavaCC), actions, debugging, etc.") (license license:bsd-3))) -(define-public javacc-4 - (package (inherit javacc) - (version "4.1") +(define-public javacc + (package + (inherit javacc-4) + (version "7.0.3") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/javacc/javacc.git") - (commit "release_41"))) - (file-name (string-append "javacc-" version "-checkout")) + (method url-fetch) + (uri (string-append "https://github.com/javacc/javacc/" + "archive/" version ".tar.gz")) + (file-name (string-append "javacc-" version ".tar.gz")) (sha256 (base32 - "07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0")))) - ;; Tests fail with - ;; /tmp/guix-build-javacc-4.1.drv-0/source/test/javacodeLA/build.xml:60: - ;; JAVACODE failed + "111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf")))) (arguments - `(#:tests? #f + `(#:test-target "test" #:phases (modify-phases %standard-phases (add-after 'unpack 'delete-bundled-libs (lambda _ (delete-file-recursively "lib") #t)) - (replace 'install (install-jars "bin/lib"))))))) + (replace 'install (install-jars "target"))))))) ;; This is the last 3.x release of ECJ (define-public java-ecj-3 -- cgit v1.3 From 6662d65f96b948271eeaa0ba5c93d0e61663e7d3 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Fri, 25 May 2018 07:43:42 +0800 Subject: gnu: javacc: Use snippet to delete bundled jars. * gnu/packages/java.scm (javacc-4)[source](snippet, modules): New fields. [arguments]: Remove 'delete-bundled-libs' phase and add 'delete-tests' phase. * gnu/packages/java.scm (javacc)[source](snippet, modules): New fields. [arguments]: Remove 'delete-bundled-libs' phase. --- gnu/packages/java.scm | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 5447be41a5..d89ba6a005 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1960,7 +1960,10 @@ designs.") (file-name (string-append "javacc-" version "-checkout")) (sha256 (base32 - "07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0")))) + "07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0")) + (modules '((guix build utils))) + ;; delete bundled jars + (snippet '(begin (delete-file-recursively "lib") #t)))) (build-system ant-build-system) ;; Tests fail with ;; /tmp/guix-build-javacc-4.1.drv-0/source/test/javacodeLA/build.xml:60: @@ -1969,9 +1972,18 @@ designs.") `(#:tests? #f #:phases (modify-phases %standard-phases - (add-after 'unpack 'delete-bundled-libs + ;; Delete tests to avoid build failure (we don't run them anyway). + (add-after 'unpack 'delete-tests (lambda _ - (delete-file-recursively "lib") #t)) + (for-each delete-file + '("src/org/javacc/JavaCCTestCase.java" + "src/org/javacc/parser/ExpansionTest.java" + "src/org/javacc/parser/OptionsTest.java" + "src/org/javacc/jjtree/JJTreeOptionsTest.java")) + (for-each delete-file-recursively + '("src/org/javacc/parser/test" + "src/org/javacc/jjdoc/test")) + #t)) (replace 'install (install-jars "bin/lib"))))) (home-page "https://javacc.org/") (synopsis "Java parser generator") @@ -1995,14 +2007,14 @@ debugging, etc.") (file-name (string-append "javacc-" version ".tar.gz")) (sha256 (base32 - "111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf")))) + "111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf")) + (modules '((guix build utils))) + ;; delete bundled jars + (snippet '(begin (delete-file-recursively "lib") #t)))) (arguments `(#:test-target "test" #:phases (modify-phases %standard-phases - (add-after 'unpack 'delete-bundled-libs - (lambda _ - (delete-file-recursively "lib") #t)) (replace 'install (install-jars "target"))))))) ;; This is the last 3.x release of ECJ -- cgit v1.3 From 33428d12672fefde745b313ce1f0c02ae9870e39 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 24 May 2018 00:32:51 +0800 Subject: gnu: javacc: Bootstrap from javacc-4 instead of bootstrap binary. * gnu/packages/java.scm (javacc)[source](snippet): Delete bootstrap binary. [arguments]: Set 'bootstrap-jar' path. [native-inputs]: Add 'javacc-4'. --- gnu/packages/java.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'gnu/packages/java.scm') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index d89ba6a005..f6d72edeea 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2010,12 +2010,20 @@ debugging, etc.") "111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf")) (modules '((guix build utils))) ;; delete bundled jars - (snippet '(begin (delete-file-recursively "lib") #t)))) - (arguments - `(#:test-target "test" + (snippet '(begin (for-each delete-file-recursively + '("bootstrap" "lib")) + #t)))) + (arguments + `(#:make-flags ; bootstrap from javacc-4 + (list (string-append "-Dbootstrap-jar=" + (assoc-ref %build-inputs "javacc") + "/share/java/javacc.jar")) + #:test-target "test" #:phases (modify-phases %standard-phases - (replace 'install (install-jars "target"))))))) + (replace 'install (install-jars "target"))))) + (native-inputs + `(("javacc" ,javacc-4))))) ;; This is the last 3.x release of ECJ (define-public java-ecj-3 -- cgit v1.3