[xml/sgml-commit] r438 - packages/xerces/xerces26/trunk/debian
Jay Berkenbilt
qjb at costa.debian.org
Sat Aug 6 23:10:21 UTC 2005
Author: qjb
Date: 2005-08-06 23:10:20 +0000 (Sat, 06 Aug 2005)
New Revision: 438
Added:
packages/xerces/xerces26/trunk/debian/libxerces26c2.lintian
Removed:
packages/xerces/xerces26/trunk/debian/libxercesicu26c2.README.Debian
packages/xerces/xerces26/trunk/debian/libxercesicu26c2.shlibs
Modified:
packages/xerces/xerces26/trunk/debian/changelog
packages/xerces/xerces26/trunk/debian/control
packages/xerces/xerces26/trunk/debian/libxerces26c2.README.Debian
packages/xerces/xerces26/trunk/debian/rules
Log:
build only ICU version of library
Modified: packages/xerces/xerces26/trunk/debian/changelog
===================================================================
--- packages/xerces/xerces26/trunk/debian/changelog 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/changelog 2005-08-06 23:10:20 UTC (rev 438)
@@ -5,8 +5,13 @@
* Rebuild for new ICU
* Patch to correct a problem in IGXMLScanner.cpp that could cause a
segmentation fault for certain input files (Xerces-C issue 1471)
+ * Drop support for packages built with the native transcoder. The
+ xerces libraries now use the ICU transcoder exclusively. As a result
+ of repackaging of ICU, it is no longer necessary to install additional
+ packages (outside of this package's dependencies) to support multiple
+ a wide range of locales.
- -- Jay Berkenbilt <qjb at debian.org> Sat, 6 Aug 2005 15:40:25 -0400
+ -- Jay Berkenbilt <qjb at debian.org> Sat, 6 Aug 2005 18:38:52 -0400
xerces26 (2.6.0-4) unstable; urgency=low
Modified: packages/xerces/xerces26/trunk/debian/control
===================================================================
--- packages/xerces/xerces26/trunk/debian/control 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/control 2005-08-06 23:10:20 UTC (rev 438)
@@ -1,7 +1,7 @@
Source: xerces26
Section: libs
Priority: extra
-Build-Depends: debhelper (>= 4.1.0), libicu34-dev, xutils, cdbs
+Build-Depends: debhelper (>= 4.1.0), libicu34-dev, cdbs
Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs at lists.alioth.debian.org>
Uploaders: Jay Berkenbilt <qjb at debian.org>
Standards-Version: 3.6.2
@@ -28,8 +28,9 @@
Package: libxerces26c2
Architecture: any
Depends: ${shlibs:Depends}
+Provides: libxercesicu26c2
Conflicts: libxercesicu26, libxerces26, libxercesicu26c2
-Replaces: libxerce26
+Replaces: libxerce26, libxercesicu26c2
Suggests: xalan
Description: Validating XML parser library for C++
Xerces-C++ is a validating XML parser written in a portable subset of
@@ -41,34 +42,3 @@
Part 2). It also provides experimental implementations of XML 1.1
and DOM Level 3.0. The parser provides high performance, modularity,
and scalability.
- .
- This version of the Xerces-C++ library uses the xerces native
- transcoder which is not capable of loading external encodings. If
- you need to process XML files encoded in other than ASCII,
- ISO-8859-1, or UTF-8, please use libxercesicu26c2 instead. A future
- version of these packages may drop support for the native transcoder
- entirely.
-
-Package: libxercesicu26c2
-Architecture: any
-Depends: ${shlibs:Depends}
-Recommends: icu
-Conflicts: libxerces26, libxerces26c2, libxercesicu26
-Provides: libxerces26c2
-Suggests: xalan
-Description: Validating XML parser library for C++
- Xerces-C++ is a validating XML parser written in a portable subset of
- C++. Xerces-C++ makes it easy to give your application the ability
- to read and write XML data. A shared library is provided for parsing,
- generating, manipulating, and validating XML documents. Xerces-C++ is
- faithful to the XML 1.0 recommendation and associated standards (DOM
- 1.0, DOM 2.0, SAX 1.0, SAX 2.0, Namespaces, XML Schema Part 1 and
- Part 2). It also provides experimental implementations of XML 1.1
- and DOM Level 3.0. The parser provides high performance, modularity,
- and scalability.
- .
- This version of the Xerces-C++ library uses the ICU transcoder.
- Please note that you must install the icu package in order to have
- the runtime data required to use many of the supported encodings.
- Without the icu package installed, standard encodings (ASCII,
- ISO-8859-1, and UTF-8) still work.
Modified: packages/xerces/xerces26/trunk/debian/libxerces26c2.README.Debian
===================================================================
--- packages/xerces/xerces26/trunk/debian/libxerces26c2.README.Debian 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/libxerces26c2.README.Debian 2005-08-06 23:10:20 UTC (rev 438)
@@ -1,9 +1,7 @@
-This version of the Xerces-C++ library uses the xerces native
-transcoder which is not capable of loading external encodings. If
-you need to process XML files encoded in other than ASCII,
-ISO-8859-1, or UTF-8, please use libxercesicu26 instead. A future
-version of these packages may drop support for the native transcoder
-entirely.
+This version of the Xerces-C++ library uses the ICU transcoder.
+Earlier versions of the xerces packages included two versions of the
+libraries: one using the native transcoder, and one using the ICU
+transcoder. Native transcoder versions are no longer included.
- -- Jay Berkenbilt <qjb at debian.org>, Tue Mar 22 19:45:24 2005
+ -- Jay Berkenbilt <qjb at debian.org>, Sat Aug 6 18:41:14 2005
Added: packages/xerces/xerces26/trunk/debian/libxerces26c2.lintian
===================================================================
--- packages/xerces/xerces26/trunk/debian/libxerces26c2.lintian 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/libxerces26c2.lintian 2005-08-06 23:10:20 UTC (rev 438)
@@ -0,0 +1 @@
+libxerces26c2: package-name-doesnt-match-sonames libxerces-c26 libxerces-depdom26
Deleted: packages/xerces/xerces26/trunk/debian/libxercesicu26c2.README.Debian
===================================================================
--- packages/xerces/xerces26/trunk/debian/libxercesicu26c2.README.Debian 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/libxercesicu26c2.README.Debian 2005-08-06 23:10:20 UTC (rev 438)
@@ -1,8 +0,0 @@
-
-This version of the Xerces-C++ library uses the ICU transcoder.
-Please note that you must install the icu package in order to have
-the runtime data required to use many of the supported encodings.
-Without the icu package installed, standard encodings (ASCII,
-ISO-8859-1, and UTF-8) still work.
-
- -- Jay Berkenbilt <qjb at debian.org>, Tue Mar 22 19:45:33 2005
Deleted: packages/xerces/xerces26/trunk/debian/libxercesicu26c2.shlibs
===================================================================
--- packages/xerces/xerces26/trunk/debian/libxercesicu26c2.shlibs 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/libxercesicu26c2.shlibs 2005-08-06 23:10:20 UTC (rev 438)
@@ -1,8 +0,0 @@
-# We purposely require libxerces26 rather than libxercesicu26 here
-# since libxercesicu26 provides libxerces26 and is expected to
-# disappear in a future release of this package (when the default uses
-# icu). The xerces libraries in both the regular and icu versions of
-# the package have identical ABIs -- the differences are only in which
-# files are loaded at runtime.
-libxerces-c 26 libxerces26c2
-libxerces-depdom 26 libxerces26c2
Modified: packages/xerces/xerces26/trunk/debian/rules
===================================================================
--- packages/xerces/xerces26/trunk/debian/rules 2005-08-06 20:01:32 UTC (rev 437)
+++ packages/xerces/xerces26/trunk/debian/rules 2005-08-06 23:10:20 UTC (rev 438)
@@ -1,43 +1,5 @@
#!/usr/bin/make -f
-# --------------------------------------------------------------------
-
-# This is the debian/rules file for building Xerces packages. It uses
-# cdbs to build two versions of the libraries: one using the native
-# transcoder and one using the transcoder implemented in libicu. This
-# requires that we configure build everything twice. As of this cdbs
-# 0.4.21, there is no clean support for packages that configure
-# themselves multiple times with different arguments.
-
-# Note that thare have been historical problems, particularly on
-# powerpc, with the IconvGNU transcoder version of the library. The
-# default configuration and the upstream-supplied Red Hat packaging
-# both use native, and there have been compiler errors in the GNU
-# transcoding source files at times. Additionally, at least two
-# separate bugs have been seen with the GNU transcoder version of the
-# library on powerpc. At some future time, we may switch to an
-# ICU-only version of the library.
-
-# Our strategy is to extract the upstream tarball into build-tree
-# using cdbs's tarball.mk. Then we use lndir, which is part of xutils
-# (hence the build dependency on xutils), to create two symbolic link
-# farms: one for the native transcoder version, and one for the ICU
-# transcoder version. The clean build tree is used for the doc
-# package, the native build tree is used for the development and
-# native runtime packages, and the ICU build tree is used for the ICU
-# runtime packages. To make this work, we make excessive use of stamp
-# files: our normal build targets depend upon stamp files, and the
-# stamp files' rules do the actual work. This prevents needless
-# repetition of effort. To avoid conflicts with stamp files used by
-# cdbs, all our stamps go in debian/l_stamps.
-
-# To avoid code repetition, this file makes use of gnu make's "define"
-# functionality. The technique of substituting words like __THIS__
-# with variables is used to simulate functions with parameters. See
-# l_configure and l_install_libs for examples.
-
-# --------------------------------------------------------------------
-
# To distinguish variables that are truly local to this file (rather
# than for use by cdbs), we adopt the convention of starting local
# variables' names with l_.
@@ -52,26 +14,19 @@
l_LONGSONAME2=$(l_SHORTSONAME2).0
l_PWD := $(shell pwd)
-l_STAMPS = debian/l_stamps
-l_NATIVE_BUILD = native-build
-l_ICU_BUILD = icu-build
-l_BUILDS = $(l_ICU_BUILD) $(l_NATIVE_BUILD)
-l_NATIVE_BUILD_DIR = build-tree/native-build
-l_ICU_BUILD_DIR = build-tree/icu-build
-l_CLEAN_BUILD_DIR = build-tree/$(DEB_TAR_SRCDIR)
+l_BUILD_DIR = build-tree/$(DEB_TAR_SRCDIR)
l_INSTALL = $(l_PWD)/debian
# Variables used by cdbs
DEB_TAR_SRCDIR = xerces-c-src_2_6_0
DEB_INSTALL_DIRS_libxerces26c2 = /usr/lib
-DEB_INSTALL_DIRS_libxercesicu26c2 = /usr/lib
DEB_INSTALL_DIRS_libxerces26-dev = /usr/include /usr/lib/$(l_PKGNAME)
-DEB_INSTALL_EXAMPLES_libxerces26-dev = $(l_PWD)/$(l_CLEAN_BUILD_DIR)/samples
+DEB_INSTALL_EXAMPLES_libxerces26-dev = $(l_PWD)/$(l_BUILD_DIR)/samples
DEB_INSTALL_DOCS_libxerces26-doc = \
- $(l_PWD)/$(l_CLEAN_BUILD_DIR)/doc/*
+ $(l_PWD)/$(l_BUILD_DIR)/doc/*
DEB_INSTALL_DOCS_libxerces26-dev = \
- $(l_PWD)/$(l_CLEAN_BUILD_DIR)/credits.txt \
- $(l_PWD)/$(l_CLEAN_BUILD_DIR)/Readme.html
+ $(l_PWD)/$(l_BUILD_DIR)/credits.txt \
+ $(l_PWD)/$(l_BUILD_DIR)/Readme.html
DEB_COMPRESS_EXCLUDE = sample html
# Exclude deprecrated dom library from shlib dependency calculation
@@ -91,94 +46,38 @@
export USELIBWWW=0
export ICUROOT=/usr
-cleanbuilddir::
- $(RM) -r $(l_STAMPS)
-
# As 0.4.21, cdbs creates but doesn't debian/compat. It creates it
# conditionally, so this doesn't have a trivial fix.
clean::
- $(RM) debian/compat
+ $(RM) debian/compat *.cdbs-config_list
-# function for making a stamp in a deep directory structure
-define l_makestamp
- mkdir -p $(dir $@)
- touch $@
-endef
-
-# Create a symbolic link farm to the build area.
-$(patsubst %,$(l_STAMPS)/lndir/%,$(l_BUILDS)):
- mkdir -p build-tree/$(notdir $@)
- lndir -silent ../$(DEB_TAR_SRCDIR) build-tree/$(notdir $@)
- $(l_makestamp)
-
-# The configure commands for the two packages are identical except for
-# build directory and transcoder. We use pattern substitution with
-# this define to avoid duplicating this code.
-define l_configure
- chmod a+x __BUILD_DIR__/src/xercesc/runConfigure
- cd __BUILD_DIR__/src/xercesc \
- && XERCESCROOT=$(l_PWD)/__BUILD_DIR__ \
- sh runConfigure -plinux -cgcc -xg++ -minmem -t__TRANSCODER__ \
+configure/libxerces26c2 configure/libxerces26-dev::
+ chmod a+x $(l_BUILD_DIR)/src/xercesc/runConfigure
+ cd $(l_BUILD_DIR)/src/xercesc \
+ && XERCESCROOT=$(l_PWD)/$(l_BUILD_DIR) \
+ sh runConfigure -plinux -cgcc -xg++ -minmem -ticu \
-z -g \
-C --prefix=/usr \
-C --mandir=\$${prefix}/share/man \
-C --infodir=\$${prefix}/share/info
- $(l_makestamp)
-endef
-# Configure stamps depend upon lndir stamps and invoke l_configure as
-# defined above.
+build/libxerces26c2::
+ XERCESCROOT=$(l_PWD)/$(l_BUILD_DIR) \
+ $(MAKE) -C $(l_BUILD_DIR)/src/xercesc
-# See comments at the top of the file for a discussion of why we use
-# this combination of transcoders.
-$(l_STAMPS)/configure/$(l_NATIVE_BUILD): $(l_STAMPS)/lndir/$(l_NATIVE_BUILD)
- $(subst __BUILD_DIR__,$(l_NATIVE_BUILD_DIR),$(subst __TRANSCODER__,native,$(l_configure)))
-
-$(l_STAMPS)/configure/$(l_ICU_BUILD): $(l_STAMPS)/lndir/$(l_ICU_BUILD)
- $(subst __BUILD_DIR__,$(l_ICU_BUILD_DIR),$(subst __TRANSCODER__,icu,$(l_configure)))
-
-# The development and native runtime packages depend upon the native
-# build directory. The ICU version depends upon the ICU build
-# directory. The documentation package only depends upon the initial
-# extracted source tree which doesn't need any special configuration.
-
-configure/libxerces26c2 configure/libxerces26-dev:: $(l_STAMPS)/configure/$(l_NATIVE_BUILD)
-
-configure/libxercesicu26c2:: $(l_STAMPS)/configure/$(l_ICU_BUILD)
-
-# Build rules again using stamps
-
-$(l_STAMPS)/build/$(l_NATIVE_BUILD):
- XERCESCROOT=$(l_PWD)/$(l_NATIVE_BUILD_DIR) \
- $(MAKE) -C $(l_NATIVE_BUILD_DIR)/src/xercesc
- $(l_makestamp)
-
-$(l_STAMPS)/build/$(l_ICU_BUILD):
- XERCESCROOT=$(l_PWD)/$(l_ICU_BUILD_DIR) \
- $(MAKE) -C $(l_ICU_BUILD_DIR)/src/xercesc
- $(l_makestamp)
-
-build/libxerces26c2:: $(l_STAMPS)/build/$(l_NATIVE_BUILD)
-
-build/libxercesicu26c2:: $(l_STAMPS)/build/$(l_ICU_BUILD)
-
# The xerces install target installs development files as well as
# shared libraries, and it doesn't necessarily install the right
# shared library file names. Here we use make install to create the
# development package, and we install the shared libraries for the
-# runtime packages manually.
-
-# We use the native build to install developer files, though it
-# doesn't really matter which build we use. After running make
-# install, remove all installed shared library files, create a
-# versionless dangling symbolic link to the real shared library file
-# that will be installed in the runtime package, install
-# config.status, which is needed to build libxml-xerces-perl, and
-# clean up some lintian warnings about executable files (that aren't
-# fixed by dh_fixperms).
+# runtime packages manually. After running make install, remove all
+# installed shared library files, create a versionless dangling
+# symbolic link to the real shared library file that will be installed
+# in the runtime package, install config.status, which is needed to
+# build libxml-xerces-perl, and clean up some lintian warnings about
+# executable files (that aren't fixed by dh_fixperms).
install/libxerces26-dev::
- XERCESCROOT=$(l_PWD)/$(l_NATIVE_BUILD_DIR) \
- $(MAKE) -C $(l_NATIVE_BUILD_DIR)/src/xercesc \
+ XERCESCROOT=$(l_PWD)/$(l_BUILD_DIR) \
+ $(MAKE) -C $(l_BUILD_DIR)/src/xercesc \
install PREFIX=$(l_INSTALL)/$(cdbs_curpkg)/usr \
prefix=$(l_INSTALL)/$(cdbs_curpkg)/usr
cd $(l_INSTALL)/$(cdbs_curpkg)/usr/lib \
@@ -186,7 +85,7 @@
&& ln -sf $(l_SHORTSONAME1) $(l_LIBNAME1).so \
&& rm -f $(l_LIBNAME2).so* \
&& ln -sf $(l_SHORTSONAME2) $(l_LIBNAME2).so
- cp $(l_PWD)/$(l_NATIVE_BUILD_DIR)/src/xercesc/config.status \
+ cp $(l_PWD)/$(l_BUILD_DIR)/src/xercesc/config.status \
$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_PKGNAME)
find $(l_INSTALL)/$(cdbs_curpkg)/usr/include -type f -print | \
xargs chmod -x
@@ -195,21 +94,19 @@
find $(DEB_INSTALL_EXAMPLES_libxerces26-dev) \
-name '*.cdbs-orig' -print | xargs rm
-# The rule for manually installing shared library files is identical
-# except for build directory.
-define l_install_libs
- cp $(l_PWD)/__BUILD_DIR__/lib/$(l_LIBNAME1).so \
+install/libxerces26c2::
+ cp $(l_PWD)/$(l_BUILD_DIR)/lib/$(l_LIBNAME1).so \
$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_LONGSONAME1)
ln -sf $(l_LONGSONAME1) \
$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_SHORTSONAME1)
- cp $(l_PWD)/__BUILD_DIR__/lib/$(l_LIBNAME2).so \
+ cp $(l_PWD)/$(l_BUILD_DIR)/lib/$(l_LIBNAME2).so \
$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_LONGSONAME2)
ln -sf $(l_LONGSONAME2) \
$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_SHORTSONAME2)
-endef
-install/libxerces26c2::
- $(subst __BUILD_DIR__,$(l_NATIVE_BUILD_DIR),$(l_install_libs))
-
-install/libxercesicu26c2::
- $(subst __BUILD_DIR__,$(l_ICU_BUILD_DIR),$(l_install_libs))
+# Install lintian override files
+binary-post-install/%::
+ if [ -f debian/$*.lintian ]; then \
+ mkdir -p debian/$*/usr/share/lintian/overrides && \
+ cp -p debian/$*.lintian debian/$*/usr/share/lintian/overrides/$*; \
+ fi
More information about the debian-xml-sgml-commit
mailing list