Source: gdbm
Version: 1.14.1-2
Tags: patch
User: [email protected]
Usertags: rebootstrap

gdbm is part of architecture bootstrap, because perl needs it and
because debhelper needs it via man-db. Thus it needs to be cross
buildable. The new dietlibc-dev dependency makes that difficult. For one
thing, cross building dietlibc does not presently work, nor is fixing
the debian package simple. Another issue is that the dietlibc packaging
does not separate the diet tool in a way suitable for cross compilation.
These issues are documented in #889080.

Thus I'll have to reqeuest that you drop the dietlibc-dev dependency for
the time being. It's not necessary to drop it completely. Making it
optional via a build profile is sufficient. Thus I am proposing the
attached patch for doing so. I note that it makes libgdbm-dev provide a
new virtual package libgdbm-dietlibc-dev iff it builds with dietlibc
support. Thus reverse dependencies using the dietlibc functionality
should depend on libgdbm-dietlibc-dev rather than libgdbm-dev. Possibly
it would be even better to split this out as a real package, but my
patch tries to keep the changes minimal. Please consider applying it.

In general, I question the utility of having dietlibc as some addon
library on a regular glibc port. Wouldn't it be a lot better if there
was a dietlibc-linux-any port? Then you could simply build gdbm for
dietlibc-linux-something and have regular dietlibc packages with no
extra effort. Piggy backing it on existing glibc ports seems just wrong
to me and it makes bootstrapping harder.

Helmut
diff --minimal -Nru gdbm-1.14.1/debian/changelog gdbm-1.14.1/debian/changelog
--- gdbm-1.14.1/debian/changelog        2018-01-31 13:24:25.000000000 +0100
+++ gdbm-1.14.1/debian/changelog        2018-02-01 20:56:26.000000000 +0100
@@ -1,3 +1,10 @@
+gdbm (1.14.1-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Add pkg.gdbm.nodietlibc build profile. (Closes: #-1)
+
+ -- Helmut Grohne <[email protected]>  Thu, 01 Feb 2018 20:56:26 +0100
+
 gdbm (1.14.1-2) unstable; urgency=medium
 
   * Upload to unstable
diff --minimal -Nru gdbm-1.14.1/debian/control gdbm-1.14.1/debian/control
--- gdbm-1.14.1/debian/control  2018-01-29 14:43:50.000000000 +0100
+++ gdbm-1.14.1/debian/control  2018-02-01 20:55:05.000000000 +0100
@@ -5,7 +5,7 @@
 Build-Depends: texinfo,
                debhelper (>= 10),
                dh-exec,
-               dietlibc-dev (>= 0.34~cvs20160606-3) [alpha amd64 arm arm64 
armeb armel armhf hppa i386 ia64 mips mipsel mips64el powerpc powerpcspe ppc64 
ppc64el s390 s390x sparc sparc64 x32],
+               dietlibc-dev (>= 0.34~cvs20160606-3) [alpha amd64 arm arm64 
armeb armel armhf hppa i386 ia64 mips mipsel mips64el powerpc powerpcspe ppc64 
ppc64el s390 s390x sparc sparc64 x32] <!pkg.gdbm.nodietlibc>,
                libreadline-dev
 Standards-Version: 4.1.3
 Homepage: https://gnu.org/software/gdbm
@@ -40,6 +40,7 @@
 Package: libgdbm-dev
 Architecture: any
 Depends: libc6-dev | libc-dev, libgdbm5 (= ${binary:Version}), 
${shlibs:Depends}, ${misc:Depends}
+Provides: ${libgdbm-dietlibc:Provides}
 Section: libdevel
 Priority: optional
 Multi-Arch: same
diff --minimal -Nru gdbm-1.14.1/debian/rules gdbm-1.14.1/debian/rules
--- gdbm-1.14.1/debian/rules    2018-01-18 19:35:48.000000000 +0100
+++ gdbm-1.14.1/debian/rules    2018-02-01 20:56:22.000000000 +0100
@@ -36,7 +36,7 @@
 
 ifeq ($(HAVE_DIETLIBC),yes)
 override_dh_gencontrol:
-       dh_gencontrol -- -VBuilt-Using="$(BUILT_USING)"
+       dh_gencontrol -- -VBuilt-Using="$(BUILT_USING)" 
-Vlibgdbm-dietlibc:Provides=libgdbm-dietlibc-dev
 endif
 
 override_dh_install:

Reply via email to