Subject: Re: [PATCH] gnu: Add 'maven-doxia-test-docs' and some Doxia modules

From: "Artyom V. Poptsov" <[email-masked]>
Date: Tue, 20 Sep 2022 20:45:55 +0300

Hello,

I rebased this patch series onto the Guix "master" branch.
From 6c2d9a9a6ba4c62cf5bb66914151da3ed0c08942 Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 26 Jun 2022 09:15:44 +0300
Subject: [PATCH 1/5] gnu: Add maven-doxia-test-docs.

* gnu/packages/maven.scm (maven-doxia-test-docs): New variable.
---
 gnu/packages/maven.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 28ec4eb9a8..7e1457ad42 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -3965,3 +3965,30 @@ (define-public maven-doxia-core
 markup languages.
 
 This package contains Doxia core classes and interfaces.")))
+
+(define-public maven-doxia-test-docs
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-test-docs")
+    (arguments
+     `(#:jar-name "doxia-test-docs.jar"
+       #:tests? #f ; no tests.
+       #:source-dir "doxia-test-docs/src/main/"
+       #:phases (modify-phases %standard-phases
+                  (add-before 'build 'copy-resources
+                    (lambda _
+                      (mkdir-p "build/classes")
+                      (copy-recursively "doxia-test-docs/src/main/resources"
+                                        "build/classes")
+                      #t))
+                  (replace 'install
+                    (install-from-pom "doxia-test-docs/pom.xml")))))
+    (propagated-inputs (list maven-doxia-parent-pom))
+    (synopsis "Several test documents to check syntax structures under Doxia")
+    (description
+     "Doxia is a content generation framework that provides powerful
+techniques for generating static and dynamic content, supporting a variety of
+markup languages.
+
+This package contains several test documents to check syntax structures under
+Doxia.")))
-- 
2.34.1

From 6a5b6c3b846ca64f91706078f7138e7bdad11a7e Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 26 Jun 2022 04:08:35 +0300
Subject: [PATCH 2/5] gnu: Add maven-doxia-module-apt.

* gnu/packages/maven.scm (maven-doxia-module-apt): New variable.
  (maven-doxia-modules-parent-pom): New private variable.
---
 gnu/packages/maven.scm | 47 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 7e1457ad42..84879003e9 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -3992,3 +3992,50 @@ (define-public maven-doxia-test-docs
 
 This package contains several test documents to check syntax structures under
 Doxia.")))
+
+(define maven-doxia-modules-parent-pom
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-modules-parent-pom")
+    (arguments
+     `(#:tests? #f
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (delete 'build)
+                  (replace 'install
+                    (install-pom-file "doxia-modules/pom.xml")))))
+    (propagated-inputs
+     (list maven-doxia-parent-pom
+           maven-doxia-sink-api
+           maven-doxia-core))
+    (synopsis "Content generation framework")
+    (description "@samp{Doxia} is a content generation framework that provides
+powerful techniques for generating static and dynamic content, supporting a
+variety of markup languages.
+
+This package contains the parent POM of all Doxia modules.")))
+
+(define-public maven-doxia-module-apt
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-module-apt")
+    (arguments
+     `(#:jar-name "doxia-module-apt.jar"
+       #:source-dir "doxia-modules/doxia-module-apt/src/main/java"
+       #:test-dir "doxia-modules/doxia-module-apt/src/test/java"
+       #:tests? #f ;tests require JUnit5
+       #:phases (modify-phases %standard-phases
+                  (replace 'install
+                    (install-from-pom "doxia-modules/doxia-module-apt/pom.xml")))))
+    (native-inputs (list maven-doxia-test-docs
+                         java-junit
+                         java-guice
+                         java-xmlunit
+                         java-xmlunit-matchers
+                         java-slf4j-simple))
+    (propagated-inputs (list maven-doxia-modules-parent-pom java-slf4j-api
+                             java-javax-inject java-plexus-utils))
+    (synopsis "Doxia module for APT source documents")
+    (description "A Doxia module for Almost Plain Text source documents.  APT
+format is supported both as source and target formats.")))
+
-- 
2.34.1

From c2594adfb967797321672edddd69417775d96d33 Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 26 Jun 2022 09:44:40 +0300
Subject: [PATCH 3/5] gnu: Add maven-doxia-module-xdoc.

* gnu/packages/maven.scm (maven-doxia-module-xdoc): New variable.
---
 gnu/packages/maven.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 84879003e9..e8105b109b 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -4039,3 +4039,27 @@ (define-public maven-doxia-module-apt
     (description "A Doxia module for Almost Plain Text source documents.  APT
 format is supported both as source and target formats.")))
 
+(define-public maven-doxia-module-xdoc
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-module-xdoc")
+    (arguments
+     `(#:jar-name "doxia-module-xdoc.jar"
+       #:source-dir "doxia-modules/doxia-module-xdoc/src/main/java"
+       #:test-dir "doxia-modules/doxia-module-xdoc/src/test/java"
+       #:tests? #f ;tests require JUnit5
+       #:phases (modify-phases %standard-phases
+                  (replace 'install
+                    (install-from-pom "doxia-modules/doxia-module-xdoc/pom.xml")))))
+    (native-inputs (list maven-doxia-test-docs
+                         java-junit
+                         java-guice
+                         java-xmlunit
+                         java-xmlunit-matchers
+                         java-slf4j-simple))
+    (propagated-inputs (list maven-doxia-modules-parent-pom java-slf4j-api
+                             java-javax-inject java-plexus-utils))
+    (synopsis "Doxia module for Xdoc source documents")
+    (description "A Doxia module for Xdoc source documents.  Xdoc format is
+supported both as source and target formats.")))
+
-- 
2.34.1

From 6bbec9cba6f9790d4332aa85d70b8965bd707390 Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 26 Jun 2022 09:46:36 +0300
Subject: [PATCH 4/5] gnu: Add maven-doxia-module-xhtml.

* gnu/packages/maven.scm (maven-doxia-module-xhtml): New variable.
---
 gnu/packages/maven.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index e8105b109b..918610eb7f 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -4063,3 +4063,27 @@ (define-public maven-doxia-module-xdoc
     (description "A Doxia module for Xdoc source documents.  Xdoc format is
 supported both as source and target formats.")))
 
+(define-public maven-doxia-module-xhtml
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-module-xhtml")
+    (arguments
+     `(#:jar-name "doxia-module-xhtml.jar"
+       #:source-dir "doxia-modules/doxia-module-xhtml/src/main/java"
+       #:test-dir "doxia-modules/doxia-module-xhtml/src/test/java"
+       #:tests? #f ;tests require JUnit5
+       #:phases (modify-phases %standard-phases
+                  (replace 'install
+                    (install-from-pom "doxia-modules/doxia-module-xhtml/pom.xml")))))
+    (native-inputs (list maven-doxia-test-docs
+                         java-junit
+                         java-guice
+                         java-xmlunit
+                         java-xmlunit-matchers
+                         java-slf4j-simple))
+    (propagated-inputs (list maven-doxia-modules-parent-pom java-slf4j-api
+                             java-javax-inject java-plexus-utils))
+    (synopsis "Doxia module for Xhtml source documents")
+    (description "A Doxia module for Xhtml source documents.  Xhtml format is
+supported both as source and target formats.")))
+
-- 
2.34.1

From e8c3df3afe203796a3b49af6595d48dabda2a75a Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 26 Jun 2022 09:49:39 +0300
Subject: [PATCH 5/5] gnu: Add maven-doxia-module-xhtml5.

* gnu/packages/maven.scm (maven-doxia-module-xhtml5): New variable.
---
 gnu/packages/maven.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 918610eb7f..ec116de5e9 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -4087,3 +4087,27 @@ (define-public maven-doxia-module-xhtml
     (description "A Doxia module for Xhtml source documents.  Xhtml format is
 supported both as source and target formats.")))
 
+(define-public maven-doxia-module-xhtml5
+  (package
+    (inherit maven-doxia-sink-api)
+    (name "maven-doxia-module-xhtml5")
+    (arguments
+     `(#:jar-name "doxia-module-xhtml5.jar"
+       #:source-dir "doxia-modules/doxia-module-xhtml5/src/main/java"
+       #:test-dir "doxia-modules/doxia-module-xhtml5/src/test/java"
+       #:tests? #f ;tests require JUnit5
+       #:phases (modify-phases %standard-phases
+                  (replace 'install
+                    (install-from-pom "doxia-modules/doxia-module-xhtml5/pom.xml")))))
+    (native-inputs (list maven-doxia-test-docs
+                         java-junit
+                         java-guice
+                         java-xmlunit
+                         java-xmlunit-matchers
+                         java-slf4j-simple))
+    (propagated-inputs (list maven-doxia-modules-parent-pom java-slf4j-api
+                             java-javax-inject java-plexus-utils))
+    (synopsis "Doxia module for Xhtml5 source documents")
+    (description "A Doxia module for Xhtml5 source documents.  Xhtml5 format is
+supported both as source and target formats.")))
+
-- 
2.34.1

- Artyom

-- 
Artyom "avp" Poptsov <[email-masked]>
Home page: https://memory-heap.org/~avp/
CADR Hackerspace co-founder: https://cadrspace.ru/
GPG: D0C2 EAC1 3310 822D 98DE  B57C E9C5 A2D9 0898 A02F