[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#632667: empty biarch -dev packages



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/
slangasek@ubuntu.com                                     vorlon@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 <aurel32@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


Reply to: