diff -pruN 1:2.22-1/debian/changelog 1:2.22-1ubuntu3/debian/changelog
--- 1:2.22-1/debian/changelog	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/changelog	2011-12-29 06:08:29.000000000 +0000
@@ -1,3 +1,26 @@
+libcap2 (1:2.22-1ubuntu3) precise; urgency=low
+
+  [ Kees Cook ]
+  * debian/{control,rules,compat}: Build for Multi-arch.
+  * debian/{control,libpam-cap.*}: Split PAM module into separate binary
+    package so it can be built for Multi-arch separate from the -bins pkg.
+
+ -- Steve Langasek <steve.langasek@ubuntu.com>  Wed, 28 Dec 2011 22:08:29 -0800
+
+libcap2 (1:2.22-1ubuntu2) precise; urgency=low
+
+  * Mangle maintainer and Vcs fields.
+
+ -- Loïc Minier <loic.minier@ubuntu.com>  Fri, 21 Oct 2011 08:53:02 +0200
+
+libcap2 (1:2.22-1ubuntu1) precise; urgency=low
+
+  * Fix cross-building by passing CC and BUILD_CC to dh_auto_make; based on a
+    patch by Colin Watson for the previous CDBS packaging, but adapted for the
+    new dh-based packaging; LP: #872435.
+
+ -- Loïc Minier <loic.minier@linaro.org>  Wed, 19 Oct 2011 16:30:24 +0200
+
 libcap2 (1:2.22-1) unstable; urgency=low
 
   * New upstream released
diff -pruN 1:2.22-1/debian/compat 1:2.22-1ubuntu3/debian/compat
--- 1:2.22-1/debian/compat	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/compat	2011-12-29 05:43:32.000000000 +0000
@@ -1 +1 @@
-7
+9
diff -pruN 1:2.22-1/debian/control 1:2.22-1ubuntu3/debian/control
--- 1:2.22-1/debian/control	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/control	2011-12-29 05:54:00.000000000 +0000
@@ -1,17 +1,19 @@
 Source: libcap2
 Section: libs
 Priority: optional
-Maintainer: Torsten Werner <twerner@debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Torsten Werner <twerner@debian.org>
 Standards-Version: 3.9.0
-Build-Depends: debhelper (>= 7.0.50~), indent, libattr1-dev, libpam0g-dev
+Build-Depends: debhelper (>= 8.1.3~), indent, libattr1-dev, libpam0g-dev
 Homepage: http://sites.google.com/site/fullycapable/
-Vcs-Git: git://git.debian.org/collab-maint/libcap2.git
-Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libcap2.git
+XS-Debian-Vcs-Git: git://git.debian.org/collab-maint/libcap2.git
+XS-Debian-Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libcap2.git
 
 Package: libcap2-bin
 Section: utils
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libpam-runtime (>= 1.1.1-3~)
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Recommends: libpam-cap
 Suggests: libcap-dev
 Conflicts: libcap-bin
 Description: basic utility programs for using capabilities
@@ -23,6 +25,8 @@ Description: basic utility programs for 
 Package: libcap2
 Priority: standard
 Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: support for getting/setting POSIX.1e capabilities
  This library implements the user-space interfaces to the POSIX
@@ -33,6 +37,7 @@ Description: support for getting/setting
 Package: libcap-dev
 Section: libdevel
 Architecture: any
+Multi-Arch: same
 Depends: libcap2 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
 Provides: libcap2-dev
 Conflicts: libcap2-dev
@@ -41,3 +46,13 @@ Suggests: manpages-dev
 Description: development libraries and header files for libcap2
  Contains the necessary support for building applications that use
  capabilities.
