all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#31604] [PATCH] Some java packages
@ 2018-05-26 12:43 Julien Lepiller
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:43 UTC (permalink / raw)
  To: 31604

Hi,

here are 8 new java packages that belong to maven's dependency graph.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 1/8] gnu: Add java-jsr250.
  2018-05-26 12:43 [bug#31604] [PATCH] Some java packages Julien Lepiller
@ 2018-05-26 12:45 ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 2/8] gnu: Add java-eclipse-sisu-inject Julien Lepiller
                     ` (6 more replies)
  2018-05-27  8:14 ` [bug#31604] [PATCH] Some java packages Roel Janssen
  2018-05-27 17:07 ` bug#31604: " Julien Lepiller
  2 siblings, 7 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-jsr250): New variable.
---
 gnu/packages/java.scm | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 90fd07c59..d109c3fd6 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
-;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -4263,6 +4263,33 @@ from within Java, as well as an object registry that exposes Java objects to
 these scripting language engines.")
     (license license:asl2.0)))
 
+(define-public java-jsr250
+  (package
+    (name "java-jsr250")
+    (version "1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://repo1.maven.org/maven2/"
+                                  "javax/annotation/javax.annotation-api/"
+                                  version "/javax.annotation-api-"
+                                  version "-sources.jar"))
+              (sha256
+               (base32
+                "08clh8n4n9wfglf75qsqfjs6yf79f7x6hqx38cn856pksszv50kz"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:tests? #f ; no tests included
+       #:jdk ,icedtea-8
+       #:jar-name "jsr250.jar"))
+    (home-page "https://jcp.org/en/jsr/detail?id=250")
+    (synopsis "Security-related annotations")
+    (description "This package provides annotations for security.  It provides
+packages in the @code{javax.annotation} and @code{javax.annotation.security}
+namespaces.")
+    ;; either cddl or gpl2 only, with classpath exception
+    (license (list license:cddl1.0
+                   license:gpl2))))
+
 (define-public java-jsr305
   (package
     (name "java-jsr305")
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 2/8] gnu: Add java-eclipse-sisu-inject.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 3/8] gnu: Add java-eclipse-sisu-plexus Julien Lepiller
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-eclipse-sisu-inject): New variable.
---
 gnu/packages/java.scm | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index d109c3fd6..66d6981fc 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -9833,3 +9833,43 @@ and reporting) project dependencies.  It is characterized by the following:
       reporting and publication.
 @end itemize")
     (license license:asl2.0)))
+
+(define-public java-eclipse-sisu-inject
+  (package
+    (name "java-eclipse-sisu-inject")
+    (version "0.3.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/eclipse/sisu.inject/"
+                                  "archive/releases/" version ".tar.gz"))
+              (sha256
+               (base32
+                "11rg6yw5nl13i65xsp4jxxgr341qcnnaan48p767h28kb07s0ajn"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "eclipse-sisu-inject.jar"
+       #:source-dir "org.eclipse.sisu.inject/src"
+       #:jdk ,icedtea-8
+       #:tests? #f)); no tests
+    (inputs
+     `(("java-guice" ,java-guice)
+       ("java-guice-servlet" ,java-guice-servlet)
+       ("java-javax-inject" ,java-javax-inject)
+       ("java-tomcat" ,java-tomcat)
+       ("java-junit" ,java-junit)
+       ("java-slf4j-api" ,java-slf4j-api)
+       ("java-jsr305" ,java-jsr305)
+       ("java-jsr250" ,java-jsr250)
+       ("java-cdi-api" ,java-cdi-api)
+       ("java-osgi-framework" ,java-osgi-framework)
+       ("java-osgi-util-tracker" ,java-osgi-util-tracker)
+       ("java-testng" ,java-testng)))
+    (home-page "https://www.eclipse.org/sisu/")
+    (synopsis "Classpath scanning, auto-binding, and dynamic auto-wiring")
+    (description "Sisu is a modular JSR330-based container that supports
+classpath scanning, auto-binding, and dynamic auto-wiring.  Sisu uses
+Google-Guice to perform dependency injection and provide the core JSR330
+support, but removes the need to write explicit bindings in Guice modules.
+Integration with other containers via the Eclipse Extension Registry and the
+OSGi Service Registry is a goal of this project.")
+    (license license:epl1.0)))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 3/8] gnu: Add java-eclipse-sisu-plexus.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 2/8] gnu: Add java-eclipse-sisu-inject Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 4/8] gnu: Add java-commons-jxpath Julien Lepiller
                     ` (4 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-eclipse-sisu-plexus): New variable.
---
 gnu/packages/java.scm | 82 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 66d6981fc..4aef4befa 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -9873,3 +9873,85 @@ support, but removes the need to write explicit bindings in Guice modules.
 Integration with other containers via the Eclipse Extension Registry and the
 OSGi Service Registry is a goal of this project.")
     (license license:epl1.0)))
+
+(define-public java-eclipse-sisu-plexus
+  (package
+    (name "java-eclipse-sisu-plexus")
+    (version "0.3.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/eclipse/sisu.plexus/"
+                                  "archive/releases/" version ".tar.gz"))
+              (sha256
+               (base32
+                "0lbj7nxy5j0z71k407zbb82icfqh7midrfk0fb3fa3jzdjz0d9d9"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  (for-each delete-file (find-files "." ".*.jar"))
+                  (rename-file "org.eclipse.sisu.plexus.tests/src"
+                               "org.eclipse.sisu.plexus.tests/java")
+                  #t))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "eclipse-sisu-plexus.jar"
+       #:source-dir "org.eclipse.sisu.plexus/src"
+       #:test-dir "org.eclipse.sisu.plexus.tests"
+       #:test-exclude
+       (list
+         ;; This test fails probably because we can't generate the necessary
+         ;; meta-inf files.
+         "**/PlexusLoggingTest.*"
+         ;; FIXME: This test fails because of some injection error
+         "**/PlexusRequirementTest.*")
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'copy-resources
+           (lambda _
+             (install-file "org.eclipse.sisu.plexus/META-INF/plexus/components.xml"
+                           "build/classes/META-INF/plexus")
+             #t))
+         (add-before 'check 'build-test-jar
+           (lambda _
+             (with-directory-excursion "org.eclipse.sisu.plexus.tests/resources/component-jar/src/main/"
+               (mkdir "build")
+               (with-directory-excursion "java"
+                 (apply invoke "javac" "-cp"
+                        (string-append (getenv "CLASSPATH")
+                                       ":../../../../../build/classes")
+                        (find-files "." ".*.java"))
+                 (for-each (lambda (file) (install-file file (string-append "../build/" file)))
+                           (find-files "." ".*.jar")))
+               (mkdir-p "build/META-INF/plexus")
+               (copy-file "resources/META-INF/plexus/components.xml"
+                          "build/META-INF/plexus/components.xml")
+               (with-directory-excursion "build"
+                 (invoke "jar" "cf" "../../../component-jar-0.1.jar" ".")))
+             (with-directory-excursion "org.eclipse.sisu.plexus.tests/"
+               (copy-recursively "META-INF" "../build/test-classes/META-INF")
+               (substitute* "java/org/eclipse/sisu/plexus/DefaultPlexusContainerTest.java"
+                 (("resources/component-jar")
+                  "org.eclipse.sisu.plexus.tests/resources/component-jar")))
+             #t)))))
+    (inputs
+     `(("java-plexus-classworlds" ,java-plexus-classworlds)
+       ("java-plexus-util" ,java-plexus-utils)
+       ("java-plexus-component-annotations" ,java-plexus-component-annotations)
+       ("java-osgi-framework" ,java-osgi-framework)
+       ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject)
+       ("java-guice" ,java-guice)
+       ("java-javax-inject" ,java-javax-inject)
+       ("java-slf4j-api" ,java-slf4j-api)
+       ("java-junit" ,java-junit)))
+    (native-inputs
+     `(("java-guava" ,java-guava)
+       ("java-aopalliance" ,java-aopalliance)
+       ("java-cglib" ,java-cglib)
+       ("java-asm" ,java-asm)))
+    (home-page "https://www.eclipse.org/sisu/")
+    (synopsis "Plexus support for the sisu container")
+    (description "Sisu is a modular JSR330-based container that supports
+classpath scanning, auto-binding, and dynamic auto-wiring.  This package
+adds Plexus support to the Sisu-Inject container.")
+    (license license:epl1.0)))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 4/8] gnu: Add java-commons-jxpath.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 2/8] gnu: Add java-eclipse-sisu-inject Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 3/8] gnu: Add java-eclipse-sisu-plexus Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 5/8] gnu: Add java-commons-compiler Julien Lepiller
                     ` (3 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-commons-jxpath): New variable.
---
 gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 4aef4befa..e205cccd6 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -4263,6 +4263,37 @@ from within Java, as well as an object registry that exposes Java objects to
 these scripting language engines.")
     (license license:asl2.0)))
 
