[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/44: gnu: docbook-xml-4.1.2: Add missing catalog.xml.
From: |
guix-commits |
Subject: |
04/44: gnu: docbook-xml-4.1.2: Add missing catalog.xml. |
Date: |
Fri, 21 Apr 2023 00:48:22 -0400 (EDT) |
apteryx pushed a commit to branch core-updates
in repository guix.
commit 9a03afbe17be9344aa632b20467c83ac226835a6
Author: Bruno Victal <mirai@makinata.eu>
AuthorDate: Sat Mar 11 17:54:13 2023 +0000
gnu: docbook-xml-4.1.2: Add missing catalog.xml.
* gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml: New file.
* Makefile.am: Register it.
* gnu/packages/docbook.scm (docbook-xml-4.1.2)[arguments]: Use prebuilt
catalog.xml.
[native-inputs]: Add libxml2.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
---
Makefile.am | 3 +-
.../aux-files/xml/docbook-xml/catalog-4.1.2.xml | 31 +++++++++++++++++++
gnu/packages/docbook.scm | 36 +++++++++++++++++++++-
3 files changed, 68 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 645026a9ba..a763a7e305 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -437,7 +437,8 @@ AUX_FILES = \
gnu/packages/aux-files/python/sitecustomize.py \
gnu/packages/aux-files/renpy/renpy.in \
gnu/packages/aux-files/run-in-namespace.c \
- gnu/packages/aux-files/xml/patch-catalog-xml.xsl
+ gnu/packages/aux-files/xml/patch-catalog-xml.xsl \
+ gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml
# Templates, examples.
EXAMPLES = \
diff --git a/gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml
b/gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml
new file mode 100644
index 0000000000..cfb1849202
--- /dev/null
+++ b/gnu/packages/aux-files/xml/docbook-xml/catalog-4.1.2.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog
V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
+<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
+ <public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN" uri="docbookx.dtd"/>
+ <public publicId="-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN"
uri="calstblx.dtd"/>
+ <public publicId="-//OASIS//DTD XML Exchange Table Model 19990315//EN"
uri="soextblx.dtd"/>
+ <public publicId="-//OASIS//ELEMENTS DocBook XML Information Pool
V4.1.2//EN" uri="dbpoolx.mod"/>
+ <public publicId="-//OASIS//ELEMENTS DocBook XML Document Hierarchy
V4.1.2//EN" uri="dbhierx.mod"/>
+ <public publicId="-//OASIS//ENTITIES DocBook XML Additional General Entities
V4.1.2//EN" uri="dbgenent.mod"/>
+ <public publicId="-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN"
uri="dbnotnx.mod"/>
+ <public publicId="-//OASIS//ENTITIES DocBook XML Character Entities
V4.1.2//EN" uri="dbcentx.mod"/>
+ <public publicId="ISO 8879:1986//ENTITIES Diacritical Marks//EN"
uri="ent/iso-dia.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN"
uri="ent/iso-num.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Publishing//EN"
uri="ent/iso-pub.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES General Technical//EN"
uri="ent/iso-tech.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Latin 1//EN"
uri="ent/iso-lat1.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Latin 2//EN"
uri="ent/iso-lat2.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Greek Letters//EN"
uri="ent/iso-grk1.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Monotoniko Greek//EN"
uri="ent/iso-grk2.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Greek Symbols//EN"
uri="ent/iso-grk3.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN"
uri="ent/iso-grk4.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols: Arrow
Relations//EN" uri="ent/iso-amsa.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols: Binary
Operators//EN" uri="ent/iso-amsb.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols:
Delimiters//EN" uri="ent/iso-amsc.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols: Negated
Relations//EN" uri="ent/iso-amsn.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN"
uri="ent/iso-amso.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN"
uri="ent/iso-amsr.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Box and Line Drawing//EN"
uri="ent/iso-box.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Russian Cyrillic//EN"
uri="ent/iso-cyr1.ent"/>
+ <public publicId="ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN"
uri="ent/iso-cyr2.ent"/>
+</catalog>
diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm
index a9c92459c2..b52131b24b 100644
--- a/gnu/packages/docbook.scm
+++ b/gnu/packages/docbook.scm
@@ -39,6 +39,7 @@
#:use-module (gnu packages web-browsers)
#:use-module (gnu packages xml)
#:use-module (guix gexp)
+ #:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@@ -152,7 +153,40 @@ by no means limited to these applications.) This package
provides XML DTDs.")
"/docbkx412.zip"))
(sha256
(base32
- "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h"))))))
+ "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments docbook-xml)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'copy-catalog-file
+ ;; docbook-xml-4.1.2 is unique in the fact that it doesn't come
+ ;; with a catalog.xml file, requiring it to be generated by hand
+ ;; from the docbook.cat SGML catalog. We could automatically
+ ;; generate it here at the cost of enlarging the package
+ ;; definition with a rudimentary (PEG) parser for the SGML
+ ;; catalog but this is overkill since this file is unlikely to
+ ;; change, therefore we ship a pre-generated catalog.xml.
+ (lambda _
+ (copy-file
+ #$(local-file
+ (search-auxiliary-file
+ "xml/docbook-xml/catalog-4.1.2.xml"))
+ "catalog.xml")))
+ (add-after 'patch-catalog-xml 'add-rewrite-entries
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((xmlcatalog (search-input-file inputs "/bin/xmlcatalog"))
+ (dtd-path (string-append #$output "/xml/dtd/docbook")))
+ (for-each
+ (lambda (type)
+ (invoke xmlcatalog "--noout"
+ "--add" type
+ "http://www.oasis-open.org/docbook/xml/4.1.2/"
+ (string-append "file://" dtd-path "/")
+ "catalog.xml"))
+ (list "rewriteSystem" "rewriteURI")))))))))
+ (native-inputs
+ (modify-inputs (package-native-inputs docbook-xml)
+ (prepend libxml2)))))
;;; There's an issue in docbook-xsl 1.79.2 that causes manpages to be
;;; generated incorrectly and embed raw nroff syntax such as '.PP' when there
- 10/44: gnu: libical: Remove patch-docbook-xml phase., (continued)
- 10/44: gnu: libical: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 43/44: gnu: libnotify: Use gexps and remove input labels., guix-commits, 2023/04/21
- 22/44: gnu: zeitgeist: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 36/44: gnu: asciidoc: Delete trailing #t., guix-commits, 2023/04/21
- 42/44: gnu: plymouth: Delete fix-docbook phase., guix-commits, 2023/04/21
- 40/44: gnu: sysbench: Fix test suite., guix-commits, 2023/04/21
- 37/44: gnu: docbook2x: Use gexps and remove input labels., guix-commits, 2023/04/21
- 30/44: gnu: ibus-minimal: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 02/44: gnu: docbook-xml: Fix permissions., guix-commits, 2023/04/21
- 03/44: gnu: docbook-xml: Use XSLT to patch catalog.xml., guix-commits, 2023/04/21
- 04/44: gnu: docbook-xml-4.1.2: Add missing catalog.xml.,
guix-commits <=
- 13/44: gnu: memphis: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 21/44: gnu: dee: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 11/44: gnu: farstream: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 16/44: gnu: libsigc++-2: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 17/44: gnu: gupnp-igd: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 19/44: gnu: seed: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 15/44: gnu: libsigc++: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 23/44: gnu: libnma: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 24/44: gnu: system-config-printer: Remove patch-docbook-xml phase., guix-commits, 2023/04/21
- 29/44: gnu: libhandy: Remove patch-docbook-xml phase., guix-commits, 2023/04/21