summary refs log tree commit diff
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2017-10-04 20:06:17 +0200
committerJulien Lepiller <julien@lepiller.eu>2017-10-10 22:05:23 +0200
commit25aef81d2657b0b9c111069cab5c1ec83ff86d5a (patch)
tree5c43e60594ffdf0b5f6a0e00970c9e322de1a3fc
parent5f26a13125981c8f1a980ca452d7eed46b18e67c (diff)
downloadguix-25aef81d2657b0b9c111069cab5c1ec83ff86d5a.tar.gz
gnu: Add java-ops4j-pax-tinybundles.
* gnu/packages/java.scm (java-ops4j-pax-tinybundles): New variable.
-rw-r--r--gnu/packages/java.scm49
1 files changed, 49 insertions, 0 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index d7d635f70d..d94d678442 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -5505,3 +5505,52 @@ it manages project dependencies, gives diffs jars, and much more.")
        ("java-osgi-namespace-service" ,java-osgi-namespace-service)
        ("promise" ,java-osgi-util-promise)
        ("osgi" ,java-osgi-core)))))
+
+(define-public java-ops4j-pax-tinybundles
+  (package
+    (name "java-ops4j-pax-tinybundles")
+    (version "2.1.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/ops4j/org.ops4j.pax.tinybundles/"
+                                  "archive/tinybundles-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0y0gq3pvv0iir2b885lmlwnvr724vv7vklzhhr4fs27d7mdkj871"))))
+    (arguments
+     `(#:jar-name "java-ops4j-pax-tinybundles.jar"
+       #:source-dir "src/main/java"
+       #:test-exclude
+       ;; Abstract base classes for other tests
+       (list "**/BndTest.java" "**/CoreTest.java")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'fix-version
+           (lambda _
+             ;; This test has a reference to an old version of bndlib we are not
+             ;; 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")))))))
+    (inputs
+     `(("lang" ,java-ops4j-base-lang)
+       ("io" ,java-ops4j-base-io)
+       ("store" ,java-ops4j-base-store)
+       ("slf4j" ,java-slf4j-api)
+       ("libg" ,java-aqute-libg)
+       ("bndlib" ,java-aqute-bndlib)))
+    (native-inputs
+     `(("junit" ,java-junit)
+       ("hamcrest" ,java-hamcrest-core)
+       ("log4j" ,java-log4j-api)
+       ("bndannotation" ,java-aqute-bnd-annotation)
+       ("framework" ,java-osgi-framework)))
+    (build-system ant-build-system)
+    (home-page "https://ops4j1.jira.com/wiki/spaces/ops4j/pages/12060312/Tinybundles")
+    (synopsis "Java APIs to create OSGi related artifacts")
+    (description "Tinybundles is all about creating OSGi related artifacts like
+Bundles, Fragments and Deployment Packages with Java Api.  It is very convinient
+to create such artifacts on-the-fly inside Tests (like in Pax Exam).  On the
+other hand, this library can be a foundation of real end user tools that need
+to create those artifacts.")
+    (license license:asl2.0)))