Source: cairo
Version: 1.10.2-6
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu oneiric ubuntu-patch

Hi folks,

Please find attached a patch to cairo 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 oneiric, 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

diff -uNr old/debian/cairo-perf-utils.install new/debian/cairo-perf-utils.install
--- old/debian/cairo-perf-utils.install	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/cairo-perf-utils.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-debian/install/main/usr/bin/cairo-perf* /usr/bin
-debian/install/main/usr/bin/cairo-trace /usr/bin
-debian/install/main/usr/lib/cairo/libcairo-trace* /usr/lib/cairo
diff -uNr old/debian/cairo-perf-utils.install.in new/debian/cairo-perf-utils.install.in
--- old/debian/cairo-perf-utils.install.in	1970-01-01 01:00:00.000000000 +0100
+++ new/debian/cairo-perf-utils.install.in	2011-06-27 23:37:44.000000000 +0100
@@ -0,0 +1,3 @@
+debian/install/main/usr/bin/cairo-perf* /usr/bin
+debian/install/main/usr/bin/cairo-trace /usr/bin
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/cairo/libcairo-trace* /usr/lib/${DEB_HOST_MULTIARCH}/cairo
diff -uNr old/debian/clean new/debian/clean
--- old/debian/clean	1970-01-01 01:00:00.000000000 +0100
+++ new/debian/clean	2011-06-27 23:37:44.000000000 +0100
@@ -0,0 +1,5 @@
+debian/libcairo2-dev.install
+debian/libcairo-gobject2.install
+debian/libcairo-script-interpreter2.install
+debian/libcairo2.install
+debian/cairo-perf-utils.install
diff -uNr old/debian/control new/debian/control
--- old/debian/control	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/control	2011-06-27 23:37:44.000000000 +0100
@@ -4,7 +4,7 @@
 Maintainer: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com>
 XSBC-Original-Maintainer: Dave Beckett <daj...@debian.org>
 Uploaders: Sebastian Dröge <sl...@debian.org>
-Build-Depends: debhelper (>= 7),
+Build-Depends: debhelper (>= 8.1.3),
                dpkg-dev (>= 1.14.13),
                dh-autoreconf,
                pkg-config (>= 0.19),
@@ -65,6 +65,8 @@
         iceape-browser (<= 2.0.3-3),
         libgtk-directfb-2.0-0,
         wayland
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
 Description: The Cairo 2D vector graphics library
  Cairo is a multi-platform library providing anti-aliased
  vector-based rendering for multiple target backends. Paths consist
@@ -91,6 +93,7 @@
 Suggests: libcairo-gobject2 (= ${binary:Version}),
           libcairo-script-interpreter2 (= ${binary:Version}),
           cairo-perf-utils (= ${binary:Version})
+Multi-Arch: same
 Description: The Cairo 2D vector graphics library (debugging symbols)
  Debugging symbols for the Cairo 2D vector graphics library. This is
  needed to debug programs linked against libcairo2.
@@ -112,6 +115,8 @@
 Architecture: any
 Depends: ${shlibs:Depends},
          ${misc:Depends}
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
 Description: The Cairo 2D vector graphics library (script interpreter)
  Cairo is a multi-platform library providing anti-aliased
  vector-based rendering for multiple target backends.
@@ -124,6 +129,8 @@
 Architecture: any
 Depends: ${shlibs:Depends},
          ${misc:Depends}
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
 Description: The Cairo 2D vector graphics library (GObject library)
  Cairo is a multi-platform library providing anti-aliased
  vector-based rendering for multiple target backends.
