tags 312308 + patch tags 312932 + patch thanks [EMAIL PROTECTED] BCCed] These inconsistencies between architectures are caused due to an error in debian/rules: it performs various tasks (such as renaming the binary and installing the documentation) in the binary-indep target, but that target is not invoked during a buildd build (or any other build which only builds architecture-specific packages). The package built on the maintainer's system (for the i386 architecture) is thus different from the packages built on buildds (for all other architectures).
The attached patch removes this code from the binary-indep target, and modifies some of the debhelper files in the debian directory to make debhelper programs perform these tasks instead. The patch also includes corrections to configure.in to make it find libxml2 and libxslt1 via pkg-config rather than hard-coding the paths to static library files, and removes the workaround from the configure invocation in debian/rules; due to the modifications to configure.in, you need to run "autoreconf -f -i" after applying the patch. Note that there is still one issue to be resolved with this software: the program and the documentation disagree on the name of the program binary. The program internally assumes the binary name is "xml", while the documentation (including the manpage) assumes the binary name is "xmlstarlet". My patch simply removes the code from debian/rules which moved "xml" to "xmlstarlet" only on builds that build architecture-independent packages (such as the maintainer-uploaded build); once a decision is made as to which name should be canonical, then either the program or the documentation should be changed to reflect that name. - Josh Triplett
diff -Naur xmlstarlet-1.0.0.old/configure.in xmlstarlet-1.0.0/configure.in
--- xmlstarlet-1.0.0.old/configure.in 2005-01-27 18:40:06.000000000 -0800
+++ xmlstarlet-1.0.0/configure.in 2005-09-01 16:57:40.000000000 -0700
@@ -21,88 +21,13 @@
;;
esac
-dnl
-dnl The following parameters offer
-dnl the ability to specify the location of the libxml
-dnl library during linking and compilation.
-dnl
-LIBXML_PREFIX="/usr"
-AC_ARG_WITH(libxml-prefix,
- [ --with-libxml-prefix=[PFX] Specify location of libxml],
- LIBXML_PREFIX=$withval
- LIBXML_CFLAGS="-I$withval/include/libxml2 -I$withval/include/libxml"
- LIBXML_LIBS="$withval/lib/libxml2.a -lz -lm -lpthread"
-)
-
-AC_ARG_WITH(libxml-include-prefix,
- [ --with-libxml-include-prefix=[PFX] Specify location of libxml headers],
- LIBXML_CFLAGS="-I$withval/libxml2 -I$withval/libxml -I$withval"
-)
-
-AC_ARG_WITH(libxml-libs-prefix,
- [ --with-libxml-libs-prefix=[PFX] Specify location of libxml libs],
- LIBXML_LIBS="$withval/libxml2.a -lz -lm -lpthread -ldl"
-)
-
-AC_ARG_WITH(libxml-src,
- [ --with-libxml-src=[DIR] For libxml thats not installed yet (sets all three above)],
- LIBXML_SRC="$withval"
- LIBXML_LIBS="$withval/.libs/libxml2.a -lz -lm -lpthread"
- LIBXML_CFLAGS="-I$withval/include/libxml2 -I$withval/include/libxml -I$withval/include"
-)
-
-AC_DEFUN(VERSION_TO_NUMBER,
- [`$1 | sed -e 's/libxml //' -e 's/libxslt //' | awk 'BEGIN { FS = "."; } { printf "%d", ([$]1 * 1000 + [$]2) * 1000 + [$]3;}'`])
-
-LIBXML_REQUIRED_VERSION=2.6.12
-
-if test "x$LIBXML_SRC" = "x"
-then
- XMLVERS=`$LIBXML_PREFIX/bin/xml2-config --version`
- if test VERSION_TO_NUMBER(echo $XMLVERS) -lt VERSION_TO_NUMBER(echo $LIBXML_REQUIRED_VERSION); then
- AC_MSG_ERROR(xmlstarlet needs at least libxml2 version $LIBXML_REQUIRED_VERSION (http://www.xmlsoft.org/))
- fi
-fi
-
-dnl
-dnl The following parameters offer
-dnl the ability to specify the location of the libxslt
-dnl library during linking and compilation.
-dnl
-LIBXSLT_PREFIX="/usr"
-AC_ARG_WITH(libxslt-prefix,
- [ --with-libxslt-prefix=[PFX] Specify location of libxslt],
- LIBXSLT_PREFIX=$withval
- LIBXSLT_CFLAGS="-I$withval/include/libxslt -I$withval/include/libexslt"
- LIBXSLT_LIBS="$withval/lib/libxslt.a $withval/lib/libexslt.a -lz -lm -lpthread"
-)
-
-AC_ARG_WITH(libxslt-include-prefix,
- [ --with-libxslt-include-prefix=[PFX] Specify location of libxslt headers],
- LIBXSLT_CFLAGS="-I$withval/libxslt -I$withval/libexslt -I$withval"
-)
-
-AC_ARG_WITH(libxslt-libs-prefix,
- [ --with-libxslt-libs-prefix=[PFX] Specify location of libxslt libs],
- LIBXSLT_LIBS="$withval/libxslt.a $withval/libexslt.a -lz -lm -lpthread"
-)
-
-AC_ARG_WITH(libxslt-src,
- [ --with-libxslt-src=[DIR] For libxslt thats not installed yet (sets all three above)],
- LIBXSLT_SRC="$withval"
- LIBXSLT_LIBS="$withval/libxslt/.libs/libxslt.a $withval/libexslt/.libs/libexslt.a -lz -lm -lpthread"
- LIBXSLT_CFLAGS="-I$withval/libxslt -I$withval/libexslt -I$withval"
-)
-
-LIBXSLT_REQUIRED_VERSION=1.1.9
+PKG_CHECK_MODULES(LIBXML, [libxml-2.0 >= 2.6.12])
+AC_SUBST(LIBXML_CFLAGS)
+AC_SUBST(LIBXML_LIBS)
-if test "x$LIBXSLT_SRC" = "x"
-then
- XSLTVERS=`$LIBXSLT_PREFIX/bin/xslt-config --version`
- if test VERSION_TO_NUMBER(echo $XSLTVERS) -lt VERSION_TO_NUMBER(echo $LIBXSLT_REQUIRED_VERSION); then
- AC_MSG_ERROR(xmlstarlet needs at least libxslt version $LIBXSLT_REQUIRED_VERSION (http://www.xmlsoft.org/))
- fi
-fi
+PKG_CHECK_MODULES(LIBXSLT, [libxslt >= 1.1.9 libexslt])
+AC_SUBST(LIBXSLT_CFLAGS)
+AC_SUBST(LIBXSLT_LIBS)
LIBICONV_PREFIX="/usr"
AC_ARG_WITH(libiconv-prefix,
diff -Naur xmlstarlet-1.0.0.old/debian/control xmlstarlet-1.0.0/debian/control
--- xmlstarlet-1.0.0.old/debian/control 2005-09-01 17:18:34.000000000 -0700
+++ xmlstarlet-1.0.0/debian/control 2005-09-01 17:09:01.000000000 -0700
@@ -2,7 +2,7 @@
Section: text
Priority: optional
Maintainer: Alex Mauer <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 4.0.0), libxslt1-dev (>=1.1.9)
+Build-Depends: debhelper (>= 4.0.0), libxml2-dev (>= 2.6.12), libxslt1-dev (>=1.1.9)
Standards-Version: 3.6.1.1
Package: xmlstarlet
diff -Naur xmlstarlet-1.0.0.old/debian/dirs xmlstarlet-1.0.0/debian/dirs
--- xmlstarlet-1.0.0.old/debian/dirs 2005-09-01 17:18:34.000000000 -0700
+++ xmlstarlet-1.0.0/debian/dirs 1969-12-31 16:00:00.000000000 -0800
@@ -1,2 +0,0 @@
-/usr/share/doc/xmlstarlet/doc
-/usr/share/doc/xmlstarlet/doc/callouts
diff -Naur xmlstarlet-1.0.0.old/debian/docs xmlstarlet-1.0.0/debian/docs
--- xmlstarlet-1.0.0.old/debian/docs 2005-09-01 17:18:34.000000000 -0700
+++ xmlstarlet-1.0.0/debian/docs 2005-09-01 16:26:24.000000000 -0700
@@ -1,3 +1,8 @@
NEWS
README
TODO
+doc/*.html
+doc/*.css
+doc/*.xml
+doc/*.ps
+doc/*.txt
diff -Naur xmlstarlet-1.0.0.old/debian/rules xmlstarlet-1.0.0/debian/rules
--- xmlstarlet-1.0.0.old/debian/rules 2005-09-01 17:18:34.000000000 -0700
+++ xmlstarlet-1.0.0/debian/rules 2005-09-07 17:43:16.000000000 -0700
@@ -27,11 +27,10 @@
config.status: configure
dh_testdir
# Add here commands to configure the package.
- CFLAGS="$(CFLAGS)" LDFLAGS="-lxml2 -lgcrypt -lxslt -lexslt" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
+ CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
rm -f COPYING
cp Copyright COPYING
-
build: build-stamp
build-stamp: config.status
@@ -50,13 +49,6 @@
# Add here commands to clean up after the build process.
-$(MAKE) distclean
-ifneq "$(wildcard /usr/share/misc/config.sub)" ""
- cp -f /usr/share/misc/config.sub config.sub
-endif
-ifneq "$(wildcard /usr/share/misc/config.guess)" ""
- cp -f /usr/share/misc/config.guess config.guess
-endif
-
dh_clean
@@ -73,12 +65,6 @@
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
- mv $(CURDIR)/debian/xmlstarlet/usr/bin/xml \
- $(CURDIR)/debian/xmlstarlet/usr/bin/xmlstarlet
- cp doc/*.html doc/*.css doc/*.xml doc/*.ps doc/*.txt \
- $(CURDIR)/debian/xmlstarlet/usr/share/doc/xmlstarlet/doc
- cp doc/callouts/* \
- $(CURDIR)/debian/xmlstarlet/usr/share/doc/xmlstarlet/doc/callouts
# Build architecture-dependent files here.
binary-arch: build install
diff -Naur xmlstarlet-1.0.0.old/debian/xmlstarlet.doc-base xmlstarlet-1.0.0/debian/xmlstarlet.doc-base
--- xmlstarlet-1.0.0.old/debian/xmlstarlet.doc-base 2005-09-01 17:18:34.000000000 -0700
+++ xmlstarlet-1.0.0/debian/xmlstarlet.doc-base 2005-09-01 17:06:33.000000000 -0700
@@ -1,18 +1,16 @@
Document: xmlstarlet
-Title: Debian xmlstarlet Manual
+Title: xmlstarlet Manual
Author: Mikhail Grushinskiy
-Abstract: This manual describes what xmlstarlet is
- and how it can be used to
- manage online manuals on Debian systems.
+Abstract: This manual describes the xmlstarlet XML processing tool.
Section: text
Format: postscript
-Files: /usr/share/doc/xmlstarlet/doc/xmlstarlet.ps.gz
+Files: /usr/share/doc/xmlstarlet/xmlstarlet.ps.gz
Format: text
-Files: /usr/share/doc/xmlstarlet/doc/xmlstarlet.txt.gz
+Files: /usr/share/doc/xmlstarlet/xmlstarlet.txt.gz
Format: HTML
-Index: /usr/share/doc/xmlstarlet/doc/xmlstarlet-ug.html
-Files: /usr/share/doc/xmlstarlet/doc/*.html
+Index: /usr/share/doc/xmlstarlet/xmlstarlet-ug.html
+Files: /usr/share/doc/xmlstarlet/*.html
signature.asc
Description: OpenPGP digital signature

