Source: gdbm
Version: 1.8.3-9
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu oneiric ubuntu-patch

Hi Anibal,

Please find attached a patch to gdbm to transition it to use of the
multiarch library paths as described at
<http://wiki.debian.org/Multiarch/Implementation>.  This patch has been
applied and is being used successfully in Ubuntu 11.04, and should be safe
to apply in Debian now that multiarch has been bootstrapped there.

Would be great if you could apply this patch to the Debian package, so we
can whittle away ia32-libs for wheezy. :)

Thanks,
-- 
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/control'
--- debian/control	2009-11-21 17:16:51 +0000
+++ debian/control	2011-03-17 08:32:48 +0000
@@ -2,15 +2,18 @@
 Source: gdbm
 Section: libs
 Priority: important
 Maintainer: Anibal Monsalve Salazar <ani...@debian.org>
-Build-Depends: texinfo, quilt, libtool, automake, autoconf, autotools-dev
+Build-Depends: texinfo, quilt, libtool, automake, autoconf, autotools-dev,
+	dpkg-dev (>= 1.16.0)
 Standards-Version: 3.8.3
 Homepage: http://directory.fsf.org/project/gdbm/
 
 Package: libgdbm3
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, dpkg (>= 1.15.4) | install-info
+Multi-Arch: same
+Pre-Depends: multiarch-support
 Description: GNU dbm database routines (runtime version)
  GNU dbm ('gdbm') is a library of database functions that use extendible
  hashing and works similarly to the standard UNIX 'dbm' functions.

=== modified file 'debian/rules'
--- debian/rules	2009-11-07 21:32:33 +0000
+++ debian/rules	2011-03-17 08:22:40 +0000
@@ -12,6 +12,7 @@
 
 DEB_BUILD_GNU_TYPE	:= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_GNU_TYPE	:= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_HOST_MULTIARCH	:= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 
 STRIP=strip --remove-section=.comment --remove-section=.note
 
@@ -19,7 +20,7 @@
 install_file=install -m 644
 install_script=install -m 755
 install_binary=install -m 755 -s
-compress=gzip -9v
+compress=gzip -9vn
 
 include /usr/share/quilt/quilt.make
 
@@ -38,10 +39,11 @@
 	autoconf
 	cp -f /usr/share/misc/config.sub /usr/share/misc/config.guess .
 ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
-	CFLAGS="-O2 -g -Wall -D_REENTRANT" ./configure --prefix=/usr
+	CFLAGS="-O2 -g -Wall -D_REENTRANT" ./configure --prefix=/usr \
+		--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
 else
 	CFLAGS="-O2 -g -Wall -D_REENTRANT" ./configure --prefix=/usr \
-	--host=$(DEB_HOST_GNU_TYPE)
+	--host=$(DEB_HOST_GNU_TYPE) --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
 endif
 	echo "/* We use fcntl locking (POSIX) instead of flock (BSD) */" >> autoconf.h
 	echo "#undef HAVE_FLOCK" >> autoconf.h
@@ -60,11 +62,11 @@
 
 	$(MAKE) INSTALL_ROOT=$$(pwd)/debian/tmp install install-compat
 	rm -fr debian/tmp/usr/include debian/tmp/usr/info \
-	       debian/tmp/usr/man debian/tmp/usr/lib/*.a \
-                debian/tmp/usr/lib/*.la \
-	       debian/tmp/usr/lib/*.so
-	$(STRIP) --strip-unneeded debian/tmp/usr/lib/*.so*
-	chmod 644 debian/tmp/usr/lib/*.so*
+	       debian/tmp/usr/man debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.a \
+                debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.la \
+	       debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.so
+	$(STRIP) --strip-unneeded debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.so*
+	chmod 644 debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.so*
 
 	$(compress) debian/tmp/usr/share/info/*
 	$(compress) debian/tmp/usr/share/man/man3/*
@@ -79,7 +81,7 @@
 	$(compress) debian/tmp/usr/share/doc/libgdbm3/*
 	$(install_file) debian/copyright debian/tmp/usr/share/doc/libgdbm3/copyright
 
-	dpkg-shlibdeps debian/tmp/usr/lib/libgdbm.so.3.0.0
+	dpkg-shlibdeps debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libgdbm.so.3.0.0
 	dpkg-gencontrol -isp -plibgdbm3
 	# md5sums control file
 	cd debian/tmp/; find . -type f ! -regex '.*/DEBIAN/.*' -printf '%P\0' | xargs -r0 md5sum > DEBIAN/md5sums
@@ -97,11 +99,11 @@
                 man3dir=$$(pwd)/debian/tmp/usr/share/man/man3 \
                 install install-compat
 	for ext in "" "_compat"; do \
-	  $(STRIP) --strip-debug debian/tmp/usr/lib/libgdbm$$ext.a; \
-	  rm debian/tmp/usr/lib/libgdbm$$ext.so.3.0.0; \
-	  rm debian/tmp/usr/lib/libgdbm$$ext.so.3; \
+	  $(STRIP) --strip-debug debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libgdbm$$ext.a; \
+	  rm debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libgdbm$$ext.so.3.0.0; \
+	  rm debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libgdbm$$ext.so.3; \
 	done
-	chmod 644 debian/tmp/usr/lib/*.la
+	chmod 644 debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.la
 
 	# libc6 owns ndbm.h, but some apps want gdbm's
 	mv debian/tmp/usr/include/ndbm.h debian/tmp/usr/include/gdbm-ndbm.h

Attachment: signature.asc
Description: Digital signature

Reply via email to