Here is an alternate solution for this bug. It's a bit eye-crossing, in that it means directories such as /usr/include/sys will now exist *only* if the biarch libc6-dev-$foo is installed, but it does the right thing (tested on amd64, and barring bugs should work on the other archs too).
This is one option for getting multiarch libc6-dev on its feet. The other would be to have libc6-dev-$foo install to the multiarch path, and have libc6-dev for the corresponding architecture Conflict/Replace with the biarch libc6-dev-$foo on an ongoing basis. I tend to favor the first option represented here because long-running Conflicts/Replaces for packages that are in the archive in parallel are generally bad; but ultimately, either should do the job. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
=== modified file 'debian/changelog' --- debian/changelog 2011-07-22 10:09:52 +0000 +++ debian/changelog 2011-07-23 07:18:58 +0000 @@ -18,6 +18,9 @@ previous patch. Closes: #535504, #602291. * Add support for s390x. + [ Steve Langasek ] + * Try again to make libc6-dev multiarch-same. + -- Aurelien Jarno <aure...@debian.org> Sun, 10 Jul 2011 22:01:11 +0200 eglibc (2.13-10) unstable; urgency=low === modified file 'debian/control.in/amd64' --- debian/control.in/amd64 2010-08-10 05:07:37 +0000 +++ debian/control.in/amd64 2011-07-24 15:02:28 +0000 @@ -15,7 +15,8 @@ Priority: optional Depends: libc6-amd64 (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib -Replaces: amd64-libs-dev (<= 1.2) +Conflicts: libc6-dev (<= 2.13-11) +Replaces: amd64-libs-dev (<= 1.2), libc6-dev (<= 2.13-11) Provides: lib64c-dev Description: Embedded GNU C Library: 64bit Development Libraries for AMD64 Contains the symlinks and object files needed to compile and link programs === modified file 'debian/control.in/i386' --- debian/control.in/i386 2010-09-13 20:43:26 +0000 +++ debian/control.in/i386 2011-07-24 14:59:54 +0000 @@ -15,7 +15,8 @@ Section: libdevel Priority: optional Provides: lib32c-dev -Conflicts: libc6-i386 (<= 2.9-18) +Conflicts: libc6-i386 (<= 2.9-18), libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-i386 (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 32-bit development libraries for AMD64 === modified file 'debian/control.in/powerpc' --- debian/control.in/powerpc 2010-08-10 05:07:37 +0000 +++ debian/control.in/powerpc 2011-07-24 15:03:48 +0000 @@ -13,6 +13,8 @@ Section: libdevel Priority: optional Provides: lib32c-dev +Conflicts: libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-powerpc (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 32bit powerpc development libraries for ppc64 === modified file 'debian/control.in/ppc64' --- debian/control.in/ppc64 2010-08-10 05:07:37 +0000 +++ debian/control.in/ppc64 2011-07-24 15:05:59 +0000 @@ -13,6 +13,8 @@ Section: libdevel Priority: optional Provides: lib64c-dev +Conflicts: libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-ppc64 (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 64bit Development Libraries for PowerPC64 === modified file 'debian/control.in/s390' --- debian/control.in/s390 2011-07-22 10:09:52 +0000 +++ debian/control.in/s390 2011-07-24 15:07:18 +0000 @@ -13,6 +13,8 @@ Section: libdevel Priority: optional Provides: lib32c-dev +Conflicts: libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-s390 (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 32bit Development Libraries for IBM zSeries === modified file 'debian/control.in/s390x' --- debian/control.in/s390x 2010-08-10 05:07:37 +0000 +++ debian/control.in/s390x 2011-07-24 15:08:07 +0000 @@ -13,6 +13,8 @@ Section: libdevel Priority: optional Provides: lib64c-dev +Conflicts: libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-s390x (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 64bit Development Libraries for IBM zSeries === modified file 'debian/control.in/sparc64' --- debian/control.in/sparc64 2010-08-10 05:07:37 +0000 +++ debian/control.in/sparc64 2011-07-24 15:09:00 +0000 @@ -14,6 +14,8 @@ Section: libdevel Priority: optional Provides: lib64c-dev +Conflicts: libc6-dev (<= 2.13-11) +Replaces: libc6-dev (<= 2.13-11) Depends: libc6-sparc64 (= ${binary:Version}), libc6-dev (= ${binary:Version}), ${misc:Depends} Recommends: gcc-multilib Description: Embedded GNU C Library: 64bit Development Libraries for UltraSPARC === modified file 'debian/rules.d/build.mk' --- debian/rules.d/build.mk 2011-07-04 18:43:30 +0000 +++ debian/rules.d/build.mk 2011-07-23 07:18:40 +0000 @@ -160,6 +160,11 @@ echo "/lib/$(DEB_HOST_GNU_TYPE)" >> $$conffile; \ echo "/usr/lib/$(DEB_HOST_GNU_TYPE)" >> $$conffile; \ fi; \ + mkdir -p debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \ + mv debian/tmp-$(curpass)/usr/include/bits debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \ + mv debian/tmp-$(curpass)/usr/include/gnu debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \ + mv debian/tmp-$(curpass)/usr/include/sys debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \ + mv debian/tmp-$(curpass)/usr/include/fpu_control.h debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \ fi # For our biarch libc, add an ld.so.conf.d configuration; this === modified file 'debian/sysdeps/amd64.mk' --- debian/sysdeps/amd64.mk 2011-05-12 04:18:04 +0000 +++ debian/sysdeps/amd64.mk 2011-07-24 05:13:29 +0000 @@ -31,14 +31,13 @@ i386_libdir = /usr/lib32 define libc6-dev-i386_extra_pkg_install -mkdir -p debian/libc6-dev-i386/usr/include/gnu -cp -af debian/tmp-i386/usr/include/i486-linux-gnu/gnu/stubs-32.h \ - debian/libc6-dev-i386/usr/include/gnu -mkdir -p debian/libc6-dev-i386/usr/include/sys -cp -af debian/tmp-i386/usr/include/i486-linux-gnu/sys/elf.h \ - debian/libc6-dev-i386/usr/include/sys -cp -af debian/tmp-i386/usr/include/i486-linux-gnu/sys/vm86.h \ - debian/libc6-dev-i386/usr/include/sys +mkdir -p debian/libc6-dev-i386/usr/include +cp -af debian/tmp-i386/usr/include/i486-linux-gnu/gnu \ + debian/libc6-dev-i386/usr/include/ +cp -af debian/tmp-i386/usr/include/i486-linux-gnu/sys \ + debian/libc6-dev-i386/usr/include/ +cp -af debian/tmp-i386/usr/include/i486-linux-gnu/bits \ + debian/libc6-dev-i386/usr/include/bits mkdir -p debian/libc6-dev-i386/usr/include/i486-linux-gnu endef === modified file 'debian/sysdeps/i386.mk' --- debian/sysdeps/i386.mk 2011-05-23 22:50:54 +0000 +++ debian/sysdeps/i386.mk 2011-07-24 14:13:03 +0000 @@ -61,9 +61,13 @@ endef define libc6-dev-amd64_extra_pkg_install -mkdir -p debian/libc6-dev-amd64/usr/include/gnu -cp -af debian/tmp-amd64/usr/include/gnu/stubs-64.h \ - debian/libc6-dev-amd64/usr/include/gnu +mkdir -p debian/libc6-dev-amd64/usr/include +cp -af debian/tmp-amd64/usr/include/gnu \ + debian/libc6-dev-amd64/usr/include/ +cp -af debian/tmp-amd64/usr/include/sys \ + debian/libc6-dev-amd64/usr/include/ +cp -af debian/tmp-amd64/usr/include/bits \ + debian/libc6-dev-amd64/usr/include/bits mkdir -p debian/libc6-dev-amd64/usr/include/x86_64-linux-gnu endef === modified file 'debian/sysdeps/powerpc.mk' --- debian/sysdeps/powerpc.mk 2011-02-26 20:28:09 +0000 +++ debian/sysdeps/powerpc.mk 2011-07-24 14:40:15 +0000 @@ -16,8 +16,12 @@ define libc6-dev-ppc64_extra_pkg_install mkdir -p debian/libc6-dev-ppc64/usr/include/gnu -cp -af debian/tmp-ppc64/usr/include/powerpc64-linux-gnu/gnu/stubs-64.h \ - debian/libc6-dev-ppc64/usr/include/gnu +cp -af debian/tmp-ppc64/usr/include/powerpc64-linux-gnu/gnu \ + debian/libc6-dev-ppc64/usr/include/ +cp -af debian/tmp-ppc64/usr/include/powerpc64-linux-gnu/sys \ + debian/libc6-dev-ppc64/usr/include/ +cp -af debian/tmp-ppc64/usr/include/powerpc64-linux-gnu/bits \ + debian/libc6-dev-ppc64/usr/include/bits mkdir -p debian/libc6-dev-ppc64/usr/include/powerpc64-linux-gnu endef === modified file 'debian/sysdeps/ppc64.mk' --- debian/sysdeps/ppc64.mk 2011-02-26 20:28:09 +0000 +++ debian/sysdeps/ppc64.mk 2011-07-24 14:38:30 +0000 @@ -22,8 +22,12 @@ define libc6-dev-powerpc_extra_pkg_install mkdir -p debian/libc6-dev-powerpc/usr/include/gnu -cp -af debian/tmp-powerpc/usr/include/powerpc-linux-gnu/gnu/stubs-32.h \ - debian/libc6-dev-powerpc/usr/include/gnu +cp -af debian/tmp-powerpc/usr/include/powerpc-linux-gnu/gnu \ + debian/libc6-dev-powerpc/usr/include/ +cp -af debian/tmp-powerpc/usr/include/powerpc-linux-gnu/sys \ + debian/libc6-dev-powerpc/usr/include/ +cp -af debian/tmp-powerpc/usr/include/powerpc-linux-gnu/bits \ + debian/libc6-dev-powerpc/usr/include/bits mkdir -p debian/libc6-dev-powerpc/usr/include/powerpc-linux-gnu endef === modified file 'debian/sysdeps/s390.mk' --- debian/sysdeps/s390.mk 2011-02-26 20:28:09 +0000 +++ debian/sysdeps/s390.mk 2011-07-24 14:42:21 +0000 @@ -14,8 +14,12 @@ define libc6-dev-s390x_extra_pkg_install mkdir -p debian/libc6-dev-s390x/usr/include/gnu -cp -af debian/tmp-s390x/usr/include/s390x-linux-gnu/gnu/stubs-64.h \ - debian/libc6-dev-s390x/usr/include/gnu +cp -af debian/tmp-s390x/usr/include/s390x-linux-gnu/gnu \ + debian/libc6-dev-s390x/usr/include/ +cp -af debian/tmp-s390x/usr/include/s390x-linux-gnu/sys \ + debian/libc6-dev-s390x/usr/include/ +cp -af debian/tmp-s390x/usr/include/s390x-linux-gnu/bits \ + debian/libc6-dev-s390x/usr/include/bits mkdir -p debian/libc6-dev-s390x/usr/include/s390x-linux-gnu endef === modified file 'debian/sysdeps/s390x.mk' --- debian/sysdeps/s390x.mk 2011-07-22 12:51:10 +0000 +++ debian/sysdeps/s390x.mk 2011-07-24 14:33:25 +0000 @@ -19,9 +19,13 @@ s390_libdir = /usr/lib32 define libc6-dev-s390_extra_pkg_install -mkdir -p debian/libc6-dev-s390/usr/include/gnu -cp -af debian/tmp-s390/usr/include/s390-linux-gnu/gnu/stubs-32.h \ - debian/libc6-dev-s390/usr/include/gnu +mkdir -p debian/libc6-dev-s390/usr/include/ +cp -af debian/tmp-s390/usr/include/s390-linux-gnu/gnu \ + debian/libc6-dev-s390/usr/include/ +cp -af debian/tmp-s390/usr/include/s390-linux-gnu/sys \ + debian/libc6-dev-s390/usr/include/ +cp -af debian/tmp-s390/usr/include/s390-linux-gnu/bits \ + debian/libc6-dev-s390/usr/include/bits mkdir -p debian/libc6-dev-s390/usr/include/s390-linux-gnu endef === modified file 'debian/sysdeps/sparc.mk' --- debian/sysdeps/sparc.mk 2011-06-12 09:39:31 +0000 +++ debian/sysdeps/sparc.mk 2011-07-24 14:37:22 +0000 @@ -16,7 +16,11 @@ define libc6-dev-sparc64_extra_pkg_install mkdir -p debian/libc6-dev-sparc64/usr/include/gnu -cp -af debian/tmp-sparc64/usr/include/sparc64-linux-gnu/gnu/stubs-64.h \ - debian/libc6-dev-sparc64/usr/include/gnu +cp -af debian/tmp-sparc64/usr/include/sparc64-linux-gnu/gnu \ + debian/libc6-dev-sparc64/usr/include/ +cp -af debian/tmp-sparc64/usr/include/sparc64-linux-gnu/sys \ + debian/libc6-dev-sparc64/usr/include/ +cp -af debian/tmp-sparc64/usr/include/sparc64-linux-gnu/bits \ + debian/libc6-dev-sparc64/usr/include/bits mkdir -p debian/libc6-dev-sparc64/usr/include/sparc64-linux-gnu endef