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

Bug#666760: [libc6-dev] Make libc6-dev multiarch-installable



tags 666760 patch
thanks

Hi,
I was wondering why libc6-dev wasn't m-a: same, and I've decided to identify which files
are arch-dependent but not in arch-qualified paths.


Here is what I've found using libc6-dev=2.13-32 binary packages from the archive:

Searching for conflicts across the following architectures:
	amd64, armel, armhf, i386, m68k, mips, mipsel, powerpc, s390, s390x, sh4, sparc, sparc64

usr/include/a.out.h
	44363cebe3e379d8aea5d368502ec4b4439c47ee	sparc, sparc64
	131d2b9e51280468ac6736db94ff981a79364e29	s390, sh4, amd64, s390x, m68k, powerpc, i386, armel, armhf, mips, mipsel
usr/include/ieee754.h
	8401e96f11f497f1dda32a878f50c7e74404defa	s390, s390x, sparc64, sparc
	d09e81c714db219efdca7f16f7e53fc6da6b94f9	powerpc
	41468caf81199e2bafafb8f8fbeb8be8be628f44	mips, mipsel
	ed7ef9b8e4fb8673d3bb53a259c49f434fcaadd1	sh4, amd64, m68k, i386, armel, armhf


I have no idea why the a.out.h file is different on sparc/sparc64, but,
although some unification should be possible without breaking the ABI,
I think having different ieee754.h files make sense, as different floating point
number representations are used on different architectures.

Thus, I think moving those files to arch-qualified paths would be enough for wheezy.
That's what the attached patch does.

Regards,
Thibaut Girka.
Index: debian/control.in/libc
===================================================================
--- debian/control.in/libc	(révision 5259)
+++ debian/control.in/libc	(copie de travail)
@@ -26,6 +26,7 @@
 Architecture: @archs@
 Section: libdevel
 Priority: optional
+Multi-Arch: same
 Depends: @libc@ (= ${binary:Version}), libc-dev-bin (= ${binary:Version}), ${misc:Depends}, linux-libc-dev [linux-any], kfreebsd-kernel-headers (>= 0.11) [kfreebsd-any], gnumach-dev [hurd-i386], hurd-dev (>= 20080607-3) [hurd-i386]
 Replaces: hurd-dev (<< 20120408-3) [hurd-i386]
 Recommends: gcc | c-compiler
Index: debian/rules.d/build.mk
===================================================================
--- debian/rules.d/build.mk	(révision 5259)
+++ debian/rules.d/build.mk	(copie de travail)
@@ -176,6 +176,8 @@
 	  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); \
+	  mv debian/tmp-$(curpass)/usr/include/a.out.h debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \
+	  mv debian/tmp-$(curpass)/usr/include/ieee754.h debian/tmp-$(curpass)/usr/include/$(DEB_HOST_MULTIARCH); \
 	fi
 
 	# For our biarch libc, add an ld.so.conf.d configuration; this
Index: debian/rules.d/stage1.mk
===================================================================
--- debian/rules.d/stage1.mk	(révision 5259)
+++ debian/rules.d/stage1.mk	(copie de travail)
@@ -65,6 +65,8 @@
 	mv $(DESTDIR)/usr/include/gnu           $(DESTDIR)/usr/include/$(DEB_HOST_MULTIARCH)
 	mv $(DESTDIR)/usr/include/sys           $(DESTDIR)/usr/include/$(DEB_HOST_MULTIARCH)
 	mv $(DESTDIR)/usr/include/fpu_control.h $(DESTDIR)/usr/include/$(DEB_HOST_MULTIARCH)
+	mv $(DESTDIR)/usr/include/a.out.h	$(DESTDIR)/usr/include/$(DEB_HOST_MULTIARCH)
+	mv $(DESTDIR)/usr/include/ieee754.h	$(DESTDIR)/usr/include/$(DEB_HOST_MULTIARCH)
 	$(call xx,extra_install)
 	touch $@
 

Attachment: signature.asc
Description: Digital signature


Reply to: