Package: libgc1c2
Version: 1:7.1-9
Severity: wishlist
Tags: patch
User: [email protected]
Usertags: multiarch

please rebuild libgc1c2 with multiarch support.

attached, you'll find a patch, which follows the guide at [1].

the particular reason i need the libary is a piece of non-free software
(energyaware tools, built for 32bit linux) that depends on it, and i
need the 64bit version for various dependencies inside debian.

[1] http://wiki.debian.org/Multiarch/Implementation

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.4-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libgc1c2 depends on:
ii  libc6       2.13-35
ii  libgcc1     1:4.7.1-7
ii  libstdc++6  4.7.1-7

libgc1c2 recommends no packages.

libgc1c2 suggests no packages.

-- no debconf information

-- 
To use raw power is to make yourself infinitely vulnerable to greater powers.
  -- Bene Gesserit axiom
From c898006ba13af9828f02ee5f1b533dce62be7fed Mon Sep 17 00:00:00 2001
From: chrysn <[email protected]>
Date: Thu, 13 Sep 2012 10:51:18 +0200
Subject: [PATCH] patch for multi-arching

pretty much follows [1]. due to the explicit configure call, libdir had
to be configured explicitly.

not sure about making -dev `Multi-Arch: same`; [1] is not explicit about
it, but i've installed i386 and amd64 next to each other and everything
seems to be ok.

[1] http://wiki.debian.org/Multiarch/Implementation
---
 debian/changelog         |    7 +++++++
 debian/compat            |    2 +-
 debian/control           |    5 ++++-
 debian/libgc-dev.install |    6 +++---
 debian/libgc1c2.install  |    2 +-
 debian/rules             |    4 +++-
 6 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 520f657..4a538c4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+libgc (1:7.1-9.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * Add multi-arch support
+
+ -- Christian M. Amsüss <[email protected]>  Thu, 13 Sep 2012 10:50:47 +0200
+
 libgc (1:7.1-9) unstable; urgency=medium
 
   * Import patches to fix CVE-2012-2673 from upstream git (Closes: #677195)
diff --git a/debian/compat b/debian/compat
index 7f8f011..ec63514 100644
--- a/debian/compat
+++ b/debian/compat
@@ -1 +1 @@
-7
+9
diff --git a/debian/control b/debian/control
index 5ffdd88..b349292 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: libgc
 Maintainer: Christoph Egger <[email protected]>
 Section: libs
 Priority: standard
-Build-Depends: debhelper (>= 7.0.50~), autoconf, libatomic-ops-dev (>= 7.2~)
+Build-Depends: debhelper (>= 9), autoconf, libatomic-ops-dev (>= 7.2~)
 Standards-Version: 3.9.2
 Homepage: http://www.hpl.hp.com/personal/Hans_Boehm/gc/
 Vcs-Git: git://git.debian.org/git/collab-maint/libgc.git
@@ -10,9 +10,11 @@ Vcs-Browser: http://git.debian.org/?p=collab-maint/libgc.git;a=summary
 
 Package: libgc1c2
 Architecture: any
+Pre-Depends: ${misc:Pre-Depends}
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Conflicts: libgc1
 Replaces: libgc1
+Multi-Arch: same
 Description: conservative garbage collector for C and C++
  Boehm-Demers-Weiser's GC is a garbage collecting storage allocator that is
  intended to be used as a plug-in replacement for C's malloc or C++'s new().
@@ -31,6 +33,7 @@ Architecture: any
 Priority: optional
 Section: libdevel
 Depends: ${misc:Depends}, libgc1c2 (= ${binary:Version}), libc-dev
+Multi-Arch: same
 Description: conservative garbage collector for C (development)
  Boehm-Demers-Weiser's GC is a garbage collecting storage allocator that is
  intended to be used as a plug-in replacement for C's malloc or C++'s new().
diff --git a/debian/libgc-dev.install b/debian/libgc-dev.install
index 0caffbc..f4a576c 100644
--- a/debian/libgc-dev.install
+++ b/debian/libgc-dev.install
@@ -1,7 +1,7 @@
 usr/include
-usr/lib/libgc*.so
-usr/lib/libgc*.a
-usr/lib/pkgconfig/bdw-gc.pc
+usr/lib/*/libgc*.so
+usr/lib/*/libgc*.a
+usr/lib/*/pkgconfig/bdw-gc.pc
 usr/share/doc/gc/*.html usr/share/doc/libgc1c2
 usr/share/doc/gc/barrett_diagram usr/share/doc/libgc1c2
 usr/share/doc/gc/README usr/share/doc/libgc1c2
diff --git a/debian/libgc1c2.install b/debian/libgc1c2.install
index 5c53425..3078660 100644
--- a/debian/libgc1c2.install
+++ b/debian/libgc1c2.install
@@ -1 +1 @@
-usr/lib/libgc*.so.*
+usr/lib/*/libgc*.so.*
diff --git a/debian/rules b/debian/rules
index 3fe1753..f5eba94 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,6 +3,7 @@
 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_BUILD_ARCH:=$(shell dpkg --print-architecture)
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 
 LDFLAGS += -pthread
 
@@ -23,7 +24,8 @@ override_dh_auto_configure:
 		--localstatedir=/var/lib \
 		--datadir=\$${prefix}/share/doc \
 		--host=$(DEB_HOST_GNU_TYPE) \
-		--build=$(DEB_BUILD_GNU_TYPE)
+		--build=$(DEB_BUILD_GNU_TYPE) \
+		--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
 
 override_dh_install:
 	install -D doc/gc.man debian/tmp/usr/share/man/man3/gc_malloc.3
-- 
1.7.10.4

Attachment: signature.asc
Description: Digital signature

Reply via email to