Source: e2fsprogs Version: 1.45.6-1 Severity: wishlist Tags: patch Hi Ted,
can I ask you to add more build profiles to e2fsprogs? In the light of #966330, it would help a lot to have a pkg.e2fsprogs.no-static profile as a workaround until the situation with util-linux is sorted out. The profile would be useful beyond as it'd cut down in build time. I also suggest adding support for the standard noudeb profile. A number of other packages already support it. Doing so here adds consistency to the archive and again allows cutting down in build time. The savings in build time are small. But if you build e2fsprogs ten times a day (as we do on jenkins), that cost accumulates. It's a drop in the bucket, but a relatively simple one. Do you think that these features are worth their maintenance cost? If you deem the cost inappropriate, please close the bug after tagging it wontfix. There is no use in having it stick around. In any case, I'm attaching a patch for your convenience. Helmut
diff --minimal -Nru e2fsprogs-1.45.6/debian/changelog e2fsprogs-1.45.6/debian/changelog --- e2fsprogs-1.45.6/debian/changelog 2020-03-21 04:49:33.000000000 +0100 +++ e2fsprogs-1.45.6/debian/changelog 2020-08-01 11:04:08.000000000 +0200 @@ -1,3 +1,10 @@ +e2fsprogs (1.45.6-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Add support for build profiles pkg.e2fsprogs.no-static and noudeb. + + -- Helmut Grohne <hel...@subdivi.de> Sat, 01 Aug 2020 11:04:08 +0200 + e2fsprogs (1.45.6-1) unstable; urgency=medium * New upstream release diff --minimal -Nru e2fsprogs-1.45.6/debian/control e2fsprogs-1.45.6/debian/control --- e2fsprogs-1.45.6/debian/control 2020-03-21 04:49:33.000000000 +0100 +++ e2fsprogs-1.45.6/debian/control 2020-08-01 10:59:29.000000000 +0200 @@ -33,6 +33,7 @@ of the output will also be written to standard output. Package: e2fsck-static +Build-Profiles: <!pkg.e2fsprogs.no-static> Priority: optional Depends: ${misc:Depends} Recommends: sash | bash-static | zsh-static | busybox-static @@ -132,6 +133,7 @@ This package contains the development environment for the ss library. Package: e2fsprogs-udeb +Build-Profiles: <!noudeb> Package-Type: udeb Section: debian-installer Priority: optional diff --minimal -Nru e2fsprogs-1.45.6/debian/rules e2fsprogs-1.45.6/debian/rules --- e2fsprogs-1.45.6/debian/rules 2020-03-21 04:49:33.000000000 +0100 +++ e2fsprogs-1.45.6/debian/rules 2020-08-01 11:04:08.000000000 +0200 @@ -68,7 +68,9 @@ override_dh_auto_build: $(MAKE) -C ${stdbuilddir} V=1 all +ifeq (,$(filter pkg.e2fsprogs.no-static,$(DEB_BUILD_PROFILES))) $(MAKE) -C ${stdbuilddir}/e2fsck V=1 e2fsck.static +endif if ! test -d debian/orig-gmo ; then \ mkdir debian/orig-gmo ; \ mv po/*.gmo po/*.po debian/orig-gmo ; \ @@ -96,9 +98,11 @@ # static libs and .h files $(MAKE) -C ${stdbuilddir} V=1 install-libs DESTDIR=${tmpdir} LDCONFIG=true +ifeq (,$(filter pkg.e2fsprogs.no-static,$(DEB_BUILD_PROFILES))) # statically-linked fsck ${INSTALL_PROGRAM} ${stdbuilddir}/e2fsck/e2fsck.static ${tmpdir}/sbin (cd debian/tmp/usr/share/man/man8 ; cp e2fsck.8 e2fsck.static.8) +endif ifeq ($(DEB_HOST_ARCH_OS), hurd) ${INSTALL} -m 0644 misc/mke2fs-hurd.conf ${tmpdir}/etc/mke2fs.conf @@ -110,10 +114,12 @@ dh_install dh_missing --fail-missing +ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES))) override_dh_lintian: dh_lintian $(INSTALL) -D -p -m644 debian/e2fsprogs-udeb.lintian-overrides \ debian/e2fsprogs-udeb/usr/share/lintian/overrides/e2fsprogs-udeb +endif override_dh_installinfo: # HTML docs @@ -151,13 +157,15 @@ patch debian/$$i.symbols < debian/$$i.tmp-patch; \ /bin/rm debian/$$i.tmp-patch; \ done - dh_makeshlibs --add-udeb=e2fsprogs-udeb + dh_makeshlibs $(if $(filter noudeb,$(DEB_BUILD_PROFILES)),,--add-udeb=e2fsprogs-udeb) override_dh_shlibdeps: dh_shlibdeps -pe2fsprogs -l${stdbuilddir}/lib \ -- -Ldebian/e2fsprogs.shlibs.local +ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES))) dh_shlibdeps -pe2fsprogs-udeb -l${stdbuilddir}/lib \ -- -Ldebian/e2fsprogs-udeb.shlibs.local +endif ifeq ($(SKIP_FUSE2FS),) dh_shlibdeps -pfuse2fs -l${stdbuilddir}/lib \ -- -Ldebian/e2fsprogs.shlibs.local