aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2018-02-10 22:51:17 +0100
committerJulien Lepiller <julien@lepiller.eu>2018-02-25 11:58:50 +0100
commitb26c8b618457943075eaf5d33592af0eabf53cc8 (patch)
tree3a4e169b51b43bdbabcfe9fecf4ba7281dc08400
parent8f524749bc26601d4dc781978104718adb7addc8 (diff)
downloadguix-b26c8b618457943075eaf5d33592af0eabf53cc8.tar
guix-b26c8b618457943075eaf5d33592af0eabf53cc8.tar.gz
gnu: Add java-modello-core.
* gnu/packages/java.scm (java-modello-core): New variable.
-rw-r--r--gnu/packages/java.scm63
1 files changed, 63 insertions, 0 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index bbc39831ef..d7a1299a7f 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")