ICU-5321 Update Debian rules.

X-SVN-Rev: 20617
This commit is contained in:
George Rhoten 2006-10-31 22:30:16 +00:00
parent 0b66ebe18c
commit 84d92e90ed
5 changed files with 168 additions and 328 deletions

View File

@ -1,3 +1,92 @@
icu (3.6-1) unstable; urgency=low
* New upstream release
* Provide libicu34-dev since ICU 3.6 provides backward compatible
interfaces in addition to new ones.
-- Jay Berkenbilt <qjb@debian.org> Tue, 19 Sep 2006 12:10:41 -0400
icu (3.6~d02-1) experimental; urgency=low
* New upstream release.
* Remove special optimization hack to work around now-fixed m68k build
problems. (Closes: #360743)
* Update standards version. No changes required.
-- Jay Berkenbilt <qjb@debian.org> Tue, 15 Aug 2006 16:34:34 -0400
icu (3.4.1a-1) unstable; urgency=low
* Upstream re-released 3.4.1 without changing the version number because
the header file with 3.4.1 still said it was 3.4. Unfortunately, the
debian 3.4.1 package had already been uploaded. This "3.4.1a" release
now matches upstream's 3.4.1.
-- Jay Berkenbilt <qjb@debian.org> Wed, 29 Mar 2006 22:19:08 -0500
icu (3.4.1-1) unstable; urgency=low
* New upstream release
-- Jay Berkenbilt <qjb@debian.org> Fri, 3 Mar 2006 23:07:52 -0500
icu (3.4-4) unstable; urgency=low
* Build with g++ 4.0 with -fno-strict-aliasing to work around g++ 4.0
bugs that impact ICU. Future versions should work properly with the
latest g++ without any special flags. (Closes: #342970)
* Enable static libraries.
-- Jay Berkenbilt <qjb@debian.org> Sun, 22 Jan 2006 11:36:59 -0500
icu (3.4-3) unstable; urgency=low
* Explicitly build with g++ 3.4. The current ICU fails its test suite
with 4.0 but not with 3.4. Future versions should work properly with
4.0.
-- Jay Berkenbilt <qjb@debian.org> Sat, 19 Nov 2005 11:29:31 -0500
icu (3.4-2) unstable; urgency=low
* Remove some extraneous build steps that may cause problems with
autobuilders.
-- Jay Berkenbilt <qjb@debian.org> Sat, 13 Aug 2005 12:41:35 -0400
icu (3.4-1) unstable; urgency=low
* New upstream release
* Completely new packaging
-- Jay Berkenbilt <qjb@debian.org> Fri, 5 Aug 2005 21:57:15 -0400
icu (2.1-3) unstable; urgency=low
* New maintainer as per discussion with Ivo.
* g++ 4.0 transition: libicu21c102 is now libicu21c2.
* Accepted changes from NMU below for now. This change will be
reversed soon when icu is updated to the current upstream version.
The icu28 package will also be removed at that time, as per discussion
with the icu28 maintainer. Closes: #301316
* Add shlibs files
-- Jay Berkenbilt <qjb@debian.org> Sat, 9 Jul 2005 13:33:35 -0400
icu (2.1-2.1) unstable; urgency=medium
* Rename icu-doc to icu21-doc. icu-doc is built by the icu28 package.
-- Matthias Klose <doko@debian.org> Sat, 21 May 2005 22:44:31 +0200
icu (2.1-2) unstable; urgency=low
* debian/control: Changed maintainer, added Daniel Glassey as Uploader.
(Reference:
http://lists.debian.org/debian-devel/2003/debian-devel-200308/msg01963.html)
-- Ivo Timmermans <ivo@debian.org> Sun, 18 Jan 2004 23:52:03 +0100
icu (2.6.1-1) experimental; urgency=low
* New upstream version.
@ -12,6 +101,7 @@ icu (2.6-1) experimental; urgency=low
* New upstream version. Closes: #162975
* debian/control: New maintainers
* Daniel Glassey:
* debian/rules Don't use --enable-static as it bloats the packages
* debian/rules Change the optimisations to -O3 and -O to get it to build
* debian/rules get the latest config.{sub,guess} from /usr/share/misc
so add build-dep on autotools-dev
@ -36,7 +126,6 @@ icu (2.1-1.1) unstable; urgency=low
* source/common/unicode/docmain.h: Fix \mainpage and \section tags,
so doxygen doesn't get confused any more. Closes: #178344
* debian/copyright: Added upstream URL. Closes: #165780
*
-- Ivo Timmermans <ivo@debian.org> Fri, 14 Feb 2003 15:21:56 +0100
@ -149,7 +238,3 @@ icu (1.6.0.1-20001017-1) unstable; urgency=low
* Initial Release.
-- Yves Arrouye <yves@debian.org> Tue, 24 Oct 2000 16:14:12 -0700
Local variables:
mode: debian-changelog
End:

View File

@ -1,90 +1,39 @@
Source: icu
Section: libs
Priority: optional
Maintainer: Daniel Glassey <wdg@debian.org>
Uploaders: Ivo Timmermans <ivo@debian.org>
Standards-Version: 3.6.0
Build-Depends: debhelper (>> 3.0), doxygen, autotools-dev
Maintainer: Jay Berkenbilt <qjb@debian.org>
Standards-Version: 3.7.2
Build-Depends: cdbs, debhelper (>= 4.1.0), doxygen
Package: libicu30-dev
Section: devel
Package: libicu36
Section: libs
Architecture: any
Depends: libicu${major} (= ${Source-Version}), libc6-dev
Provides: libicu-dev
Conflicts: libicu-dev
Depends: ${shlibs:Depends}
Replaces: icu, icu-locales
Conflicts: icu, icu-locales
Description: International Components for Unicode (libraries)
ICU is a C++ and C library that provides robust and full-featured
Unicode and locale support. This package contains the runtime
libraries for ICU.
Package: libicu36-dev
Section: libdevel
Architecture: any
Depends: libicu36 (= ${Source-Version}), libc6-dev | libc-dev
Provides: libicu-dev, libicu34-dev
Replaces: libicu21-dev, libicu28-dev, icu-data, icu-i18ndata, libicu34-dev
Conflicts: libicu21-dev, libicu28-dev, libicu-dev, icu-data, icu-i18ndata, libicu34-dev
Suggests: icu-doc
Description: International Components for Unicode (development files)
ICU is a C++ and C library that provides robust and full-featured Unicode
and locale support. This package contains the development files for ICU.
ICU is a C++ and C library that provides robust and full-featured
Unicode and locale support. This package contains the development
files for ICU along with programs used to manipulate data files found
in the ICU sources.
Package: icu-doc
Section: doc
Architecture: all
Description: API documentation for ICU classes and functions
ICU is a C++ and C library that provides robust and full-featured Unicode
and locale support. This package contains HTML files documenting the ICU
APIs.
Package: libicu30
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Recommends: icu
Description: International Components for Unicode (libraries)
ICU is a C++ and C library that provides robust and full-featured Unicode
and locale support. This package contains the runtime libraries for
ICU. It does not contain any of the data files needed at runtime and
present in the `icu' and `icu-locales` packages.
Package: icu
Section: libs
Architecture: any
Depends: libicu${major} (>= ${Source-Version}), make
Recommends: icu-locales
Description: International Components for Unicode (non locale data)
ICU is a C++ and C library that provides robust and full-featured Unicode
and locale support. The library provides calendar support, conversions
for more than 230 character sets, language-sensitive collation, date
and time formatting, support for more than 140 locales, message catalogs
and resources, message formatting, normalization, number and currency
formatting, time zones support, transliteration, word, line and
sentence breaking, etc.
.
This package contains the Unicode character database and derived
properties, along with converters and time zones data.
It also contains the tools needed to manipulate these data.
Package: icu-locales
Section: libs
Architecture: any
Depends: libicu${major} (>= ${Source-Version})
Description: Locale data for ICU
The locale data are used by ICU to provide localization (l10n) and
internationalization (i18n) support to applications using the ICU library.
This package also contains break data for various languages, and
transliteration data.
Package: icu-data
Priority: extra
Section: libs
Architecture: all
Depends: icu
Description: Data for ICU (source files)
These data describe the Unicode data (normative and informative), and
also all the table-based converters provided in the ICU distribution.
.
This package contains uncompiled source data. Precompiled data are in the
`libicu${major}' package.
Package: icu-i18ndata
Priority: extra
Section: libs
Architecture: all
Depends: icu
Description: Locale data for ICU (source files)
The locale data are used by ICU to provide localization (l10n) and
internationalization (i18n) support to ICU applications. This package
also contains break data for various languages, and transliteration data.
.
This package contains uncompiled source data. Precompiled data are in the
`icu-locales' package.
ICU is a C++ and C library that provides robust and full-featured
Unicode and locale support. This package contains HTML files
documenting the ICU APIs.

View File

@ -0,0 +1 @@
debian/tmp/usr/share/doc/icu/html usr/share/doc/icu-doc

View File

@ -1,256 +1,51 @@
#!/usr/bin/make -f
# Copyright (c) 2000-2006 International Business Machines
# Corporation and others. All Rights Reserved.
# ICU debian/rules that uses debhelper.
#
# Copyright (c) 1999-2006, International Business Machines Corporation and
# others. All Rights Reserved.
#
# 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_.
# The Debian packages for ICU are created and maintained by
# Yves Arrouye <yves@debian.org>. They are part of Debian GNU/Linux
# since the Debian woody release.
l_PWD := $(shell pwd)
l_STAMPS := debian/l_stamps
l_RUN_CHECK := 1
# Decide whether we want to automatically manage the repackaging of
# the common data from individual files or not.
ICU_AUTO_COMMON=NO
# Variables used by cdbs
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
VERSION := $(shell dpkg-parsechangelog | \
awk '/Version:/ {print $$2}' | cut -d- -f 1)
# This is the debhelper compatability version to use.
export DH_COMPAT=2
#firstdir := $(shell sed -n 's/Package: \(.*\)/\1/p' debian/control | head -1)else
DEB_TAR_SRCDIR = icu/source
DEB_CONFIGURE_USER_FLAGS = --disable-samples --enable-static
DEB_COMPRESS_EXCLUDE = html examples
DEB_INSTALL_EXAMPLES_libicu36-dev = \
build-tree/$(DEB_TAR_SRCDIR)/samples/*
# Include cdbs rules files.
include /usr/share/cdbs/1/rules/tarball.mk
include /usr/share/cdbs/1/rules/simple-patchsys.mk
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk
# Where the source for ICU is, where to build
srcdir = source
builddir = build
# How to get to $(srcdir) from $(builddir)
builddir_relative_topdir = ..
builddir_relative_srcdir = $(builddir_relative_topdir)/$(srcdir)
DEB_MAKE_INSTALL_TARGET += install-doc
# Getting the ICU version numbers, stolen from configure.in (that's okay, I
# wrote the configure.in part anyway)
cleanbuilddir::
$(RM) -r $(l_STAMPS)
version := $(shell sed -n -e 's/^[ ]*\#[ ]*define[ ]*U_ICU_VERSION[ ]*"\([^"]*\)".*/\1/p' $(srcdir)/common/unicode/uversion.h)
libversion := $(shell echo $(version) | sed -e 's/\.//' -e 's/^\([^.]*\)$$/\1.0/')
major := $(shell echo $(libversion) | sed 's/\..*//')
# As 0.4.21, cdbs creates but doesn't remove debian/compat. It
# creates it conditionally, so this doesn't have a trivial fix.
clean::
$(RM) debian/compat *.cdbs-config_list
# ICU installation directories, w/o the initial slash
pkgdatadir = usr/share/icu
icudatadir = $(pkgdatadir)/$(version)
pkglibdir = usr/lib/icu
iculibdir = $(pkglibdir)/$(version)
datasrcdir = usr/share/icu/$(version)/data
# This is where data needs to be moved
ifeq ($(ICU_AUTO_COMMON),YES)
icufildir = $(iculibdir)/files
else
icufildir = $(iculibdir)
endif
# As per upstream, icuswap is deprecated and should not be
# distributed.
binary-post-install/libicu36-dev::
find debian/$(cdbs_curpkg) -type f -name .cvsignore | xargs rm
rm debian/$(cdbs_curpkg)/usr/sbin/icuswap
# Build flags
CFLAGS = -O3 # -Wall
ifeq ($(shell uname -m),s390)
CXXFLAGS = -O1 # -Wall
else
CXXFLAGS = -O # -Wall
endif
INSTALL_PROGRAM = /usr/bin/install
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g
CXXFLAGS += -g
endif
ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
all: build
configure: $(builddir)/configure-stamp
$(builddir)/configure-stamp:
# Add here commands to configure the package.
test -d $(builddir) || mkdir $(builddir)
cd $(builddir); CFLAGS='$(CFLAGS)' CXXFLAGS='$(CXXFLAGS)' INSTALL_PROGRAM='$(INSTALL_PROGRAM)' $(SHELL) $(builddir_relative_srcdir)/configure --srcdir=$(builddir_relative_srcdir) --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --with-data-packaging=files --enable-shared --enable-static --disable-samples
touch $@
build: $(builddir)/configure-stamp debian-files $(builddir)/build-stamp
# Build some Debian files
DEBIAN_FILES=icu.conffiles postinst prerm icu.postinst icu.prerm libicu$(major).postinst README.Debian.libicu$(major)-dev
debian/%: debian/%.in
cd $(builddir) \
&& CONFIG_FILES=$(builddir_relative_topdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
debian/libicu$(major)%: debian/libicu%
cp $< $@
debian/README.Debian.libicu$(major)%: debian/README.Debian.libicu%
cp $< $@
debian-files: $(addprefix debian/,$(DEBIAN_FILES))
$(builddir)/build-stamp:
dh_testdir
# Add here commands to compile the package.
$(MAKE) -C $(builddir)
$(MAKE) -C $(builddir) doc
touch $@
clean: update-debian-files
dh_testdir
dh_testroot
-test -r /usr/share/misc/config.sub && \
cp -f /usr/share/misc/config.sub $(srcdir)/config.sub
-test -r /usr/share/misc/config.guess && \
cp -f /usr/share/misc/config.guess $(srcdir)/config.guess
$(RM) $(builddir)/build-stamp $(builddir)/configure-stamp
# Add here commands to clean up after the build process.
-$(MAKE) -C $(builddir) distclean
#-$(RM) `find $(builddir)/samples $(builddir)/test -name Makefile -print`
-$(RM) `find $(builddir) -name Makefile -print`
dh_clean
$(RM) $(addprefix debian/,$(DEBIAN_FILES)) debian/control.new
#if test -d $(builddir) -a $(builddir) != $(srcdir); then rmdir `find $(builddir) -type d -print | sort -r`; fi
if test -d $(builddir) -a $(builddir) != $(srcdir); then $(RM) -r $(builddir); fi
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/tmp
$(MAKE) -C $(builddir) install DESTDIR=`pwd`/debian/tmp
$(MAKE) -C $(builddir) install-doc DESTDIR=`pwd`/debian/tmp
# Build architecture-independent files here.
binary-indep: build install
#
# build icu-doc package by moving files
#
mv debian/tmp/usr/share/doc/icu debian/tmp/usr/share/doc/icu-doc
dh_movefiles -picu-doc \
usr/share/doc/icu-doc
#
# build icu-i18ndata from the source data
#
for d in locales translit brkitr; do \
test -d debian/icu-i18ndata/$(datasrcdir)/$$d || \
mkdir -p debian/icu-i18ndata/$(datasrcdir)/$$d; \
install -m 644 $(srcdir)/data/$$d/*.* \
debian/icu-i18ndata/$(datasrcdir)/$$d; \
done
#
# build icu-data from the source data
#
for d in mappings unidata misc; do \
test -d debian/icu-data/$(datasrcdir)/$$d || \
mkdir -p debian/icu-data/$(datasrcdir)/$$d; \
install -m 644 $(srcdir)/data/$$d/*.* \
debian/icu-data/$(datasrcdir)/$$d; \
done
# Build architecture-dependent files here.
binary-arch: build install
# dh_testversion
dh_testdir
dh_testroot
#
# build libicu${major} package by moving files from icu-dev
#
$(RM) debian/tmp/usr/lib/libicuctestfw.*
dh_movefiles -plibicu$(major) \
usr/lib/*.so.*
mkdir debian/libicu$(major)/usr/lib/icu
#
# massage data files
#
# $(RM) debian/tmp/$(iculibdir)/cnvalias.dat
ifneq ($(iculibdir),$(icufildir))
test -d debian/tmp/$(icufildir) || mkdir debian/tmp/$(icufildir)
mv debian/tmp/$(iculibdir)/*.* debian/tmp/$(icufildir)
mv debian/tmp/$(icufildir)/*msg.dat debian/tmp/$(iculibdir)
mv debian/tmp/$(icufildir)/*.inc debian/tmp/$(iculibdir)
endif
#
# build icu package by moving files from icu-dev
#
$(RM) debian/tmp/$(iculibdir)/../Makefile.inc debian/tmp/$(iculibdir)/../current
ifneq ($(iculibdir),$(icufildir))
dh_movefiles -picu \
$(iculibdir)/*msg.dat
endif
# The license.html must be installed with ICU's source code.
# This includes the headers.
dh_movefiles -picu \
etc \
usr/bin \
usr/sbin \
$(icudatadir)/license.html \
$(iculibdir)/*.inc \
$(icufildir)/*.cnv \
$(icufildir)/*.dat \
usr/share/man
#
# build icu-locales package by moving files from icu-dev
#
dh_movefiles -picu-locales \
$(icufildir)/*.res \
$(icufildir)/*.brk
#
# move the rest of the development files
# in their package
#
dh_movefiles -a usr
#
# do a bit of cleanup
#
$(RM) -r debian/tmp/etc debian/tmp/usr/sbin \
debian/tmp/usr/share/man
#
# continue to prepare packages
#
# dh_installdebconf
dh_installdocs -a
dh_installexamples -a $(srcdir)/samples/*
find debian/libicu$(major)-dev -name CVS -o -name .cvsignore | xargs $(RM) -r
dh_installmenu -a
# dh_installemacsen
# dh_installpam
# dh_installinit
dh_installcron -a
dh_installmanpages -picu
dh_installinfo -a
# dh_undocumented -picu
dh_installchangelogs -a
dh_link -a
dh_strip -a
dh_compress -a
dh_fixperms -a
# You may want to make some executables suid here.
dh_makeshlibs -a
dh_installdeb -a
# dh_perl
dh_shlibdeps -a -ldebian/libicu$(major)/usr/lib
dh_gencontrol -a -- -Vversion=$(version) -Vmajor=$(major)
dh_md5sums -a
dh_builddeb -a
# Automatically update changelog and control
update-debian-files:
if [ x"$$NO_AUTO_DCH" = x ]; \
then \
cvers=`sed -n 's/^icu (\([^)]*\)).*/\1/p' debian/changelog | head -1`; if dpkg --compare-versions $$cvers lt $(version)-1; then \
dch -v $(version)-1 "Update to ICU version $(version). (This comment is generated.)"; \
sed 's/libicu[0-9][0-9]*/libicu$(major)/g' debian/control >debian/control.new && mv debian/control.new debian/control; \
fi; \
# 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
binary: update-debian-files binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install debian-files update-changelog

View File

@ -0,0 +1,10 @@
#
# Copyright (c) 2006 International Business Machines
# Corporation and others. All Rights Reserved.
#
# This doesn't always work because ICU upstream doesn't always have
# the latest version in the latest directory. See debian bug 375138
# for details.
version=3
ftp://ftp.software.ibm.com/software/globalization/icu/(?:\d+\.[\d\.]+)/icu-([\d\.]+).tgz