diff -uNr old/debian/libcairo2-dev.install new/debian/libcairo2-dev.install
--- old/debian/libcairo2-dev.install	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/libcairo2-dev.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-debian/install/main/usr/include/cairo/*.h /usr/include/cairo
-debian/install/main/usr/lib/libcairo*.so /usr/lib
-debian/install/main/usr/lib/libcairo*.a /usr/lib
-debian/install/main/usr/lib/libcairo*.la /usr/lib
-debian/install/main/usr/lib/pkgconfig/cairo*.pc /usr/lib/pkgconfig
diff -uNr old/debian/libcairo2-dev.install.in new/debian/libcairo2-dev.install.in
--- old/debian/libcairo2-dev.install.in	1970-01-01 01:00:00.000000000 +0100
+++ new/debian/libcairo2-dev.install.in	2011-06-27 23:37:44.000000000 +0100
@@ -0,0 +1,5 @@
+debian/install/main/usr/include/cairo/*.h /usr/include/cairo
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo*.so usr/lib/${DEB_HOST_MULTIARCH}
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo*.a usr/lib/${DEB_HOST_MULTIARCH}
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo*.la usr/lib/${DEB_HOST_MULTIARCH}
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/cairo*.pc usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig
diff -uNr old/debian/libcairo2.install new/debian/libcairo2.install
--- old/debian/libcairo2.install	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/libcairo2.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-debian/install/main/usr/lib/libcairo.so.* /usr/lib
diff -uNr old/debian/libcairo2.install.in new/debian/libcairo2.install.in
--- old/debian/libcairo2.install.in	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/libcairo2.install.in	2011-06-27 23:37:44.000000000 +0100
@@ -1 +1 @@
-debian/install/main/usr/lib/libcairo.so.* /usr/lib
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo.so.* /usr/lib/${DEB_HOST_MULTIARCH}
diff -uNr old/debian/libcairo-gobject2.install new/debian/libcairo-gobject2.install
--- old/debian/libcairo-gobject2.install	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/libcairo-gobject2.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-debian/install/main/usr/lib/libcairo-gobject.so.* /usr/lib
diff -uNr old/debian/libcairo-gobject2.install.in new/debian/libcairo-gobject2.install.in
--- old/debian/libcairo-gobject2.install.in	1970-01-01 01:00:00.000000000 +0100
+++ new/debian/libcairo-gobject2.install.in	2011-06-27 23:37:44.000000000 +0100
@@ -0,0 +1 @@
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo-gobject.so.* /usr/lib/${DEB_HOST_MULTIARCH}
diff -uNr old/debian/libcairo-script-interpreter2.install new/debian/libcairo-script-interpreter2.install
--- old/debian/libcairo-script-interpreter2.install	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/libcairo-script-interpreter2.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-debian/install/main/usr/lib/libcairo-script-interpreter.so.* /usr/lib
diff -uNr old/debian/libcairo-script-interpreter2.install.in new/debian/libcairo-script-interpreter2.install.in
--- old/debian/libcairo-script-interpreter2.install.in	1970-01-01 01:00:00.000000000 +0100
+++ new/debian/libcairo-script-interpreter2.install.in	2011-06-27 23:37:44.000000000 +0100
@@ -0,0 +1 @@
+debian/install/main/usr/lib/${DEB_HOST_MULTIARCH}/libcairo-script-interpreter.so.* /usr/lib/${DEB_HOST_MULTIARCH}
diff -uNr old/debian/rules new/debian/rules
--- old/debian/rules	2011-06-27 23:37:37.000000000 +0100
+++ new/debian/rules	2011-06-27 23:37:44.000000000 +0100
@@ -32,6 +32,7 @@
 # Features:
 # --enable-png  PNG (default enabled)
 
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
@@ -52,6 +53,7 @@
 
 main_configure_flags += \
 $(configure_flags) \
+--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
 --enable-xlib --enable-svg \
 --enable-xcb --enable-perf-utils
 
@@ -117,12 +119,21 @@
 
 install-%: build-stamp-%
 	$(MAKE) -C $(builddir) install DESTDIR=$(installdir)
-	sed -i "/dependency_libs/ s/'.*'/''/" $(installdir)/usr/lib/*.la
+	for file in $$(find $(installdir)/usr/lib -name '*.la'); do \
+		sed -i "/dependency_libs/ s/'.*'/''/" $$file; \
+	done
 
 install:
 	dh_testdir
 	dh_testroot
 	dh_prep
+	for file in libcairo2-dev.install libcairo-gobject2.install \
+	            libcairo-script-interpreter2.install libcairo2.install \
+	            cairo-perf-utils.install; \
+	do \
+		sed -e"s,\$${DEB_HOST_MULTIARCH},${DEB_HOST_MULTIARCH},g" \
+			debian/$${file}.in > debian/$$file; \
+	done
 	dh_installdirs
 	for f in $(FLAVORS); do \
 	    debian/rules install-$$f; \

Attachment: signature.asc
Description: Digital signature

Reply via email to