Package: libxapian22
Version: 1.2.18-1.1
Severity: normal
Tags: patch
User: [email protected]
Usertags: cross

Hi there,

Please find attached a patch to xapian-core to transition it to use of
the multiarch library paths as described at
<http://wiki.debian.org/Multiarch/Implementation>.

Both aptitude and zeitgeist-core depend on libxapian22, and
zeitgeist-core as a dependency of gnome so this means that gnome and
aptitude need to be the same architecture.

So this change makes it so that aptitude and gnome can have different
architectures (eg: i386 & amd64).

I've done very minimal testing: I installed libxapian22 and checked
that aptitude started without error.

-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (700, 'testing'), (650, 'stable'), (600, 'unstable'), (550, 
'experimental')
Architecture: i386 (x86_64)
Foreign Architectures: amd64

Kernel: Linux 3.14-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libxapian22 depends on:
ii  libc6       2.19-11
ii  libgcc1     1:4.9.1-16
ii  libstdc++6  4.9.1-16
ii  libuuid1    2.20.1-5.11
ii  zlib1g      1:1.2.8.dfsg-2

libxapian22 recommends no packages.

Versions of packages libxapian22 suggests:
pn  xapian-tools  <none>

-- no debconf information
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,7 @@
 Priority: important
 Maintainer: Olly Betts <[email protected]>
 Standards-Version: 3.9.5
-Build-Depends: debhelper (>= 7), autotools-dev, zlib1g-dev, uuid-dev, dh-autoreconf
+Build-Depends: debhelper (>= 8.1.3), autotools-dev, zlib1g-dev, uuid-dev, dh-autoreconf
 Homepage: http://xapian.org/
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/xapian-core.git
 Vcs-git: git://anonscm.debian.org/collab-maint/xapian-core.git
@@ -11,8 +11,10 @@
 Package: libxapian22
 Architecture: any
 Section: libs
+Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Suggests: xapian-tools
+Multi-Arch: same
 Description: Search engine library
  This package contains the core Xapian runtime library.
  .
@@ -30,6 +32,7 @@
 Priority: extra
 Depends: libxapian22 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
 Suggests: libc6-dbg, libgcc1-dbg, zlib1g-dbg, libstdc++6-4.6-dbg
+Multi-Arch: same
 Description: Debugging symbols for the Xapian Search engine library
  This package contains debugging symbols for the core Xapian library.
  .
--- a/debian/libxapian-dev.install
+++ b/debian/libxapian-dev.install
@@ -1,8 +1,8 @@
 usr/bin/xapian-config
 usr/include
-usr/lib/cmake/xapian
-usr/lib/libxapian.a
-usr/lib/libxapian.la
-usr/lib/libxapian.so
+usr/lib/*/cmake/xapian
+usr/lib/*/libxapian.a
+usr/lib/*/libxapian.la
+usr/lib/*/libxapian.so
 usr/share/aclocal
 usr/share/man/man1/xapian-config.1
--- a/debian/libxapian22.install
+++ b/debian/libxapian22.install
@@ -1 +1 @@
-usr/lib/libxapian.so.*
+usr/lib/*/libxapian.so.*
--- a/debian/libxapianVERSION-dev.install
+++ b/debian/libxapianVERSION-dev.install
@@ -1,8 +1,8 @@
 usr/bin/xapian-config
 usr/include
-usr/lib/cmake/xapian
-usr/lib/libxapian.a
-usr/lib/libxapian.la
-usr/lib/libxapian.so
+usr/lib/*/cmake/xapian
+usr/lib/*/libxapian.a
+usr/lib/*/libxapian.la
+usr/lib/*/libxapian.so
 usr/share/aclocal
 usr/share/man/man1/xapian-config.1
--- a/debian/libxapianVERSION.install
+++ b/debian/libxapianVERSION.install
@@ -1 +1 @@
-usr/lib/libxapian.so.*
+usr/lib/*/libxapian.so.*
--- a/debian/rules
+++ b/debian/rules
@@ -53,6 +53,7 @@
     # Disable the testsuite when cross-compiling.
     DEB_BUILD_OPTIONS += nocheck
 endif
+confflags += --libdir=/usr/lib/$(DEB_HOST_MULTIARCH)
 
 # For i386 and *-i386.
 ifeq ($(patsubst %-i386,i386,$(DEB_HOST_ARCH)), i386)
@@ -175,13 +176,13 @@
 
 ifdef XAPIAN_BUILD_SSE
 	$(MAKE) -C build-sse2 DESTDIR=$(CURDIR)/debian/tmp-sse2 install
-	mkdir -p $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/sse2
-	mv $(CURDIR)/debian/tmp-sse2/usr/lib/libxapian*.so.* $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/sse2
+	mkdir -p $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/$(DEB_HOST_MULTIARCH)/sse2
+	mv $(CURDIR)/debian/tmp-sse2/usr/lib/$(DEB_HOST_MULTIARCH)/libxapian*.so.* $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/$(DEB_HOST_MULTIARCH)/sse2
 	rm -rf $(CURDIR)/debian/tmp-sse2
 endif
 
 	# Empty dependency_libs to placate luddite release goal.
-	sed -i 's/^\(dependency_libs=\).*/\1/' $(CURDIR)/debian/tmp/usr/lib/libxapian.la
+	sed -i 's/^\(dependency_libs=\).*/\1/' $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libxapian.la
 
 	# Install the example source code
 	mkdir -p debian/tmp/usr/share/doc/xapian-examples/examples

Reply via email to