+
+Package: libpam-cap
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends}, ${misc:Depends}, libpam-runtime (>= 1.1.3-2~)
+Breaks: libcap2-bin (<< 1:2.22-1ubuntu3)
+Replaces: libcap2-bin (<< 1:2.22-1ubuntu3)
+Description: PAM module for implementing capabilities
+ This package contains the PAM module for enforcing capabilities on users
+ and groups at PAM session start time.
diff -pruN 1:2.22-1/debian/libcap2-bin.dirs 1:2.22-1ubuntu3/debian/libcap2-bin.dirs
--- 1:2.22-1/debian/libcap2-bin.dirs	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap2-bin.dirs	1970-01-01 00:00:00.000000000 +0000
@@ -1,2 +0,0 @@
-usr/share/pam-configs
-etc/security
diff -pruN 1:2.22-1/debian/libcap2-bin.install 1:2.22-1ubuntu3/debian/libcap2-bin.install
--- 1:2.22-1/debian/libcap2-bin.install	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap2-bin.install	2011-12-29 05:43:32.000000000 +0000
@@ -1,4 +1 @@
-debian/tmp/lib/security/*
 debian/tmp/sbin/*
-debian/pam-configs/* usr/share/pam-configs/
-pam_cap/capability.conf etc/security/
diff -pruN 1:2.22-1/debian/libcap2-bin.postinst 1:2.22-1ubuntu3/debian/libcap2-bin.postinst
--- 1:2.22-1/debian/libcap2-bin.postinst	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap2-bin.postinst	1970-01-01 00:00:00.000000000 +0000
@@ -1,37 +0,0 @@
-#!/bin/sh
-# postinst script for libcap2-bin
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-#        * <postinst> `configure' <most-recently-configured-version>
-#        * <old-postinst> `abort-upgrade' <new version>
-#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
-#          <new-version>
-#        * <postinst> `abort-remove'
-#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
-#          <failed-install-package> <version> `removing'
-#          <conflicting-package> <version>
-# for details, see http://www.debian.org/doc/debian-policy/ or
-# the debian-policy package
-
-
-case "$1" in
-    configure|abort-upgrade|abort-remove|abort-deconfigure)
-        pam-auth-update --package
-    ;;
-
-    *)
-        echo "postinst called with unknown argument \`$1'" >&2
-        exit 1
-    ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
diff -pruN 1:2.22-1/debian/libcap2-bin.prerm 1:2.22-1ubuntu3/debian/libcap2-bin.prerm
--- 1:2.22-1/debian/libcap2-bin.prerm	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap2-bin.prerm	1970-01-01 00:00:00.000000000 +0000
@@ -1,39 +0,0 @@
-#!/bin/sh
-# prerm script for libcap2-bin
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-#        * <prerm> `remove'
-#        * <old-prerm> `upgrade' <new-version>
-#        * <new-prerm> `failed-upgrade' <old-version>
-#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
-#        * <deconfigured's-prerm> `deconfigure' `in-favour'
-#          <package-being-installed> <version> `removing'
-#          <conflicting-package> <version>
-# for details, see http://www.debian.org/doc/debian-policy/ or
-# the debian-policy package
-
-
-case "$1" in
-    remove)
-        pam-auth-update --package --remove capability
-    ;;
-
-    upgrade|deconfigure|failed-upgrade)
-    ;;
-
-    *)
-        echo "prerm called with unknown argument \`$1'" >&2
-        exit 1
-    ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
diff -pruN 1:2.22-1/debian/libcap2.install 1:2.22-1ubuntu3/debian/libcap2.install
--- 1:2.22-1/debian/libcap2.install	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap2.install	2011-12-29 05:43:32.000000000 +0000
@@ -1 +1 @@
-debian/tmp/lib/lib*.so.*
+debian/tmp/lib/*/lib*.so.*
diff -pruN 1:2.22-1/debian/libcap-dev.install 1:2.22-1ubuntu3/debian/libcap-dev.install
--- 1:2.22-1/debian/libcap-dev.install	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libcap-dev.install	2011-12-29 05:43:32.000000000 +0000
@@ -1,3 +1,3 @@
 debian/tmp/usr/include/*
-debian/tmp/lib/lib*.so
-debian/tmp/lib/lib*.a
+debian/tmp/lib/*/lib*.so
+debian/tmp/lib/*/lib*.a
diff -pruN 1:2.22-1/debian/libpam-cap.install 1:2.22-1ubuntu3/debian/libpam-cap.install
--- 1:2.22-1/debian/libpam-cap.install	1970-01-01 00:00:00.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libpam-cap.install	2011-12-29 05:43:32.000000000 +0000
@@ -0,0 +1,3 @@
+debian/tmp/lib/*/security/*
+debian/pam-configs/* usr/share/pam-configs/
+pam_cap/capability.conf etc/security/
diff -pruN 1:2.22-1/debian/libpam-cap.postinst 1:2.22-1ubuntu3/debian/libpam-cap.postinst
--- 1:2.22-1/debian/libpam-cap.postinst	1970-01-01 00:00:00.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libpam-cap.postinst	2011-12-29 05:43:32.000000000 +0000
@@ -0,0 +1,37 @@
+#!/bin/sh
+# postinst script for libpam-cap
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    configure|abort-upgrade|abort-remove|abort-deconfigure)
+        pam-auth-update --package
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff -pruN 1:2.22-1/debian/libpam-cap.prerm 1:2.22-1ubuntu3/debian/libpam-cap.prerm
--- 1:2.22-1/debian/libpam-cap.prerm	1970-01-01 00:00:00.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/libpam-cap.prerm	2011-12-29 05:43:32.000000000 +0000
@@ -0,0 +1,39 @@
+#!/bin/sh
+# prerm script for libpam-cap
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    remove)
+        pam-auth-update --package --remove capability
+    ;;
+
+    upgrade|deconfigure|failed-upgrade)
+    ;;
+
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff -pruN 1:2.22-1/debian/rules 1:2.22-1ubuntu3/debian/rules
--- 1:2.22-1/debian/rules	2011-07-28 05:44:47.000000000 +0000
+++ 1:2.22-1ubuntu3/debian/rules	2011-12-29 06:01:59.000000000 +0000
@@ -1,10 +1,23 @@
 #!/usr/bin/make -f
 
+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)
+
+ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+CC := gcc
+else
+CC := $(DEB_HOST_GNU_TYPE)-gcc
+endif
+
 %:
 	dh $@
 
+override_dh_auto_build:
+	dh_auto_build -- CC=$(CC) BUILD_CC=gcc
+
 override_dh_auto_install:
-	dh_auto_install -- lib=lib RAISE_SETFCAP=no
+	dh_auto_install -- lib=lib/$(DEB_HOST_MULTIARCH) RAISE_SETFCAP=no
 
 override_dh_makeshlibs:
 	dh_makeshlibs -V 'libcap2 (>= 2.10)'

