diff options
author | Mike Hommey <glandium@debian.org> | 2006-07-01 10:36:56 +0200 |
---|---|---|
committer | Mike Hommey <glandium@debian.org> | 2006-07-01 10:36:56 +0200 |
commit | e5e1e61d641cc0527857ee959cff9bbfd7b8adec (patch) | |
tree | 0a53b9bdae23df2f903757027919ff97c5051fb7 | |
parent | ef381f99921ea9fe00a07836b93f2a2bf865ca17 (diff) | |
download | libxml2-e5e1e61d641cc0527857ee959cff9bbfd7b8adec.tar.gz |
* debian/python-libxml2.examples.in: Renamed to
debian/python-libxml2.examples
* debian/python-libxml2.install.in: Renamed to
debian/python-libxml2.install, and replaced PYVERS by a wildcard.
* debian/control:
+ Adapted dependencies to fit all changes.
+ Added fields required by new Python policy.
+ Added fields necessary for flawless transition.
+ Replaced dummy python-libxml2 package by a full real package which
itself replaces python2.x-libxml2 packages.
* debian/rules:
+ Changed rules to get the python versions we want to build for and
adapted some rules to fit with the new setting.
+ Changed shell loops to make loops.
+ In case python binary modules are identical (and they are, but they
may not be with future versions of the python headers), replace some
of them with symbolic links.
+ Adapted rules to the fact we're installing in only one python package
instead of several.
* debian/pycompat: Set to 2, for new Python policy. Closes: #373456.
* debian/libxml2-doc.install: Added the /usr/share/gtk-doc directory.
Closes: #375113.
* debian/control: Made libxml2-doc suggest devhelper.
* libxml-2.0.pc.in, libxml-2.0-uninstalled.pc.in: Split Libs in Libs and
Libs.private.
* xml2-config.in, xml2-config.1: Added a --static option to add to --libs
so that we can split what is needed when building statically and what is
needed when building dynamically. Closes: #374017.
* libxml-2.0.pc.in, libxml-2.0-uninstalled.pc.in, xml2-config.in: Added
BASE_THREADS_LIBS to the static link information so that -lpthread would
appear. Closes: #372945.
* debian/rules: Add the NEWS file to dh_install calls. Closes: #365596.
* debian/watch: Updated.
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | debian/changelog | 43 | ||||
-rw-r--r-- | debian/control | 34 | ||||
-rw-r--r-- | debian/libxml2-doc.install | 1 | ||||
-rw-r--r-- | debian/pycompat | 1 | ||||
-rw-r--r-- | debian/python-libxml2.examples (renamed from debian/python-libxml2.examples.in) | 0 | ||||
-rw-r--r-- | debian/python-libxml2.install | 2 | ||||
-rw-r--r-- | debian/python-libxml2.install.in | 2 | ||||
-rwxr-xr-x | debian/rules | 55 | ||||
-rw-r--r-- | debian/watch | 4 | ||||
-rw-r--r-- | libxml-2.0-uninstalled.pc.in | 3 | ||||
-rw-r--r-- | libxml-2.0.pc.in | 3 | ||||
-rw-r--r-- | xml2-config.1 | 2 | ||||
-rw-r--r-- | xml2-config.in | 13 |
15 files changed, 101 insertions, 66 deletions
@@ -30786,7 +30786,7 @@ case "$host" in *) M_LIBS="-lm" ;; esac -XML_LIBS="-lxml2 $Z_LIBS $THREAD_LIBS $ICONV_LIBS $M_LIBS $LIBS" +XML_LIBS="-lxml2" XML_LIBTOOLLIBS="libxml2.la" diff --git a/configure.in b/configure.in index b2344fb..063d67b 100644 --- a/configure.in +++ b/configure.in @@ -1221,7 +1221,7 @@ case "$host" in *) M_LIBS="-lm" ;; esac -XML_LIBS="-lxml2 $Z_LIBS $THREAD_LIBS $ICONV_LIBS $M_LIBS $LIBS" +XML_LIBS="-lxml2" XML_LIBTOOLLIBS="libxml2.la" AC_SUBST(WITH_ICONV) diff --git a/debian/changelog b/debian/changelog index 8561723..4d61ebe 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,46 @@ +libxml2 (2.6.26.dfsg-2) unstable; urgency=low + + * The slithering release. + + * debian/python-libxml2.examples.in: Renamed to + debian/python-libxml2.examples + * debian/python-libxml2.install.in: Renamed to + debian/python-libxml2.install, and replaced PYVERS by a wildcard. + * debian/control: + + Adapted dependencies to fit all changes. + + Added fields required by new Python policy. + + Added fields necessary for flawless transition. + + Replaced dummy python-libxml2 package by a full real package which + itself replaces python2.x-libxml2 packages. + * debian/rules: + + Changed rules to get the python versions we want to build for and + adapted some rules to fit with the new setting. + + Changed shell loops to make loops. + + In case python binary modules are identical (and they are, but they + may not be with future versions of the python headers), replace some + of them with symbolic links. + + Adapted rules to the fact we're installing in only one python package + instead of several. + * debian/pycompat: Set to 2, for new Python policy. Closes: #373456. + * Switching to the new policy avoids necessity to conflict with very old + versions of the python bindings packages. Closes: #365057. + + * debian/libxml2-doc.install: Added the /usr/share/gtk-doc directory. + Closes: #375113. + * debian/control: Made libxml2-doc suggest devhelper. + * libxml-2.0.pc.in, libxml-2.0-uninstalled.pc.in: Split Libs in Libs and + Libs.private. + * xml2-config.in, xml2-config.1: Added a --static option to add to --libs + so that we can split what is needed when building statically and what is + needed when building dynamically. Closes: #374017. + * libxml-2.0.pc.in, libxml-2.0-uninstalled.pc.in, xml2-config.in: Added + BASE_THREADS_LIBS to the static link information so that -lpthread would + appear. Closes: #372945. + * debian/rules: Add the NEWS file to dh_install calls. Closes: #365596. + * debian/watch: Updated. + + -- Mike Hommey <glandium@debian.org> Sat, 1 Jul 2006 10:15:23 +0200 + libxml2 (2.6.26.dfsg-1) unstable; urgency=low * New upstream release. diff --git a/debian/control b/debian/control index 9f8cb7d..29c47e2 100644 --- a/debian/control +++ b/debian/control @@ -4,7 +4,7 @@ Section: libs Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org> Uploaders: Mike Hommey <glandium@debian.org> Standards-Version: 3.7.2.0 -Build-Depends: debhelper (>= 5.0.0), zlib1g-dev | libz-dev, python, python2.4-dev, python2.3-dev, autotools-dev, libreadline5-dev | libreadline-dev, binutils (>= 2.14.90.0.7) +Build-Depends: debhelper (>= 5.0.37.2), zlib1g-dev | libz-dev, python-all-dev (>= 2.3.5-11), python-support (>= 0.3), autotools-dev, libreadline5-dev | libreadline-dev, binutils (>= 2.14.90.0.7) Package: libxml2 Architecture: any @@ -77,6 +77,7 @@ Description: Debugging symbols for the GNOME XML library Package: libxml2-doc Architecture: all Section: doc +Suggests: devhelp Description: Documentation for the GNOME XML library XML is a metalanguage to let you design your own markup language. A regular markup language defines a way to describe information in @@ -89,33 +90,14 @@ Description: Documentation for the GNOME XML library and more specific API references. Package: python-libxml2 -Architecture: all -Section: python -Depends: ${python:Depends} -Description: Python bindings for the GNOME XML library - This package is a dummy package that will bring you the GNOME XML - library bindings for the current Python version. - -Package: python2.4-libxml2 Architecture: any Section: python -Depends: ${shlibs:Depends}, ${misc:Depends}, python2.4 -Description: Python 2.4 bindings for the GNOME XML library - XML is a metalanguage to let you design your own markup language. - A regular markup language defines a way to describe information in - a certain class of documents (eg HTML). XML lets you define your - own customized markup languages for many classes of document. It - can do this because it's written in SGML, the international standard - metalanguage for markup languages. - . - This package contains the files needed to use the GNOME XML library - in Python programs. - -Package: python2.3-libxml2 -Architecture: any -Section: python -Depends: ${shlibs:Depends}, ${misc:Depends}, python2.3 -Description: Python 2.3 bindings for the GNOME XML library +Conflicts: python2.3-libxml2 (<< 2.6.26.dfsg-2), python2.4-libxml2 (<< 2.6.26.dfsg-2) +Replaces: python2.3-libxml2 (<< 2.6.26.dfsg-2), python2.4-libxml2 (<< 2.6.26.dfsg-2) +Provides: ${python:Provides} +Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends} +XB-Python-Version: ${python:Versions} +Description: Python bindings for the GNOME XML library XML is a metalanguage to let you design your own markup language. A regular markup language defines a way to describe information in a certain class of documents (eg HTML). XML lets you define your diff --git a/debian/libxml2-doc.install b/debian/libxml2-doc.install index 2657b9d..2a59cf4 100644 --- a/debian/libxml2-doc.install +++ b/debian/libxml2-doc.install @@ -1 +1,2 @@ usr/share/doc/libxml2-doc +usr/share/gtk-doc diff --git a/debian/pycompat b/debian/pycompat new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/debian/pycompat @@ -0,0 +1 @@ +2 diff --git a/debian/python-libxml2.examples.in b/debian/python-libxml2.examples index de4ebf8..de4ebf8 100644 --- a/debian/python-libxml2.examples.in +++ b/debian/python-libxml2.examples diff --git a/debian/python-libxml2.install b/debian/python-libxml2.install new file mode 100644 index 0000000..eacf3b1 --- /dev/null +++ b/debian/python-libxml2.install @@ -0,0 +1,2 @@ +usr/lib/python*/site-packages/*.py* +usr/lib/python*/site-packages/*.so diff --git a/debian/python-libxml2.install.in b/debian/python-libxml2.install.in deleted file mode 100644 index 12ea550..0000000 --- a/debian/python-libxml2.install.in +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib/pythonPYVERS/site-packages/*.py* -usr/lib/pythonPYVERS/site-packages/*.so diff --git a/debian/rules b/debian/rules index 2d0a6c7..666856e 100755 --- a/debian/rules +++ b/debian/rules @@ -9,7 +9,9 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) # The versions of python currently supported -PYVERS=$(subst -dev,,$(subst python,,$(filter python%-dev,$(shell sed -n '/^Build-Depends/s/,//gp' debian/control)))) +PYVERS=$(shell pyversions -s) +# The current default version of python +PYVER=$(shell pyversions -d) WORKAROUND_REMOVED_FILES=include/libxml/xmlversion.h libxml2.spec python/setup.py doc/xmlcatalog.1 WORKAROUND_MODIFIED_FILES=python/libxml2-py.c @@ -27,9 +29,8 @@ build-stamp: dh_testdir # Workaround backups because of non-idempotent upstream: - for file in $(WORKAROUND_REMOVED_FILES) $(WORKAROUND_MODIFIED_FILES); do \ - cp -f -a $${file} $${file}-tmp; \ - done + $(foreach file, $(WORKAROUND_REMOVED_FILES) $(WORKAROUND_MODIFIED_FILES), \ + cp -f -a $(file) $(file)-tmp;) # ./configure CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --with-history @@ -50,17 +51,15 @@ clean: dh_testdir dh_testroot rm -f build-stamp install*-stamp - rm -f debian/python*.examples debian/python*.install - -$(MAKE) distclean + #-$(MAKE) distclean -rm -f example/Makefile rm COPYING && cp Copyright COPYING # Restore workaround backups of removed and modified files - -for file in $(WORKAROUND_REMOVED_FILES) $(WORKAROUND_MODIFIED_FILES); do \ - test -r $${file}-tmp && \ - mv -f $${file}-tmp $${file}; \ - done + -$(foreach file, $(WORKAROUND_REMOVED_FILES) $(WORKAROUND_MODIFIED_FILES), \ + test -r $(file)-tmp && \ + mv -f $(file)-tmp $(file);) -test -r /usr/share/misc/config.sub && \ cp -f /usr/share/misc/config.sub config.sub @@ -102,10 +101,9 @@ install-stamp: build-stamp # Special workaround for svn-buildpackage: # Restore workaround backups of modified files. - -for file in $(WORKAROUND_MODIFIED_FILES); do \ - test -r $${file}-tmp && \ - cat $${file}-tmp > $${file}; \ - done + -$(foreach file, $(WORKAROUND_MODIFIED_FILES), \ + test -r $(file)-tmp && \ + cat $(file)-tmp > $(file);) touch install-stamp @@ -118,22 +116,18 @@ install-python%-stamp: build-python%-stamp rm build-python$*-stamp cd python && $(MAKE) DESTDIR=`pwd`/../debian/tmp PYTHON=/usr/bin/python$* PYTHON_VERSION=$* PYTHON_INCLUDES=/usr/include/python$* install - sed s/PYVERS/$*/ debian/python-libxml2.install.in > debian/python$*-libxml2.install - cp debian/python-libxml2.examples.in debian/python$*-libxml2.examples - touch $@ -install-python-stamp: $(PYVERS:%=install-python%-stamp) +install-python-stamp: $(PYVERS:%=install-%-stamp) touch $@ # Build architecture-independent files here. binary-indep: build install dh_testdir -i dh_testroot -i - dh_installdocs -i -A AUTHORS TODO README + dh_installdocs -i -A AUTHORS TODO README NEWS dh_installchangelogs -i debian/no-upstream-changelog dh_install -i --sourcedir=debian/tmp - dh_python -i dh_link -i dh_strip -i dh_compress -i -Xexamples/ -Xtutorial/ -Xhtml/ -X.html @@ -149,23 +143,26 @@ binary-arch: build install dh_testdir -a dh_testroot -a dh_installexamples -a - dh_installdocs -plibxml2 -A AUTHORS TODO README - for python in $(PYVERS); do \ - dh_installdocs -ppython$${python}-libxml2 python/TODO; \ - for file in AUTHORS README README.Debian changelog.Debian.gz changelog.gz; do \ - ln -sf ../libxml2/$${file} debian/python$${python}-libxml2/usr/share/doc/python$${python}-libxml2/$${file}; \ - done; \ - done + dh_installdocs -plibxml2 -A AUTHORS TODO README NEWS + dh_installdocs -ppython-libxml2 python/TODO + ln -sf $(foreach file, AUTHORS README README.Debian changelog.Debian.gz changelog.gz,../libxml2/$(file)) debian/python-libxml2/usr/share/doc/python-libxml2/$(file) ln -sf libxml2 debian/libxml2-dev/usr/share/doc/libxml2-dev ln -sf libxml2 debian/libxml2-utils/usr/share/doc/libxml2-utils ln -sf libxml2 debian/libxml2-dbg/usr/share/doc/libxml2-dbg dh_installman -a dh_installchangelogs -plibxml2 ChangeLog dh_install -a --sourcedir=debian/tmp + dh_pysupport -a dh_python -a dh_link -a - dh_strip -a --dbg-package=libxml2-dbg $(addprefix -Npython,$(addsuffix -libxml2, $(PYVERS))) - dh_strip $(addprefix -ppython,$(addsuffix -libxml2, $(PYVERS))) + dh_strip -a --dbg-package=libxml2-dbg -Npython-libxml2 + dh_strip -ppython-libxml2 + $(foreach python, $(filter-out $(PYVER), $(PYVERS)),\ + cd $(CURDIR)/debian/python-libxml2/usr/lib/python-support/python-libxml2; \ + if diff $(python)/libxml2mod.so $(PYVER)/libxml2mod.so > /dev/null 2>&1; then \ + rm -f $(python)/libxml2mod.so; \ + ln -s ../$(PYVER)/libxml2mod.so $(python)/libxml2mod.so; \ + fi;) dh_compress -a -Xexamples/ dh_fixperms -a dh_makeshlibs -a -V 'libxml2 (>= 2.6.26)' diff --git a/debian/watch b/debian/watch index b54f727..3761f2b 100644 --- a/debian/watch +++ b/debian/watch @@ -1,2 +1,2 @@ -version=2 -ftp://xmlsoft.org/libxml2-([\d\.]+)\.tar\.gz debian svn-upgrade +version=3 +ftp://xmlsoft.org/libxml2/libxml2-([\d\.]+)\.tar\.gz diff --git a/libxml-2.0-uninstalled.pc.in b/libxml-2.0-uninstalled.pc.in index 0a4c833..af16ebc 100644 --- a/libxml-2.0-uninstalled.pc.in +++ b/libxml-2.0-uninstalled.pc.in @@ -8,5 +8,6 @@ Name: libXML Version: @VERSION@ Description: libXML library version2. Requires: -Libs: -L${libdir} -lxml2 @THREAD_LIBS@ @Z_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ +Libs: -L${libdir} -lxml2 +Libs.private: @BASE_THREAD_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ Cflags: -I${includedir} @XML_INCLUDEDIR@ @XML_CFLAGS@ diff --git a/libxml-2.0.pc.in b/libxml-2.0.pc.in index c66f82b..ef51ee1 100644 --- a/libxml-2.0.pc.in +++ b/libxml-2.0.pc.in @@ -8,5 +8,6 @@ Name: libXML Version: @VERSION@ Description: libXML library version2. Requires: -Libs: -L${libdir} -lxml2 @THREAD_LIBS@ @Z_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ +Libs: -L${libdir} -lxml2 +Libs.private: @BASE_THREAD_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ Cflags: @XML_INCLUDEDIR@ @XML_CFLAGS@ diff --git a/xml2-config.1 b/xml2-config.1 index 8a25962..8c11c2b 100644 --- a/xml2-config.1 +++ b/xml2-config.1 @@ -17,6 +17,8 @@ Print the currently installed version of \fIGNOME-XML\fP on the standard output. .TP 8 .B \-\-libs Print the linker flags that are necessary to link a \fIGNOME-XML\fP program. +Add the \fB\-\-static\fP option to print the linker flags that are necessary to +\fBstatically\fP link a \fIGNOME-XML\fP program. .TP 8 .B \-\-cflags Print the compiler flags that are necessary to compile a \fIGNOME-XML\fP program. diff --git a/xml2-config.in b/xml2-config.in index 30e1343..e7fdec1 100644 --- a/xml2-config.in +++ b/xml2-config.in @@ -15,6 +15,7 @@ Known values for OPTION are: --prefix=DIR change libxml prefix [default $prefix] --exec-prefix=DIR change libxml exec prefix [default $exec_prefix] --libs print library linking information + add --static to print static library linking information --cflags print pre-processor and compiler flags --modules module support enabled --help display this help and exit @@ -86,13 +87,19 @@ while test $# -gt 0; do then if [ "@XML_LIBDIR@" = "-L/usr/lib64" ] then - echo @XML_LIBS@ + LIBS="@XML_LIBS@" else - echo @XML_LIBDIR@ @XML_LIBS@ + LIBS="@XML_LIBDIR@ @XML_LIBS@" fi else - echo @XML_LIBDIR@ @XML_LIBS@ @WIN32_EXTRA_LIBADD@ + LIBS="@XML_LIBDIR@ @XML_LIBS@ @WIN32_EXTRA_LIBADD@" fi + if [ "$2" = "--static" ] + then + shift + LIBS="${LIBS} @Z_LIBS@ @BASE_THREAD_LIBS@ @THREAD_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@" + fi + echo ${LIBS} ;; *) |