--- Begin Message ---
Package: src:glibc
Version: 2.19-7
Severity: wishlist
Tags: patch
User: helmutg@debian.org
Usertags: rebootstrap
Even if one manages to build glibc with profiles stage1 or stage2, the
results are not installable due to unmet dependencies. The following
issues occur:
* stage1 libc6-dev Depends on libc6 which is not built in stage1
* stage2 libc6 Depends on libgcc1 which is not built by gcc stage2
This bug shall only cover the second (easier) part and I shall report a
different bug for the first issue at a later time.
When we briefly discussed this issue, there was consensus that substvars
would be the tool to address it. So the attached patch turns those
libgcc dependencies into ${libgcc:Depends} and suppresses them for
stage2. It's a bit unfortunate that dependency information keeps
scattering over control and rules.d/debhelper.mk, but I didn't find a
better way.
Helmut
diff -Nru glibc-2.19/debian/changelog glibc-2.19/debian/changelog
--- glibc-2.19/debian/changelog 2014-07-13 01:31:22.000000000 +0200
+++ glibc-2.19/debian/changelog 2014-07-20 22:07:19.000000000 +0200
@@ -1,3 +1,10 @@
+glibc (2.19-7.1) UNRELEASED; urgency=low
+
+ * Non-maintainer upload.
+ * Don't emit dependencies on libgcc when building stage2. (Closes: #-1)
+
+ -- Helmut Grohne <helmut@subdivi.de> Sun, 20 Jul 2014 22:06:57 +0200
+
glibc (2.19-7) unstable; urgency=high
* debian/patches/localedata/unsubmitted-tst-setlocale3-ENV.diff: Apply
diff -Nru glibc-2.19/debian/control.in/libc glibc-2.19/debian/control.in/libc
--- glibc-2.19/debian/control.in/libc 2014-06-27 04:28:51.000000000 +0200
+++ glibc-2.19/debian/control.in/libc 2014-07-20 22:09:20.000000000 +0200
@@ -3,7 +3,7 @@
Section: libs
Priority: required
Multi-Arch: same
-Depends: ${shlibs:Depends}, libgcc1 [!hppa !m68k], libgcc2 [m68k], libgcc4 [hppa]
+Depends: ${shlibs:Depends}, ${libgcc:Depends}
Recommends: libc6-i686 [i386], libc0.1-i686 [kfreebsd-i386], libc0.3-i686 [hurd-i386]
Suggests: glibc-doc, debconf | debconf-2.0, locales [!hurd-i386]
Provides: ${locale-compat:Depends}, libc6-sparcv9b [sparc sparc64]
diff -Nru glibc-2.19/debian/rules.d/debhelper.mk glibc-2.19/debian/rules.d/debhelper.mk
--- glibc-2.19/debian/rules.d/debhelper.mk 2014-07-10 21:49:24.000000000 +0200
+++ glibc-2.19/debian/rules.d/debhelper.mk 2014-07-20 22:08:45.000000000 +0200
@@ -180,6 +180,9 @@
# Generate common substvars files.
echo "locale:Depends=$(shell perl debian/debver2localesdep.pl $(LOCALES_DEP_VER))" > tmp.substvars
echo "locale-compat:Depends=$(shell perl debian/debver2localesdep.pl $(LOCALES_COMPAT_VER))" >> tmp.substvars
+ifeq ($(filter stage2,$(DEB_BUILD_PROFILES)),)
+ echo 'libgcc:Depends=libgcc1 [!hppa !m68k], libgcc2 [m68k], libgcc4 [hppa]' >> tmp.substvars
+endif
for pkg in $(DEB_ARCH_REGULAR_PACKAGES) $(DEB_INDEP_REGULAR_PACKAGES) $(DEB_UDEB_PACKAGES); do \
cp tmp.substvars debian/$$pkg.substvars; \
--- End Message ---
--- Begin Message ---
Source: glibc
Source-Version: 2.19-8
This bug has been closed in glibc version 2.19-8. Here is the full
changelog:
glibc (2.19-8) unstable; urgency=medium
[ Helmut Grohne ]
* debian/patches/build stage2 without selinux. Closes: #742640.
* Don't emit dependencies on libgcc when building stage2. Closes: #755580.
* Add a "nobiarch" build profile that inhibits all multilib packages from
being built. Closes: #745380.
[ Aurelien Jarno ]
* debian/patches/arm64/cvs-includes-cleanup.diff: new patch from upstream to
clean sys/user.h and sys/procfs.h. Closes: #755169.
* debian/patches/s390/cvs-s390-abi-reversal.diff: new patch backported from
upstream to revert the S/390 jmp_buf/ucontext_t ABI change.
* Update Turkish debconf translation, by Mert Dirik. Closes: #757495.
* Remove ia64 support. Closes: #756095.
* Update debian/copyright with the libidn/punycode.{c,h} license. Closes:
#754731.
* debian/control/libc: drop Recommends on: gcc | c-compiler. Closes:
#747933.
-- Aurelien Jarno <aurel32@debian.org> Thu, 14 Aug 2014 15:54:09 +0200
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@aurel32.net http://www.aurel32.net
--- End Message ---