Subject: [bug#29359] [PATCH 11/31] gnu: Add java-cdi-api.

From: Julien Lepiller <[email-masked]>
Date: Sun, 19 Nov 2017 18:57:45 +0100

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

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 212813c43..3a08d367c 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -7791,3 +7791,46 @@ XPath.  This language is used with JavaServer Pages (JSP).")
 API.  Interceptors are used to interpose on business method invocations and
 specific events.")
     (license (list license:gpl2 license:cddl1.1)))); either gpl2 only or cddl.
+
+(define-public java-cdi-api
+  (package
+    (name "java-cdi-api")
+    (version "2.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/cdi-spec/cdi/archive/"
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1iv8b8bp07c5kmqic14jsr868vycjv4qv02lf3pkgp9z21mnfg5y"))))
+    (build-system ant-build-system)
+    (arguments
+     `(#:source-dir "api/src/main/java"
+       #:jar-name "java-cdi-api.jar"
+       #:test-dir "api/src/test"
+       #:jdk ,icedtea-8
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (system* "ant" "compile-tests")
+             ;; This fails though
+             (system* "java" "-cp" (string-append (getenv "CLASSPATH")
+                                                         ":build/classes"
+                                                         ":build/test-classes")
+                             "org.testng.TestNG" "-verbose" "5" "-testclass"
+                             "build/test-classes/org/jboss/cdi/api/test/CDITest.class")
+             #t)))))
+    (inputs
+     `(("java-javax-inject" ,java-javax-inject)
+       ("java-jboss-el-api-spec" ,java-jboss-el-api-spec)
+       ("java-jboss-interceptors-api-spec" ,java-jboss-interceptors-api-spec)))
+    (native-inputs
+     `(("java-testng" ,java-testng)
+       ("java-hamcrest-core" ,java-hamcrest-core)))
+    (home-page "http://cdi-spec.org/")
+    (synopsis "Contexts and Dependency Injection APIs")
+    (description "Java-cdi-api contains the required APIs for Contexts and
+Dependency Injection (CDI).")
+    (license license:asl2.0)))
-- 
2.15.0