Package: libelf
Version: 0.8.13-3
Severity: wishlist
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu quantal ubuntu-patch

Hiya,

glib2.0 (in experimental) has started depending on libelfg0 now. Since
libelf isn't multiarch compatible, this means that glib itself cannot be
installed for multiple arches simultaneously any more.

I created a patch to enable this. I'd be very grateful if you would
review it for inclusion.

Cheers!

-- 
Iain Lane                                  [ i...@orangesquash.org.uk ]
Debian Developer                                   [ la...@debian.org ]
Ubuntu Developer                                   [ la...@ubuntu.com ]
diff -u libelf-0.8.13/debian/changelog libelf-0.8.13/debian/changelog
reverted:
--- libelf-0.8.13/debian/libelfg0-dev.links
+++ libelf-0.8.13.orig/debian/libelfg0-dev.links
@@ -1 +0,0 @@
-usr/lib/libelf.so.0 usr/lib/libelf.so
diff -u libelf-0.8.13/debian/rules libelf-0.8.13/debian/rules
--- libelf-0.8.13/debian/rules
+++ libelf-0.8.13/debian/rules
@@ -5,6 +5,8 @@
 DEB_HOST_GNU_TYPE	?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE	?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+
 CFLAGS = -Wall -g -D_REENTRANT
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
@@ -21,7 +23,8 @@
 	# --enable-compat per bug 477025
 	./configure --prefix=/usr --enable-shared \
 	--enable-compat \
-	  --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE)
+	  --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
+	  --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
 	# I wonder what configure is thinking. Lets find out...
 	-cat ./config.status Makefile lib/Makefile po/Makefile libelf.pc \
 	config.h lib/sys_elf.h
@@ -36,11 +39,14 @@
 	-make distclean
 # distclean misses w32/Makefile; kludge around it.
 	-rm -f w32/Makefile
-	dh_clean build-stamp
+	dh_clean build-stamp debian/libelfg0-dev.links
+
+debian/%.links: debian/%.links.in
+	sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/'g $< >$@
 
 binary: binary-arch binary-indep
 
-binary-arch: build 
+binary-arch: debian/libelfg0-dev.links build 
 	dh_testdir
 	dh_testroot
 	dh_clean -k
diff -u libelf-0.8.13/debian/libelfg0.install libelf-0.8.13/debian/libelfg0.install
--- libelf-0.8.13/debian/libelfg0.install
+++ libelf-0.8.13/debian/libelfg0.install
@@ -1,3 +1,3 @@
-usr/lib/libelf.so.0
-usr/lib/libelf.so.0.8.13
+usr/lib/*/libelf.so.0
+usr/lib/*/libelf.so.0.8.13
 usr/share/locale
diff -u libelf-0.8.13/debian/libelfg0-dev.install libelf-0.8.13/debian/libelfg0-dev.install
--- libelf-0.8.13/debian/libelfg0-dev.install
+++ libelf-0.8.13/debian/libelfg0-dev.install
@@ -1,3 +1,3 @@
-usr/lib/libelf.a
-usr/lib/pkgconfig
+usr/lib/*/libelf.a
+usr/lib/*/pkgconfig
 usr/include
diff -u libelf-0.8.13/debian/control libelf-0.8.13/debian/control
--- libelf-0.8.13/debian/control
+++ libelf-0.8.13/debian/control
@@ -10,7 +10,9 @@
 Section: libs
 Priority: optional
 Conflicts: libelf, libelf0 (<= 0.6.4-5)
+Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends}
+Multi-Arch: same
 Description: an ELF object file access library
  libelf provides routines to access and manipulate ELF object
  files. It is still not complete, but is required for a number of programs,
only in patch2:
unchanged:
--- libelf-0.8.13.orig/debian/libelfg0-dev.links.in
+++ libelf-0.8.13/debian/libelfg0-dev.links.in
@@ -0,0 +1 @@
+usr/lib/@DEB_HOST_MULTIARCH@/libelf.so.0 usr/lib/@DEB_HOST_MULTIARCH@/libelf.so

Reply via email to