summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-10-09 21:06:14 +0100
committerLudovic Courtès <ludo@gnu.org>2024-08-31 10:42:10 +0200
commit8ca7d9eef713e0d6b19aa1d429ba125f2a592cb8 (patch)
treec38e06bac4e18941e2964ac00ec23a9068bf578f /gnu
parent1e41770dfe0f1e63298183392ef64bc30ab16049 (diff)
downloadguix-8ca7d9eef713e0d6b19aa1d429ba125f2a592cb8.tar.gz
gnu: secilc: Drop xmlto workaround.
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.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I152dd7a30b2a310ed6589133bc98f5eef8a190a1
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/libsepol-versioned-docbook.patch56
-rw-r--r--gnu/packages/selinux.scm13
3 files changed, 60 insertions, 10 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index b702b41f06..d201885d65 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1669,6 +1669,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libphonenumber-reproducible-build.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
   %D%/packages/patches/libquicktime-ffmpeg.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 @@
               (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 @@ binary policies.")
     (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 @@ binary policies.")
     (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.")