summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Boll <andreas.boll.dev@gmail.com>2016-01-12 13:59:40 +0100
committerJulien Cristau <jcristau@debian.org>2016-01-14 19:49:00 +0100
commitd7acec2d3a3abe79814ceb72e2c0d4d95ed31d37 (patch)
treebfde84d696abfcc23c7ddf7d38a912fedd564b3b
parent8b92f46ab371ec51dac2b73c768173cd63126402 (diff)
downloadxorg-util-macros-d7acec2d3a3abe79814ceb72e2c0d4d95ed31d37.tar.gz
Fix XORG_WITH_XMLTO to work with xmlto >= 0.0.27
Starting with xmlto version 0.0.27 the return code of xmlto --skip-validation txt conftest.xml is non-zero if conftest.xml is an empty file. As a consequence the macro XORG_WITH_XMLTO returns "xmlto cannot generate text format, this format skipped" and therefore libraries like libxi, libxdmcp and others won't convert docbook XML to text format. This changed behavior was introduced with the following change in xmlto: xmlto.in: use correctly exit code from xsltproc See also: https://fedorahosted.org/xmlto/changeset/77 This patch fixes this by additionally testing xmlto with a non-empty XML file. More details can be found at: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=613674 Thanks to Peter Pearse, Helmut Grohne and Gaetan Nadon. v2: To maintain compatibility with older xorg tarballs don't replace the original test with the empty XML file but instead add a fallback to additionally test with a non-empty XML file if the original test fails. Use the alternate solution with <x></x> to skip compatibility issues with different docbook versions. Signed-off-by: Andreas Boll <andreas.boll.dev@gmail.com> Reviewed-by: Gaetan Nadon <memsize@videotron.ca> Signed-off-by: Julien Cristau <jcristau@debian.org>
-rw-r--r--xorg-macros.m4.in13
1 files changed, 12 insertions, 1 deletions
diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in
index 9b3c503..2ed7837 100644
--- a/xorg-macros.m4.in
+++ b/xorg-macros.m4.in
@@ -426,13 +426,24 @@ m4_ifval([$1],
fi])
# Test for the ability of xmlto to generate a text target
+#
+# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the
+# following test for empty XML docbook files.
+# For compatibility reasons use the following empty XML docbook file and if
+# it fails try it again with a non-empty XML file.
have_xmlto_text=no
cat > conftest.xml << "EOF"
EOF
AS_IF([test "$have_xmlto" = yes],
[AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
[have_xmlto_text=yes],
- [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])
+ [# Try it again with a non-empty XML file.
+ cat > conftest.xml << "EOF"
+<x></x>
+EOF
+ AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
+ [have_xmlto_text=yes],
+ [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])])
rm -f conftest.xml
AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])