diff mbox series

[bug#65479,core-updates,v3,26/63] gnu: secilc: Drop xmlto workaround.

Message ID 5b6dd6c21323d2e01181a2a1198ded21968e6550.1696881354.git.mirai@makinata.eu
State New
Headers show
Series Docbook & XML/SGML improvements | expand

Commit Message

Bruno Victal Oct. 9, 2023, 8:06 p.m. UTC
The xmlto error[1] was due to libsepol using an unversioned PUBLIC identifier
for DocBook 4.2.

[1]: <https://pagure.io/xmlto/blob/6fa6a0e07644f20abf2596f78a60112713e11cbe/f/FAQ>

* gnu/packages/patches/libsepol-versioned-docbook.patch: New file.
* gnu/local.mk: Register it.
* gnu/packages/selinux.scm (libsepol)[source]: Apply it.
(secilc)[arguments]: Drop xmlto workaround.
[native-inputs]: Add docbook-xml-4.2.
---
 gnu/local.mk                                  |  1 +
 .../patches/libsepol-versioned-docbook.patch  | 56 +++++++++++++++++++
 gnu/packages/selinux.scm                      | 13 +----
 3 files changed, 60 insertions(+), 10 deletions(-)
 create mode 100644 gnu/packages/patches/libsepol-versioned-docbook.patch
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 7a99b6d869..0ffbc0755f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1554,6 +1554,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
   %D%/packages/patches/libquicktime-ffmpeg.patch 		\
   %D%/packages/patches/librecad-support-for-boost-1.76.patch	\
+  %D%/packages/patches/libsepol-versioned-docbook.patch		\
   %D%/packages/patches/libtar-CVE-2013-4420.patch 		\
   %D%/packages/patches/libtgvoip-disable-sse2.patch 		\
   %D%/packages/patches/libtgvoip-disable-webrtc.patch 		\
diff --git a/gnu/packages/patches/libsepol-versioned-docbook.patch b/gnu/packages/patches/libsepol-versioned-docbook.patch
new file mode 100644
index 0000000000..6b39de0a5b
--- /dev/null
+++ b/gnu/packages/patches/libsepol-versioned-docbook.patch
@@ -0,0 +1,56 @@ 
+# Sent upstream: <https://lore.kernel.org/selinux/260cd39c55ff2d13f5ac916b508f023bedecfce9.1692025627.git.mirai@makinata.eu/>
+
+From 260cd39c55ff2d13f5ac916b508f023bedecfce9 Mon Sep 17 00:00:00 2001
+Message-Id: <260cd39c55ff2d13f5ac916b508f023bedecfce9.1692827278.git.mirai@makinata.eu>
+From: Bruno Victal <mirai@makinata.eu>
+Date: Mon, 14 Aug 2023 15:51:05 +0100
+Subject: [PATCH] secilc: Use versioned DocBook public identifier.
+
+Fix xml validation issues that often crop up since the XML catalogs
+for DocBook often only contain versioned public identifiers.
+
+Signed-off-by: Bruno Victal <mirai@makinata.eu>
+---
+ secilc/secil2conf.8.xml | 2 +-
+ secilc/secil2tree.8.xml | 2 +-
+ secilc/secilc.8.xml     | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/secilc/secil2conf.8.xml b/secilc/secil2conf.8.xml
+index 33646f97..330b6a07 100644
+--- a/secilc/secil2conf.8.xml
++++ b/secilc/secil2conf.8.xml
+@@ -1,5 +1,5 @@
+ <?xml version="1.0" encoding="UTF-8"?>
+-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML//EN"
++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+                "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+ 
+ <refentry>
+diff --git a/secilc/secil2tree.8.xml b/secilc/secil2tree.8.xml
+index e95a8947..d7bb177e 100644
+--- a/secilc/secil2tree.8.xml
++++ b/secilc/secil2tree.8.xml
+@@ -1,5 +1,5 @@
+ <?xml version="1.0" encoding="UTF-8"?>
+-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML//EN"
++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+                "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+ 
+ <refentry>
+diff --git a/secilc/secilc.8.xml b/secilc/secilc.8.xml
+index e9a121e2..5c0680a8 100644
+--- a/secilc/secilc.8.xml
++++ b/secilc/secilc.8.xml
+@@ -1,5 +1,5 @@
+ <?xml version="1.0" encoding="UTF-8"?>
+-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML//EN"
++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+                "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+ 
+ <refentry>
+
+base-commit: f6dc6acfa00707ce25c6357169111937f12512dd
+-- 
+2.40.1
+
diff --git a/gnu/packages/selinux.scm b/gnu/packages/selinux.scm
index c45570744a..3fc88154fa 100644
--- a/gnu/packages/selinux.scm
+++ b/gnu/packages/selinux.scm
@@ -60,7 +60,8 @@  (define-public libsepol
               (file-name (git-file-name "selinux" version))
               (sha256
                (base32
-                "1lcmgmfr0q7g5cwg6b7jm6ncw8cw6c1jblkm93v1g37bfhcgrqc0"))))
+                "1lcmgmfr0q7g5cwg6b7jm6ncw8cw6c1jblkm93v1g37bfhcgrqc0"))
+              (patches (search-patches "libsepol-versioned-docbook.patch"))))
     (build-system gnu-build-system)
     (arguments
      (list
@@ -231,14 +232,6 @@  (define-public secilc
     (name "secilc")
     (arguments
      (substitute-keyword-arguments (package-arguments libsepol)
-       ((#:make-flags flags)
-        #~(let ((xsl (search-input-directory %build-inputs "xml/xsl")))
-            (cons (string-append "XMLTO=xmlto --skip-validation -x "
-                                 xsl "/docbook-xsl-"
-                                 #$(package-version
-                                    (this-package-native-input "docbook-xsl"))
-                                 "/manpages/docbook.xsl")
-                  #$flags)))
        ((#:phases phases)
         #~(modify-phases #$phases
             (delete 'portability)
@@ -247,7 +240,7 @@  (define-public secilc
     (inputs
      (list libsepol))
     (native-inputs
-     (list xmlto docbook-xsl))
+     (list docbook-xml-4.2 docbook-xsl xmlto))
     (synopsis "SELinux common intermediate language (CIL) compiler")
     (description "The SELinux CIL compiler is a compiler that converts the
 @dfn{common intermediate language} (CIL) into a kernel binary policy file.")