+(define-public java-commons-jxpath
+  (package
+    (name "java-commons-jxpath")
+    (version "1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://apache/commons/jxpath/source/"
+                                  "commons-jxpath-" version "-src.tar.gz"))
+              (sha256
+               (base32
+                "1rpgg31ayn9fwr4bfi2i1ij0npcg79ad2fv0w9hacvawsyc42cfs"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "commons-jxpath.jar"
+       ;; tests require more dependencies, including mockrunner which depends on old software
+       #:tests? #f
+       #:source-dir "src/java"))
+    (inputs
+     `(("java-tomcat" ,java-tomcat)
+       ("java-jdom" ,java-jdom)
+       ("java-commons-beanutils" ,java-commons-beanutils)))
+    (native-inputs
+     `(("java-junit" ,java-junit)))
+    (home-page "http://commons.apache.org/jxpath/")
+    (synopsis "Simple interpreter of an expression language called XPath.")
+    (description "The org.apache.commons.jxpath package defines a simple
+interpreter of an expression language called XPath.  JXPath applies XPath
+expressions to graphs of objects of all kinds: JavaBeans, Maps, Servlet
+contexts, DOM etc, including mixtures thereof.")
+    (license license:asl2.0)))
+
 (define-public java-jsr250
   (package
     (name "java-jsr250")
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 5/8] gnu: Add java-commons-compiler.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
                     ` (2 preceding siblings ...)
  2018-05-26 12:45   ` [bug#31604] [PATCH 4/8] gnu: Add java-commons-jxpath Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 6/8] gnu: Add java-janino Julien Lepiller
                     ` (2 subsequent siblings)
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-commons-compiler): New variable.
---
 gnu/packages/java.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index e205cccd6..cfd8f8159 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -9986,3 +9986,34 @@ OSGi Service Registry is a goal of this project.")
 classpath scanning, auto-binding, and dynamic auto-wiring.  This package
 adds Plexus support to the Sisu-Inject container.")
     (license license:epl1.0)))
+
+(define-public java-commons-compiler
+  (package
+    (name "java-commons-compiler")
+    (version "3.0.8")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/janino-compiler/janino")
+                     (commit "91aa95686d1e4ca3b16a984a03a38686572331b2")))
+              (file-name (string-append name "-" version))
+              (sha256
+               (base32
+                "04hfdl59sgh20qkxzgnibvs8f9hy6n7znxwpk611y5d89977y62r"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  (for-each delete-file
+                            (find-files "." "\\.jar$"))
+                  #t))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "commons-compiler.jar"
+       #:source-dir "commons-compiler/src/main"
+       #:tests? #f)); no tests
+    (home-page "https://github.com/janino-compiler/janino")
+    (synopsis "Java compiler")
+    (description "Commons-compiler contains an API for janino, including the
+@code{IExpressionEvaluator}, @code{IScriptEvaluator}, @code{IClassBodyEvaluator}
+and @code{ISimpleCompiler} interfaces.")
+    (license license:bsd-3)))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 6/8] gnu: Add java-janino.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
                     ` (3 preceding siblings ...)
  2018-05-26 12:45   ` [bug#31604] [PATCH 5/8] gnu: Add java-commons-compiler Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 7/8] gnu: Add java-logback-core Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 8/8] gnu: Add java-logback-classic Julien Lepiller
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-janino): New variable.
---
 gnu/packages/java.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index cfd8f8159..a810a5358 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10017,3 +10017,26 @@ adds Plexus support to the Sisu-Inject container.")
 @code{IExpressionEvaluator}, @code{IScriptEvaluator}, @code{IClassBodyEvaluator}
 and @code{ISimpleCompiler} interfaces.")
     (license license:bsd-3)))
+
+(define-public java-janino
+  (package
+    (inherit java-commons-compiler)
+    (name "java-janino")
+    (arguments
+     `(#:jar-name "janino.jar"
+       #:source-dir "src/main/java"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "janino"))))))
+    (inputs
+     `(("java-commons-compiler" ,java-commons-compiler)))
+    (native-inputs
+     `(("java-junit" ,java-junit)
+       ("java-hamcrest-core" ,java-hamcrest-core)))
+    (description "Janino is a Java compiler.  Janino can compile a set of
+source files to a set of class files like @code{javac}, but also compile a
+Java expression, block, class body or source file in memory, load the bytecode
+and execute it directly in the same JVM.  @code{janino} can also be used for
+static code analysis or code manipulation.")))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 7/8] gnu: Add java-logback-core.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
                     ` (4 preceding siblings ...)
  2018-05-26 12:45   ` [bug#31604] [PATCH 6/8] gnu: Add java-janino Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  2018-05-26 12:45   ` [bug#31604] [PATCH 8/8] gnu: Add java-logback-classic Julien Lepiller
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-logback-core): New variable.
---
 gnu/packages/java.scm | 55 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index a810a5358..edfa7db8f 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10040,3 +10040,58 @@ source files to a set of class files like @code{javac}, but also compile a
 Java expression, block, class body or source file in memory, load the bytecode
 and execute it directly in the same JVM.  @code{janino} can also be used for
 static code analysis or code manipulation.")))
+
+(define-public java-logback-core
+  (package
+    (name "java-logback-core")
+    (version "1.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/qos-ch/logback/archive/v_"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1x6ga74yfgm94cfx98gybakbrlilx8i2gn6dx13l40kasmys06mi"))
+              (modules '((guix build utils)))
+              (snippet
+               '(delete-file-recursively "logback-access/lib"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:jar-name "logback.jar"
+       #:source-dir "src/main/java"
+       #:test-dir "src/test"
+       #:test-exclude
+       ;; These tests fail with Unable to set MockitoNamingPolicy on cglib generator
+       ;; which creates FastClasses
+       (list "**/AllCoreTest.*"
+             "**/AutoFlushingObjectWriterTest.*"
+             "**/PackageTest.*"
+             "**/ResilientOutputStreamTest.*"
+             ;; And we still don't want to run abstract classes
+             "**/Abstract*.*")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "logback-core")
+             #t)))))
+    (inputs
+     `(("java-javax-mail" ,java-javax-mail)
+       ("java-tomcat" ,java-tomcat)
+       ("java-commons-compiler" ,java-commons-compiler)
+       ("java-janino" ,java-janino)))
+    (native-inputs
+     `(("java-junit" ,java-junit)
+       ("java-hamcrest-core" ,java-hamcrest-core)
+       ("java-mockito-1" ,java-mockito-1)
+       ("java-cglib" ,java-cglib)
+       ("java-asm" ,java-asm)
+       ("java-objenesis" ,java-objenesis)
+       ("java-joda-time" ,java-joda-time)))
+    (home-page "https://logback.qos.ch")
+    (synopsis "Logging for java")
+    (description "Logback is intended as a successor to the popular log4j project.
+This module lays the groundwork for the other two modules.")
+    ;; Either epl1.0 or lgpl2.1
+    (license (list license:epl1.0
+                   license:lgpl2.1))))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH 8/8] gnu: Add java-logback-classic.
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
                     ` (5 preceding siblings ...)
  2018-05-26 12:45   ` [bug#31604] [PATCH 7/8] gnu: Add java-logback-core Julien Lepiller
@ 2018-05-26 12:45   ` Julien Lepiller
  6 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-26 12:45 UTC (permalink / raw)
  To: 31604

* gnu/packages/java.scm (java-logback-classic): New variable.
---
 gnu/packages/java.scm | 45 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index edfa7db8f..1efa65781 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -53,6 +53,7 @@
   #:use-module (gnu packages gnuzilla) ;nss
   #:use-module (gnu packages ghostscript) ;lcms
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages groovy)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages icu4c)
@@ -10095,3 +10096,47 @@ This module lays the groundwork for the other two modules.")
     ;; Either epl1.0 or lgpl2.1
     (license (list license:epl1.0
                    license:lgpl2.1))))
+
+(define-public java-logback-classic
+  (package
+    (inherit java-logback-core)
+    (name "java-logback-classic")
+    (arguments
+     `(#:jar-name "logback-classic.jar"
+       #:source-dir "src/main/java"
+       #:test-dir "src/test"
+       #:tests? #f; tests require more packages: h2, greenmail, hsql, subethamail, slf4j, log4j, felix
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'chdir
+           (lambda _
+             (chdir "logback-classic")
+             #t))
+         (replace 'build
+           (lambda* (#:key inputs #:allow-other-keys)
+             (mkdir-p "build/classes")
+             (setenv "CLASSPATH"
+                     (string-join
+                       (apply append (map (lambda (input)
+                                            (find-files (assoc-ref inputs input)
+                                                        ".*.jar"))
+                                          '("java-logback-core" "java-slf4j-api"
+                                            "java-commons-compiler" "java-tomcat"
+                                            "groovy")))
+                       ":"))
+             (apply invoke "groovyc" "-d" "build/classes" "-j"
+                    (find-files "src/main/" ".*\\.(groovy|java)$"))
+             (invoke "ant" "jar")
+             #t)))))
+    (inputs
+     `(("java-logback-core" ,java-logback-core)
+       ("java-slf4j-api" ,java-slf4j-api)
+       ,@(package-inputs java-logback-core)))
+    (native-inputs
+     `(("groovy" ,groovy)))
+    (description "Logback is intended as a successor to the popular log4j project.
+This module can be assimilated to a significantly improved version of log4j.
+Moreover, @code{logback-classic} natively implements the slf4j API so that you
+can readily switch back and forth between logback and other logging frameworks
+such as log4j or @code{java.util.logging} (JUL).")))
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#31604] [PATCH] Some java packages
  2018-05-26 12:43 [bug#31604] [PATCH] Some java packages Julien Lepiller
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
@ 2018-05-27  8:14 ` Roel Janssen
  2018-05-27 17:07 ` bug#31604: " Julien Lepiller
  2 siblings, 0 replies; 11+ messages in thread
From: Roel Janssen @ 2018-05-27  8:14 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 31604

Hi Julien,

Julien Lepiller <julien@lepiller.eu> writes:

> Hi,
>
> here are 8 new java packages that belong to maven's dependency graph.

Thanks a lot for working on Java packages so much!
These look fine to me.

A minor thingy: Some comments are not capitalized.  I don't think this
is a reason not to push the patches.

Thanks again.

Kind regards,
Roel Janssen

^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#31604: [PATCH] Some java packages
  2018-05-26 12:43 [bug#31604] [PATCH] Some java packages Julien Lepiller
  2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
  2018-05-27  8:14 ` [bug#31604] [PATCH] Some java packages Roel Janssen
@ 2018-05-27 17:07 ` Julien Lepiller
  2 siblings, 0 replies; 11+ messages in thread
From: Julien Lepiller @ 2018-05-27 17:07 UTC (permalink / raw)
  To: 31604-done

Pushed as 
a1a5ef2094a99bf97dd3e260c6b74bee4d4c861e to
3a69f5f2d348be38026c56ce3e9f04302e6d198e.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2018-05-27 17:08 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-26 12:43 [bug#31604] [PATCH] Some java packages Julien Lepiller
2018-05-26 12:45 ` [bug#31604] [PATCH 1/8] gnu: Add java-jsr250 Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 2/8] gnu: Add java-eclipse-sisu-inject Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 3/8] gnu: Add java-eclipse-sisu-plexus Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 4/8] gnu: Add java-commons-jxpath Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 5/8] gnu: Add java-commons-compiler Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 6/8] gnu: Add java-janino Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 7/8] gnu: Add java-logback-core Julien Lepiller
2018-05-26 12:45   ` [bug#31604] [PATCH 8/8] gnu: Add java-logback-classic Julien Lepiller
2018-05-27  8:14 ` [bug#31604] [PATCH] Some java packages Roel Janssen
2018-05-27 17:07 ` bug#31604: " Julien Lepiller

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.