[xml/sgml-commit] r440 - packages/xerces/xerces25/trunk/debian

Jay Berkenbilt qjb at costa.debian.org
Sun Aug 7 00:09:23 UTC 2005


Author: qjb
Date: 2005-08-07 00:09:23 +0000 (Sun, 07 Aug 2005)
New Revision: 440

Removed:
   packages/xerces/xerces25/trunk/debian/libxercesicu25c2.README.Debian
   packages/xerces/xerces25/trunk/debian/libxercesicu25c2.shlibs
Modified:
   packages/xerces/xerces25/trunk/debian/changelog
   packages/xerces/xerces25/trunk/debian/control
   packages/xerces/xerces25/trunk/debian/libxerces25c2.README.Debian
   packages/xerces/xerces25/trunk/debian/rules
Log:
build only ICU version of library

Modified: packages/xerces/xerces25/trunk/debian/changelog
===================================================================
--- packages/xerces/xerces25/trunk/debian/changelog	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/changelog	2005-08-07 00:09:23 UTC (rev 440)
@@ -1,3 +1,14 @@
+xerces25 (2.5.0-6) unstable; urgency=low
+
+  * Rebuild for new ICU
+  * 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. (Closes #273644)
+
+ -- Jay Berkenbilt <qjb at debian.org>  Sat,  6 Aug 2005 18:39:17 -0400
+
 xerces25 (2.5.0-5) unstable; urgency=low
 
   * g++ 4.0 transition: libxerces25 is now libxerces25c2; libxercesicu25

Modified: packages/xerces/xerces25/trunk/debian/control
===================================================================
--- packages/xerces/xerces25/trunk/debian/control	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/control	2005-08-07 00:09:23 UTC (rev 440)
@@ -1,7 +1,7 @@
 Source: xerces25
 Section: libs
 Priority: extra
-Build-Depends: debhelper (>= 4.1.0), libicu21-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
@@ -9,8 +9,9 @@
 Package: libxerces25c2
 Architecture: any
 Depends: ${shlibs:Depends}
+Provides: libxercesicu25c2
 Conflicts: libxerces25, libxercesicu25, libxercesicu25c2
-Replaces: libxerces25
+Replaces: libxerces25, libxercesicu25c2
 Suggests: xalan
 Description: validating XML parser library for C++
  Xerces-C++ is a validating XML parser written in a portable subset of
@@ -23,20 +24,13 @@
  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 libxercesicu25c2 instead.  A future
- version of these packages may drop support for the native transcoder
- entirely.
- .
  This is not the newest version of Xerces-C++ in Debian, but it is
  maintained because some applications require this specific version.
 
 Package: libxerces25-dev
 Section: libdevel
 Architecture: any
-Depends: libxerces25c2 (= ${Source-Version}) | libxercesicu25c2 (= ${Source-Version}), libc6-dev | libc-dev
+Depends: libxerces25c2 (= ${Source-Version}), libc6-dev | libc-dev
 Conflicts: libxerces21-dev, libxerces23-dev, libxerces24-dev
 Suggests: libxerces25-doc
 Description: validating XML parser library for C++ (development files)
@@ -51,27 +45,3 @@
 Description: validating XML parser library for C++ (documentation)
  Xerces-C++ is a validating XML parser written in a portable subset of C++.
  This package contains the documentation files.
-
-Package: libxercesicu25c2
-Architecture: any
-Depends: ${shlibs:Depends}
-Recommends: icu
-Conflicts: libxercesicu25, libxerces25, libxerces25c2
-Provides: libxerces25c2
-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/xerces25/trunk/debian/libxerces25c2.README.Debian
===================================================================
--- packages/xerces/xerces25/trunk/debian/libxerces25c2.README.Debian	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/libxerces25c2.README.Debian	2005-08-07 00:09:23 UTC (rev 440)
@@ -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 libxercesicu25 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:44:06 2005
+ -- Jay Berkenbilt <qjb at debian.org>, Sat Aug  6 20:07:07 2005

Deleted: packages/xerces/xerces25/trunk/debian/libxercesicu25c2.README.Debian
===================================================================
--- packages/xerces/xerces25/trunk/debian/libxercesicu25c2.README.Debian	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/libxercesicu25c2.README.Debian	2005-08-07 00:09:23 UTC (rev 440)
@@ -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:44:14 2005

Deleted: packages/xerces/xerces25/trunk/debian/libxercesicu25c2.shlibs
===================================================================
--- packages/xerces/xerces25/trunk/debian/libxercesicu25c2.shlibs	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/libxercesicu25c2.shlibs	2005-08-07 00:09:23 UTC (rev 440)
@@ -1,7 +0,0 @@
-# We purposely require libxerces25 rather than libxercesicu25 here
-# since libxercesicu25 provides libxerces25 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 25 libxerces25c2

Modified: packages/xerces/xerces25/trunk/debian/rules
===================================================================
--- packages/xerces/xerces25/trunk/debian/rules	2005-08-06 23:39:02 UTC (rev 439)
+++ packages/xerces/xerces25/trunk/debian/rules	2005-08-07 00:09:23 UTC (rev 440)
@@ -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_.
@@ -49,26 +11,19 @@
 l_LONGSONAME=$(l_SHORTSONAME).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_5_0
 DEB_INSTALL_DIRS_libxerces25c2 = /usr/lib
-DEB_INSTALL_DIRS_libxercesicu25c2 = /usr/lib
 DEB_INSTALL_DIRS_libxerces25-dev = /usr/include /usr/lib/$(l_PKGNAME)
-DEB_INSTALL_EXAMPLES_libxerces25-dev = $(l_PWD)/$(l_CLEAN_BUILD_DIR)/samples
+DEB_INSTALL_EXAMPLES_libxerces25-dev = $(l_PWD)/$(l_BUILD_DIR)/samples/*
 DEB_INSTALL_DOCS_libxerces25-doc = \
-	$(l_PWD)/$(l_CLEAN_BUILD_DIR)/doc/*
+	$(l_PWD)/$(l_BUILD_DIR)/doc/*
 DEB_INSTALL_DOCS_libxerces25-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
 
 # Include cdbs rules files.
@@ -80,100 +35,44 @@
 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/libxerces25c2 configure/libxerces25-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/libxerces25c2::
+	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/libxerces25c2 configure/libxerces25-dev:: $(l_STAMPS)/configure/$(l_NATIVE_BUILD)
-
-configure/libxercesicu25c2:: $(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/libxerces25c2:: $(l_STAMPS)/build/$(l_NATIVE_BUILD)
-
-build/libxercesicu25c2:: $(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/libxerces25-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 \
 		&& rm -f $(l_LIBNAME).so* \
 		&& ln -sf $(l_SHORTSONAME) $(l_LIBNAME).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
@@ -182,17 +81,15 @@
 	find $(DEB_INSTALL_EXAMPLES_libxerces25-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_LIBNAME).so \
+install/libxerces25c2::
+	cp $(l_PWD)/$(l_BUILD_DIR)/lib/$(l_LIBNAME).so \
 		$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_LONGSONAME)
 	ln -sf $(l_LONGSONAME) \
 		$(l_INSTALL)/$(cdbs_curpkg)/usr/lib/$(l_SHORTSONAME)
-endef
 
-install/libxerces25c2::
-	$(subst __BUILD_DIR__,$(l_NATIVE_BUILD_DIR),$(l_install_libs))
-
-install/libxercesicu25c2::
-	$(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