+e2fsprogs (1.27+1.28-WIP-0626-2) experimental; urgency=low
+
+ * Remove bogus shlibs deps on "e2fsprogs (>= <current>)"
+
+ -- Theodore Y. Ts'o <tytso@mit.edu> Sat, 17 Aug 2002 17:59:17 -0400
+
+e2fsprogs (1.27+1.28-WIP-0626-1) experimental; urgency=low
+
+ * New upstream pre-release:
+ ** Supports v2 ACL format (Closes: #138160).
+ * Removed explicit --mandir flag, as it now uses FHS man location by
+ default.
+ * Added mkinitrd script, "upstream-contributed" ;) by Ted Ts'o (Closes:
+ #148064).
+ * Build a no-pic version of libext2fs.a on mips and mipsel, patch by
+ Florian Lohoff, adapted for style consistency (Closes: #145432).
+ * Removed presumably-useless and presumably-broken CFLAGS propagation.
+ If someone misses that, I'll add ${CFLAGS} to --ccopts.
+
+ * Switched to debhelper v4.
+ * Added ${misc:Depends} to all packages' Depends field.
+
+ * Fixed typos in fsck.8, added an example for clarity (Closes:
+ #145044).
+ * Fixed typo in chattr manpage (Closes: #141938).
+ * Fixed typo in tune2fs manpage (Closes: #148514).
+
+ -- Yann Dirson <dirson@debian.org> Tue, 23 Jul 2002 00:12:33 +0200
+
+e2fsprogs (1.27-2) unstable; urgency=medium
+
+ * Urgency medium since this fixes a RC bug.
+ * Generate the shlibs file instead of just copying it in place, and make
+ it produce deps on "e2fsprogs (>= <current>)" as well, to cope with
+ new functions introduced in the libs (Closes: #139274).
+ * Added a note on this in README.Debian.
+
+ -- Yann Dirson <dirson@debian.org> Thu, 21 Mar 2002 23:58:48 +0100
+
+e2fsprogs (1.27-1) unstable; urgency=low
+
+ * New upstream release (Closes: #136737).
+ * No more use for dh_link'ing *.ext[23], it's now done by upstream
+ Makefiles.
+ * Only include (new) inode_io.o from libext2fs when fileio.o is, or the
+ BF build fails because of this additional (unused) member (upstream
+ hint).
+
+ -- Yann Dirson <dirson@debian.org> Mon, 11 Mar 2002 00:17:32 +0100
+
+e2fsprogs (1.26-3) unstable; urgency=low
+
+ * Simple rebuild after fixing the settings of my computer's clock, so
+ that katie accepts to install the package.
+
+ -- Yann Dirson <dirson@debian.org> Sat, 23 Feb 2002 14:53:15 +0100
+
+e2fsprogs (1.26-2) unstable; urgency=low
+
+ * Applied upstream patch dealing with the rlimit filesize variation
+ among archs and kernel versions (Closes: #133909).
+ * Create fsck.ext3.8 symlink (Closes: #121526).
+
+ -- Yann Dirson <dirson@debian.org> Sat, 23 Feb 2002 06:44:02 +0100
+
e2fsprogs (1.26-1) unstable; urgency=low
* This uploads fixes 10 bugs, including data-corruption problems, and
Section: base
Priority: required
Maintainer: Yann Dirson <dirson@debian.org>
-Build-Depends: texi2html, texinfo, debhelper (>= 3)
+Build-Depends: texi2html, texinfo, debhelper (>= 4)
Standards-Version: 3.5.4
Package: e2fsck-static
Section: admin
Priority: optional
-Depends: e2fsprogs (= ${Source-Version})
+Depends: e2fsprogs (= ${Source-Version}), ${misc:Depends}
Recommends: sash | zsh-static | busybox-static | zsh30-static
Architecture: any
Description: A statically-linked version of the ext2 filesystem checker.
Package: comerr-dev
Section: devel
Priority: extra
-Depends: ${libcdev:Depends}, libcomerr2
+Depends: ${libcdev:Depends}, libcomerr2, ${misc:Depends}
Suggests: doc-base
Conflicts: e2fsprogs (<< 1.10-6)
Architecture: any
Package: ss-dev
Section: devel
Priority: extra
-Depends: ${libcdev:Depends}, libss2
+Depends: ${libcdev:Depends}, libss2, ${misc:Depends}
Conflicts: e2fsprogs (<< 1.10-6)
Architecture: any
Description: Command-line interface parsing library - headers and static libraries.
Package: uuid-dev
Section: devel
Priority: extra
-Depends: ${libcdev:Depends}, e2fsprogs (= ${Source-Version})
+Depends: ${libcdev:Depends}, e2fsprogs (= ${Source-Version}), ${misc:Depends}
Conflicts: e2fsprogs (<< 1.10-6)
Replaces: e2fslibs-dev (<< 1.15)
Architecture: any
Package: e2fsprogs-bf
Section: devel
Priority: extra
-Depends: ${shlibs:Depends}
+Depends: ${shlibs:Depends}, ${misc:Depends}
Conflicts: e2fsprogs
Architecture: any
Description: A stripped-down versions of e2fsprogs, for boot-floppies
Package: e2fsprogs
Essential: yes
Pre-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}
Suggests: gpart, parted, e2fsck-static
Conflicts: e2fslibsg, dump (<< 0.4b4-4), quota (<< 1.55-8.1)
Provides: libcomerr2, libss2, libext2fs2, libe2p2, libuuid1
Package: e2fslibs-dev
Section: devel
Priority: extra
-Depends: ${libcdev:Depends}, comerr-dev, e2fsprogs (= ${Source-Version})
+Depends: ${libcdev:Depends}, comerr-dev, e2fsprogs (= ${Source-Version}), ${misc:Depends}
Suggests: doc-base
Provides: ext2fs-dev, e2p-dev
Conflicts: e2fsprogs (<< 1.10-6)
development.
-* Here's the reasonning for not having the libs outside of the e2fsprogs package:
+* Here's the reasonning for not moving the libs outside of the
+e2fsprogs package (this may be partly obsolete):
If we have:
are currently provided by e2fsprogs.
+* Additionally, we must add to the shlibs file a dep on "e2fsprogs (>=
+<current-version>)", so that programs using new functions from those
+libs will not break (see #139274). Note that this will be superceeded
+by versionned Provides: when they will come in dpkg.
+
+We can see the reality of the problem:
+
+$ diff <(nm -D 1.18/lib/libuuid.so.1 | cut -c10- | grep -v ^U) \
+ <(nm -D 1.27/lib/libuuid.so.1 | cut -c10- | grep -v ^U)
+3a4
+> w __cxa_finalize
+6a8,9
+> T __udivdi3
+> T __umoddi3
+
+<=== Actually, there are **no** API changes in libuuid between
+ e2fsprogs 1.27 and 1.18. The observant reader will notice
+ that the "reality of the problem" show above shows symbol
+ names which are are prefixed with "__". This means no program
+ should be using them. In point of fact, these are functions
+ created by gcc, and the incompatibility reported in #139274
+ was much more likely casued by glibc or gcc incompatibilities,
+ not changes in the libuuid library. Hence, I am removing the
+ shlibs hack, because it does far more harm than it does good.
+ (Next time, *please* consult me before making changes like
+ this.)
+ -- Theodore Ts'o, tytso@mit.edu.
+
+
* e2fsprogs still Provides/Conflicts with e2fslibsg to allow upgrading
from pre 1.10-13 releases (from unstable hamm). This does not seem to
be possible for ss2g and comerr2g for some still-to-be-investigated
# be paranoid
export LC_ALL=C
-export DH_COMPAT=3
-
DEB_BUILD_ARCH := $(shell dpkg --print-architecture)
DEB_BUILD_GNU_TYPE := $(shell ./config.guess)
ifndef DEB_HOST_ARCH
ifeq ($(filter-out hurd-%,${DEB_HOST_ARCH}),)
DEB_HOST_GNU_SYSTEM := gnu
else
-# FIXME: we won't always have only Hurd and Linux
+# FIXME: we won't have always just Hurd and Linux
DEB_HOST_GNU_SYSTEM := linux
endif
DEB_HOST_GNU_TYPE := ${DEB_HOST_GNU_CPU}-${DEB_HOST_GNU_SYSTEM}
# find the version for the main package, from changelog file
MAIN_VERSION = $(shell head -1 debian/changelog | cut '-d ' -f 2 | sed 's/[()]//g')
-# find versions for libraries going into their own packages, from their Makefile.in's
+# find versions for libraries going into their own packages, from their Makefile.in's,
+# and sonames for all libs
COMERR_VERSION = $(shell grep ELF_VERSION lib/et/Makefile.in | cut '-d ' -f3)
-COMERR_MAJOR = $(word 1,$(subst ., ,${COMERR_VERSION}))
+COMERR_SOVERSION = $(shell grep ELF_SO_VERSION lib/et/Makefile.in | cut '-d ' -f3)
SS_VERSION = $(shell grep ELF_VERSION lib/ss/Makefile.in | cut '-d ' -f3)
-SS_MAJOR = $(word 1,$(subst ., ,${SS_VERSION}))
+SS_SOVERSION = $(shell grep ELF_SO_VERSION lib/ss/Makefile.in | cut '-d ' -f3)
UUID_VERSION = $(shell grep ELF_VERSION lib/uuid/Makefile.in | cut '-d ' -f3)
-# UUID_MAJOR = $(word 1,$(subst ., ,${UUID_VERSION}))
+UUID_SOVERSION = $(shell grep ELF_SO_VERSION lib/uuid/Makefile.in | cut '-d ' -f3)
+EXT2FS_SOVERSION = $(shell grep ELF_SO_VERSION lib/ext2fs/Makefile.in | cut '-d ' -f3)
+E2P_SOVERSION = $(shell grep ELF_SO_VERSION lib/e2p/Makefile.in | cut '-d ' -f3)
package=e2fsprogs
maindir=${debdir}/e2fsprogs
stdbuilddir=${debdir}/BUILD-STD
bfbuilddir=${debdir}/BUILD-BF
+mipsbuilddir=${debdir}/BUILD-MIPS
# docdir=${maindir}/usr/share/doc/${package}
MANDIR=/usr/share/man
mandir=${tmpdir}${MANDIR}
CCOPTS += -D__NO_STRING_INLINES
endif
-# Try -Os
BF_CCOPTS = -Os -fomit-frame-pointer
COMMON_CONF_FLAGS = \
--enable-elf-shlibs --enable-dynamic-e2fsck \
--enable-nls \
- --mandir=${MANDIR} --infodir=/usr/share/info
+ --infodir=/usr/share/info
STD_CONF_FLAGS = --with-ccopts="${CCOPTS}" --enable-compression
--disable-swapfs --disable-imager \
--disable-resizer --disable-debugfs
+MIPS_NOPIC_CONF_FLAGS = --with-ccopts="${CCOPTS} -G 0 -fno-pic -mno-abicalls" \
+ --disable-swapfs --disable-imager \
+ --disable-resizer --disable-debugfs
+
+ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
+ifneq (,$(findstring $(DEB_BUILD_ARCH),mips mipsel))
+ismips=ismips
+endif
+endif
+
${CFGSTDSTAMP}:
dh_testdir
mkdir -p ${stdbuilddir}
ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
- cd ${stdbuilddir} && CFLAGS="${CFLAGS}" \
+ cd ${stdbuilddir} && \
${topdir}/configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS}
else
- cd ${stdbuilddir} && CFLAGS="${CFLAGS}" CC="${DEB_HOST_GNU_TYPE}-gcc" \
+ cd ${stdbuilddir} && CC="${DEB_HOST_GNU_TYPE}-gcc" \
${topdir}/configure ${COMMON_CONF_FLAGS} ${STD_CONF_FLAGS} \
--build=$(DEB_BUILD_GNU_TYPE) $(DEB_HOST_GNU_TYPE)
endif
+
+ # specially-built MIPS lib
+ if [ ismips = "${ismips}" ]; then \
+ mkdir -p ${mipsbuilddir} ; \
+ cd ${mipsbuilddir} && \
+ ${topdir}/configure ${MIPS_NOPIC_CONF_FLAGS} ; \
+ fi
+
mkdir -p ${STAMPSDIR}
touch ${CFGSTDSTAMP}
mkdir -p ${bfbuilddir}
ifeq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
- cd ${bfbuilddir} && CFLAGS="${CFLAGS}" \
+ cd ${bfbuilddir} && \
${topdir}/configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS}
else
- cd ${bfbuilddir} && CFLAGS="${CFLAGS}" CC="${DEB_HOST_GNU_TYPE}-gcc" \
+ cd ${bfbuilddir} && CC="${DEB_HOST_GNU_TYPE}-gcc" \
${topdir}/configure ${COMMON_CONF_FLAGS} ${BF_CONF_FLAGS} \
--build=$(DEB_BUILD_GNU_TYPE) $(DEB_HOST_GNU_TYPE)
endif
${BUILDSTDSTAMP}: ${CFGSTDSTAMP}
dh_testdir
make -C ${stdbuilddir} all
+
( cd ${stdbuilddir}/doc && \
texi2html -split_chapter ${topdir}/doc/libext2fs.texinfo )
( cd ${stdbuilddir}/lib/et && make com_err.info && \
texi2html -split_chapter -expandinfo ${topdir}/lib/et/com_err.texinfo )
+
+ # specially-built MIPS lib
+ if [ ismips = "${ismips}" ]; then \
+ make -C ${mipsbuilddir}/util ; \
+ make -C ${mipsbuilddir} libs LIB_SUBDIRS="lib/et lib/ext2fs" ; \
+ fi
+
touch ${BUILDSTDSTAMP}
build-bf: ${BUILDBFSTAMP}
${INSTALL_PROGRAM} ${stdbuilddir}/e2fsck/e2fsck.static ${tmpdir}/sbin
ln -s e2fsck.8.gz ${mandir}/man8/e2fsck.static.8.gz
+ # specially-built MIPS lib
+ if [ ismips = "${ismips}" ]; then \
+ cp ${mipsbuilddir}/lib/libext2fs.a \
+ ${debdir}/e2fslibs-dev/usr/lib/libext2fs-nopic.a ; \
+ fi
+
dh_movefiles
test -z `find ${tmpdir} -type f`
# remove obsolete maint-scripts provided by 1.26 upstream
cd debian && rm -f comerr-dev.postinst e2fslibs-dev.postinst \
- e2fsprogs.postinst e2fsprogs.shlibs
+ e2fsprogs.postinst e2fsprogs.shlibs e2fsprogs.shlibs.in
# lintian overrides
for i in $$(cd debian && echo *.lintian-overrides); do \
install -m644 -D -p debian/$$i ${debdir}/$${pkg}/usr/share/lintian/overrides/$${pkg} ;\
done
+ # mkinitrd script
+ dh_install -p e2fsprogs debian/e2fsprogs.mkinitrd \
+ /etc/mkinitrd/scripts
+
# symlinks to prepare dh_installdocs run
mkdir -p ${debdir}/e2fsck-static/usr/share/doc/
ln -sf e2fsprogs ${debdir}/e2fsck-static/usr/share/doc/e2fsck-static
ln -sf e2fsprogs ${debdir}/uuid-dev/usr/share/doc/uuid-dev
# comerr and ss have their own copyright notices
- mkdir -p ${maindir}/usr/share/doc/libcomerr${COMERR_MAJOR}
- mkdir -p ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_MAJOR}
- ln -sf libcomerr${COMERR_MAJOR} ${debdir}/comerr-dev/usr/share/doc/comerr-dev
+ mkdir -p ${maindir}/usr/share/doc/libcomerr${COMERR_SOVERSION}
+ mkdir -p ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}
+ ln -sf libcomerr${COMERR_SOVERSION} ${debdir}/comerr-dev/usr/share/doc/comerr-dev
- mkdir -p ${maindir}/usr/share/doc/libss${SS_MAJOR}
- mkdir -p ${debdir}/ss-dev/usr/share/doc/libss${SS_MAJOR}
- ln -sf libss${SS_MAJOR} ${debdir}/ss-dev/usr/share/doc/ss-dev
+ mkdir -p ${maindir}/usr/share/doc/libss${SS_SOVERSION}
+ mkdir -p ${debdir}/ss-dev/usr/share/doc/libss${SS_SOVERSION}
+ ln -sf libss${SS_SOVERSION} ${debdir}/ss-dev/usr/share/doc/ss-dev
- for i in libcomerr${COMERR_MAJOR} libss${SS_MAJOR}; do \
+ for i in libcomerr${COMERR_SOVERSION} libss${SS_SOVERSION}; do \
install -m 644 debian/$$i.copyright \
${maindir}/usr/share/doc/$$i/copyright ; \
done
install -p ${topdir}/doc/libext2fs.texinfo \
${debdir}/e2fslibs-dev/usr/share/doc/e2fslibs-dev/libext2fs.texi
install -p ${topdir}/lib/et/com_err.texinfo \
- ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_MAJOR}/com_err.texi
+ ${debdir}/comerr-dev/usr/share/doc/libcomerr${COMERR_SOVERSION}/com_err.texi
dh_installexamples
DH_OPTIONS= dh_installchangelogs -pe2fsprogs -pe2fsprogs-bf ChangeLog
- for i in libcomerr${COMERR_MAJOR} libss${SS_MAJOR} ; do \
+ for i in libcomerr${COMERR_SOVERSION} libss${SS_SOVERSION} ; do \
mkdir -p ${maindir}/usr/share/doc/$$i ; \
ln -s ../e2fsprogs/changelog.Debian.gz ${maindir}/usr/share/doc/$$i/ ; \
ln -s ../e2fsprogs/changelog.gz ${maindir}/usr/share/doc/$$i/ ; \
# Call this mostly to get the maintainer-script snippets
dh_makeshlibs -pe2fsprogs
# We overwrite the shlibs by hand because of virtual packages used
- cp debian/e2fsprogs.shlibs.in debian/e2fsprogs/DEBIAN/shlibs
+ : > debian/e2fsprogs/DEBIAN/shlibs
+ echo "libext2fs ${EXT2FS_SOVERSION} libext2fs${EXT2FS_SOVERSION}" \
+ >> debian/e2fsprogs/DEBIAN/shlibs
+ echo "libe2p ${E2P_SOVERSION} libe2p${E2P_SOVERSION}" \
+ >> debian/e2fsprogs/DEBIAN/shlibs
+ echo "libuuid ${UUID_SOVERSION} libuuid${UUID_SOVERSION}" \
+ >> debian/e2fsprogs/DEBIAN/shlibs
+ echo "libcom_err ${COMERR_SOVERSION} libcomerr${COMERR_SOVERSION}" \
+ >> debian/e2fsprogs/DEBIAN/shlibs
+ echo "libss ${SS_SOVERSION} libss${SS_SOVERSION}" \
+ >> debian/e2fsprogs/DEBIAN/shlibs
dh_installdeb
dh_shlibdeps -l${stdbuilddir}/lib