Debian Bug report logs - #636192
make fakeroot multiarch

version graph

Package: fakeroot; Maintainer for fakeroot is Clint Adams <clint@debian.org>; Source for fakeroot is src:fakeroot.

Reported by: Johannes Schauer <j.schauer@email.de>

Date: Mon, 1 Aug 2011 08:42:01 UTC

Severity: wishlist

Tags: patch

Found in version fakeroot/1.16-1

Fixed in version fakeroot/1.20-2

Done: Clint Adams <clint@debian.org>

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Mon, 01 Aug 2011 08:42:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Johannes Schauer <j.schauer@email.de>:
New Bug report received and forwarded. Copy sent to Clint Adams <clint@debian.org>. (Mon, 01 Aug 2011 08:42:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Johannes Schauer <j.schauer@email.de>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: make fakeroot multiarch
Date: Mon, 01 Aug 2011 10:39:42 +0200
Package: fakeroot
Version: 1.16-1
Severity: wishlist

Hi,

when using fakeroot (and fakechroot) to execute foreign binaries with
qemu user mode emulation, a foreign libfakeroot-sysv.so is required as
well.

multiarch would be an easy way to install such a foreign shared library,
given that additionally to the original fakeroot package (containing the
/usr/bin scripts and manpages and by that being Architecture: all) a
libfakeroot package is created (containing the shared library only and
marked as Multi-Arch: same)

making fakeroot multiarch would also remove all of the mess that is
currently going on in debian/rules which does lib32 and lib64 builds.

I can prepare a patch for you that converts fakeroot to multiarch if you
like/want me to and dont have time?

making fakeroot multiarch would also solve #624724

cheers, josch




Information forwarded to debian-bugs-dist@lists.debian.org:
Bug#636192; Package fakeroot. (Mon, 01 Aug 2011 09:24:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Clint Adams <clint@debian.org>:
Extra info received and forwarded to list. (Mon, 01 Aug 2011 09:24:05 GMT) Full text and rfc822 format available.

Message #10 received at 636192@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: Johannes Schauer <j.schauer@email.de>, 636192@bugs.debian.org
Subject: Re: Bug#636192: make fakeroot multiarch
Date: Mon, 1 Aug 2011 09:26:06 +0000
On Mon, Aug 01, 2011 at 10:39:42AM +0200, Johannes Schauer wrote:
> I can prepare a patch for you that converts fakeroot to multiarch if you
> like/want me to and dont have time?

Yes.  Just keep in mind that the fakeroot source should still be functional
on other platforms, please.




Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Tue, 13 Sep 2011 06:24:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Johannes Schauer <j.schauer@email.de>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Tue, 13 Sep 2011 06:24:06 GMT) Full text and rfc822 format available.

Message #15 received at 636192@bugs.debian.org (full text, mbox):

From: Johannes Schauer <j.schauer@email.de>
To: Clint Adams <clint@debian.org>
Cc: 636192@bugs.debian.org
Subject: Re: Bug#636192: make fakeroot multiarch
Date: Tue, 13 Sep 2011 08:19:56 +0200
[Message part 1 (text/plain, inline)]
Hi,

I attached a tarball of my ./debian directory which converts the package
to multiarch but still uses debhelper.

I didnt come to converting this to not require debhelper yet but thought
it would make sense to document my current status anyway.

cheers, josch
[debian.tar.gz (application/octet-stream, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Tue, 13 Sep 2011 22:57:38 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yann Dirson <ydirson@free.fr>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Tue, 13 Sep 2011 22:57:56 GMT) Full text and rfc822 format available.

Message #20 received at 636192@bugs.debian.org (full text, mbox):

From: Yann Dirson <ydirson@free.fr>
To: 636192@bugs.debian.org, 636192-submitter@bugs.debian.org
Subject: Non-debhelper multiarch patch for fakeroot
Date: Wed, 14 Sep 2011 00:46:50 +0200
[Message part 1 (text/plain, inline)]
It is quite simple, only touches debian/rules, the result passes the
tests when those are not run under fakeroot, and the resulting deb can
build debs.

However, I was not able to build the package as is, it fails when
trying to gzip localized manpages - I had to comment out the gzip call
for my final test.  Is there something missing in the git repo ?
Maybe in the bootstrap script ?
[0001-Multiarch-support.patch (text/x-diff, attachment)]

Added tag(s) patch. Request was from Yann Dirson <dirson@debian.org> to control@bugs.debian.org. (Tue, 13 Sep 2011 23:00:58 GMT) Full text and rfc822 format available.

Message sent on to Johannes Schauer <j.schauer@email.de>:
Bug#636192. (Tue, 13 Sep 2011 23:06:27 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Tue, 13 Sep 2011 23:21:12 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yann Dirson <ydirson@free.fr>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Tue, 13 Sep 2011 23:21:12 GMT) Full text and rfc822 format available.

Message #30 received at 636192@bugs.debian.org (full text, mbox):

From: Yann Dirson <ydirson@free.fr>
To: 636192@bugs.debian.org, 636192-submitter@bugs.debian.org
Subject: Re: Non-debhelper multiarch patch for fakeroot
Date: Wed, 14 Sep 2011 01:18:08 +0200
Hm, I just realized my patch shares a bit defect with the original
one: the fakeroot script includes the name of the multiarch dir, which
makes it different for all archs and violates the multiarch principle.

So if we cannot rely on the ld.so conf because of the subdirectory, I
guess the only way out is to make a special case in the script: if
dpkg-architecture is there and knows about multiarch, derive PATHS
from this, or else do like we do today.

That is, something like (untested):

diff --git a/scripts/fakeroot.in b/scripts/fakeroot.in
index 324a9dc..262a157 100755
--- a/scripts/fakeroot.in
+++ b/scripts/fakeroot.in
@@ -35,7 +35,17 @@ FAKEROOT_BINDIR=@bindir@
 
 USEABSLIBPATH=@LDPRELOADABS@
 LIB=lib@fakeroot_transformed@@DLSUFFIX@
-PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
+
+MULTIARCH=
+if command -v dpkg-architecture >/dev/null 2>&1; then
+    MULTIARCH=`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null`
+fi
+if [ -z "$MULTIARCH" ]; then
+    PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
+else
+    PATHS="$MULTIARCH"
+fi
+
 FAKED=${FAKEROOT_BINDIR}/@faked_transformed@
 
 FAKED_MODE="unknown-is-root"




Message sent on to Johannes Schauer <j.schauer@email.de>:
Bug#636192. (Tue, 13 Sep 2011 23:21:51 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Wed, 14 Sep 2011 20:12:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Yann Dirson <ydirson@free.fr>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Wed, 14 Sep 2011 20:12:08 GMT) Full text and rfc822 format available.

Message #38 received at 636192@bugs.debian.org (full text, mbox):

From: Yann Dirson <ydirson@free.fr>
To: 636192@bugs.debian.org, 636192-submitter@bugs.debian.org
Subject: Re: Non-debhelper multiarch patch for fakeroot
Date: Wed, 14 Sep 2011 22:11:14 +0200
On Wed, Sep 14, 2011 at 01:18:08AM +0200, Yann Dirson wrote:
> Hm, I just realized my patch shares a bit defect with the original
> one: the fakeroot script includes the name of the multiarch dir, which
> makes it different for all archs and violates the multiarch principle.
> 
> So if we cannot rely on the ld.so conf because of the subdirectory, I
> guess the only way out is to make a special case in the script: if
> dpkg-architecture is there and knows about multiarch, derive PATHS
> from this, or else do like we do today.

Well... someone less sleepy than I was yesterday may still have
noticed the obvious: this second patch *does not* remove the
arch-variant @libdir@ substitution.

Now that I'm looking at it, I realize that the default "make install"
does install libfakeroot.so directly in $prefix/lib/ - this brings me
back to the question of why we need to get it out of the standard
ld.so search path, especially if anyone installing from source get it
in that very search path.

Let's keep in mind that if we do the same, there is no problem to be
solved for PATHS: this variable won't be useful at all any more, since
ld.so would do for us that job it does well for others ;)

But if we still need that libfakeroot/ dir, looks like we need
something to make sure we have a fixed string where we currently have
@libdir@ - an auxiliary @scriptlibdir@ would do the trick.  A
configure flag to toggle multiarch mode, which would also check
dpkg-architecture and set @libdir@ and @scriptlibdir@ accordingly.

In the long run we will surely want to support multiarch on other
platforms than debian, but for now we don't really have to be more
generic.

Is that plan OK ?

> That is, something like (untested):
> 
> diff --git a/scripts/fakeroot.in b/scripts/fakeroot.in
> index 324a9dc..262a157 100755
> --- a/scripts/fakeroot.in
> +++ b/scripts/fakeroot.in
> @@ -35,7 +35,17 @@ FAKEROOT_BINDIR=@bindir@
>  
>  USEABSLIBPATH=@LDPRELOADABS@
>  LIB=lib@fakeroot_transformed@@DLSUFFIX@
> -PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
> +
> +MULTIARCH=
> +if command -v dpkg-architecture >/dev/null 2>&1; then
> +    MULTIARCH=`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null`
> +fi
> +if [ -z "$MULTIARCH" ]; then
> +    PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
> +else
> +    PATHS="$MULTIARCH"
> +fi
> +
>  FAKED=${FAKEROOT_BINDIR}/@faked_transformed@
>  
>  FAKED_MODE="unknown-is-root"




Message sent on to Johannes Schauer <j.schauer@email.de>:
Bug#636192. (Wed, 14 Sep 2011 20:12:19 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Tue, 18 Oct 2011 13:21:51 GMT) Full text and rfc822 format available.

Acknowledgement sent to Johannes Schauer <j.schauer@email.de>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Tue, 18 Oct 2011 13:21:54 GMT) Full text and rfc822 format available.

Message #46 received at 636192@bugs.debian.org (full text, mbox):

From: Johannes Schauer <j.schauer@email.de>
To: Yann Dirson <ydirson@free.fr>, 636192-quiet@bugs.debian.org
Cc: 636192@bugs.debian.org
Subject: Re: Bug#636192: Non-debhelper multiarch patch for fakeroot
Date: Tue, 18 Oct 2011 15:08:32 +0200
Hi,

On Wed, Sep 14, 2011 at 10:11:14PM +0200, Yann Dirson wrote:
> Now that I'm looking at it, I realize that the default "make install"
> does install libfakeroot.so directly in $prefix/lib/ - this brings me
> back to the question of why we need to get it out of the standard
> ld.so search path, especially if anyone installing from source get it
> in that very search path.
> 
> Let's keep in mind that if we do the same, there is no problem to be
> solved for PATHS: this variable won't be useful at all any more, since
> ld.so would do for us that job it does well for others ;)
> 
> But if we still need that libfakeroot/ dir, looks like we need
> something to make sure we have a fixed string where we currently have
> @libdir@ - an auxiliary @scriptlibdir@ would do the trick.  A
> configure flag to toggle multiarch mode, which would also check
> dpkg-architecture and set @libdir@ and @scriptlibdir@ accordingly.

What is the reasoning behind using the libfakeroot/ directory?

For example as fakeroot is not yet installed into the multiarch
/usr/lib/<triplet>/ directory, to make qemu find it when emulating
foreign architectures, I will manually download the foreign fakeroot deb
package and copy libfakeroot-sysv.so into /usr/lib/<triplet>/.

The linker will NOT search in /usr/lib/<triplet>/libfakeroot and I tried
playing with LD_PRELOAD but wasnt able to instruct it to look into the
libfakeroot/ subdirectory as well.

I'm probably overlooking the obvious but unless someone knows how to
make it automatically look into /usr/lib/<triplet>/libfakeroot as well
it would certainly be better to have libfakeroot-sysv.so in the standard
path /usr/lib/<triplet>/. This is where my foreign libfakeroot-sysv.so
currently resides and it works well.

just my two cents.

What is the status on multiarch-ing fakeroot?

cheers, josch




Information stored :
Bug#636192; Package fakeroot. (Tue, 18 Oct 2011 13:22:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Johannes Schauer <j.schauer@email.de>:
Extra info received and filed, but not forwarded. (Tue, 18 Oct 2011 13:22:08 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org:
Bug#636192; Package fakeroot. (Wed, 19 Oct 2011 01:03:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Clint Adams <clint@debian.org>:
Extra info received and forwarded to list. (Wed, 19 Oct 2011 01:03:03 GMT) Full text and rfc822 format available.

Message #56 received at 636192@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: Johannes Schauer <j.schauer@email.de>, 636192@bugs.debian.org
Cc: Yann Dirson <ydirson@free.fr>
Subject: Re: Bug#636192: Non-debhelper multiarch patch for fakeroot
Date: Wed, 19 Oct 2011 00:59:13 +0000
On Tue, Oct 18, 2011 at 03:08:32PM +0200, Johannes Schauer wrote:
> What is the reasoning behind using the libfakeroot/ directory?

I'm not sure.  Maybe it was to discourage anyone linking against
libfakeroot.




Reply sent to Clint Adams <clint@debian.org>:
You have taken responsibility. (Thu, 01 Dec 2011 04:36:04 GMT) Full text and rfc822 format available.

Notification sent to Johannes Schauer <j.schauer@email.de>:
Bug acknowledged by developer. (Thu, 01 Dec 2011 04:36:04 GMT) Full text and rfc822 format available.

Message #61 received at 636192-close@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: 636192-close@bugs.debian.org
Subject: Bug#636192: fixed in fakeroot 1.18.2-1
Date: Thu, 01 Dec 2011 04:32:33 +0000
Source: fakeroot
Source-Version: 1.18.2-1

We believe that the bug you reported is fixed in the latest version of
fakeroot, which is due to be installed in the Debian FTP archive:

fakeroot_1.18.2-1.debian.tar.gz
  to main/f/fakeroot/fakeroot_1.18.2-1.debian.tar.gz
fakeroot_1.18.2-1.dsc
  to main/f/fakeroot/fakeroot_1.18.2-1.dsc
fakeroot_1.18.2-1_amd64.deb
  to main/f/fakeroot/fakeroot_1.18.2-1_amd64.deb
fakeroot_1.18.2.orig.tar.bz2
  to main/f/fakeroot/fakeroot_1.18.2.orig.tar.bz2



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 636192@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Clint Adams <clint@debian.org> (supplier of updated fakeroot package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Wed, 30 Nov 2011 22:37:00 -0500
Source: fakeroot
Binary: fakeroot
Architecture: source amd64
Version: 1.18.2-1
Distribution: unstable
Urgency: low
Maintainer: Clint Adams <clint@debian.org>
Changed-By: Clint Adams <clint@debian.org>
Description: 
 fakeroot   - tool for simulating superuser privileges
Closes: 636192 641200 641503 646405
Changes: 
 fakeroot (1.18.2-1) unstable; urgency=low
 .
   * German translation from Chris Leick.  closes: #646405.
   * Initial multiarch support from Yann Dirson.  closes: #636192.
   * Improved build robustness from Yann Dirson.  closes: #641503.
   * Improved fakeroot-tcp robustness from Thomas Schwinge.  closes: #641200.
   * Add build-arch and build-indep targets.
Checksums-Sha1: 
 e9e0dff0581fdc0a4606120b64ec3b205d8c802e 1965 fakeroot_1.18.2-1.dsc
 0bfcceb0cc8648cbb57a817b3a87c4d1d68efbe2 303775 fakeroot_1.18.2.orig.tar.bz2
 3cbe89b00c4e07dd03038e1df656e4a44f2e79d5 51457 fakeroot_1.18.2-1.debian.tar.gz
 02e1328e1bd419782dadd838f6cc026bcf274171 107904 fakeroot_1.18.2-1_amd64.deb
Checksums-Sha256: 
 56ea3a09bd39979a37fb97072d06d732a3fdc0f00baecba4e090fb6c5d49f5ca 1965 fakeroot_1.18.2-1.dsc
 9dc942e3ef2ec83c6e6fe59de05da6ab54f39948be64803f37721adab4c6aed8 303775 fakeroot_1.18.2.orig.tar.bz2
 a9d964fc09d7feb4d109e82434481909203d857488c59758d53030d2dabf39ff 51457 fakeroot_1.18.2-1.debian.tar.gz
 9b701ed0174ca24471a4660ed6c343091c5d63e2b9c5099c624636f789bd2071 107904 fakeroot_1.18.2-1_amd64.deb
Files: 
 1846884f78aa5ee52f712c37dc403633 1965 utils optional fakeroot_1.18.2-1.dsc
 79f32331358ad58499704ea5e19fd0ae 303775 utils optional fakeroot_1.18.2.orig.tar.bz2
 88825a6494a45a484c8dfd21518fe9d4 51457 utils optional fakeroot_1.18.2-1.debian.tar.gz
 d4280ad86488de0356d1f50e9387c10b 107904 utils optional fakeroot_1.18.2-1_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Debian!

iQIcBAEBCgAGBQJO1wBMAAoJEFWSMx4ZnTioKhcQAKagm8/L2k/fg5f2/xhXXo7x
z2YqZzgHqOdx0OWAqdgami5gKW5qdXV+NcMkdu6bvdbQ60n/7qpGQIIEWcqLSlE4
HkgBhJUzCcjdQqp72nNQ69M9QJxvr1Dw05wCzY1OCL2YF1VEZFddMKZ/XezUsluE
Zt9irn3d2Sf0NuSyvOGzKXPGQp4/nU7QT1V0TkWZMrlVWuEeVv7cXyG1BHD9C49X
QNxH3r82kgZinyyr2mcDrhhKyxXYzDF0xkvmI1VRk6NVnUhlQpaq8gHuAXzaK7hm
X88T4dq5AjfwdMtm3Qi0Fc72NBJFFcjA6x5yUdwxqnZJL/Q1SeBjCldwBwoUPjg/
14HQdDgtR3CW7S6SoHNQBMrnbO6O9lqWGeuJl4cIS1FTRkJNLfp9OO9y6h8FT0ws
DnEn3wF3qlYBw/dP4cSjennP55cYZYPfolJBLCAJykdmEJkKxY2l4wO25KBTRLPd
sN8O4S9DWOfMyoaguXQbM4nHtVeveVL6X4VkJi+l727AVAi/bhvrAzzFi+nOPr/1
Z5JuOuvbmsarL1Q/f4O/eD8VkeoTYjTHmoHiGzpRJhZ2juHd5+dyorBRkEy3rdun
YT0dLM3NgZBL00Cwf3fRZwrmztdx163Y2HmRrKDFOKni3Ilnu7F3BDiYF3aL9wde
xnBFlsLx+GU4iVd7/Vc8
=VQka
-----END PGP SIGNATURE-----





Bug No longer marked as fixed in versions fakeroot/1.18.2-1 and reopened. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Fri, 23 Dec 2011 23:39:07 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Sat, 24 Dec 2011 00:03:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Anders Kaseorg <andersk@MIT.EDU>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Sat, 24 Dec 2011 00:03:05 GMT) Full text and rfc822 format available.

Message #68 received at 636192@bugs.debian.org (full text, mbox):

From: Anders Kaseorg <andersk@MIT.EDU>
To: 636192@bugs.debian.org
Subject: Re: Bug#636192: make fakeroot multiarch
Date: Fri, 23 Dec 2011 19:02:36 -0500 (EST)
1.18.2-1 did not actually add multiarch support; it only moved the 
libraries around.  And because the biarch libraries were removed, it’s 
also a regression over 1.18.1-1.

$ sudo apt-get install fakeroot:amd64 fakeroot:i386
…
The following packages have unmet dependencies:
 fakeroot : Conflicts: fakeroot:i386 but 1.18.2-1 is to be installed
 fakeroot:i386 : Conflicts: fakeroot but 1.18.2-1 is to be installed
E: Unable to correct problems, you have held broken packages.

The package needs to be marked ‘Multi-Arch: same’ before dpkg will even 
consider installing multiple architectures of the package together on the 
same system.  But that won’t work yet for this package, because most of 
the files are different on different architectures:

$ dpkg -x fakeroot_1.18.2-1_amd64.deb amd64
$ dpkg -x fakeroot_1.18.2-1_i386.deb i386
$ diff -qr amd64 i386
Files amd64/usr/bin/faked-sysv and i386/usr/bin/faked-sysv differ
Files amd64/usr/bin/faked-tcp and i386/usr/bin/faked-tcp differ
Files amd64/usr/bin/fakeroot-sysv and i386/usr/bin/fakeroot-sysv differ
Files amd64/usr/bin/fakeroot-tcp and i386/usr/bin/fakeroot-tcp differ
Only in i386/usr/lib: i386-linux-gnu
Only in amd64/usr/lib: x86_64-linux-gnu
Files amd64/usr/share/man/de/man1/faked-sysv.1.gz and i386/usr/share/man/de/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/de/man1/faked-tcp.1.gz and i386/usr/share/man/de/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/de/man1/fakeroot-sysv.1.gz and i386/usr/share/man/de/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/de/man1/fakeroot-tcp.1.gz and i386/usr/share/man/de/man1/fakeroot-tcp.1.gz differ
Files amd64/usr/share/man/es/man1/faked-sysv.1.gz and i386/usr/share/man/es/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/es/man1/faked-tcp.1.gz and i386/usr/share/man/es/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/es/man1/fakeroot-sysv.1.gz and i386/usr/share/man/es/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/es/man1/fakeroot-tcp.1.gz and i386/usr/share/man/es/man1/fakeroot-tcp.1.gz differ
Files amd64/usr/share/man/fr/man1/faked-sysv.1.gz and i386/usr/share/man/fr/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/fr/man1/faked-tcp.1.gz and i386/usr/share/man/fr/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/fr/man1/fakeroot-sysv.1.gz and i386/usr/share/man/fr/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/fr/man1/fakeroot-tcp.1.gz and i386/usr/share/man/fr/man1/fakeroot-tcp.1.gz differ
Files amd64/usr/share/man/man1/faked-sysv.1.gz and i386/usr/share/man/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/man1/faked-tcp.1.gz and i386/usr/share/man/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/man1/fakeroot-sysv.1.gz and i386/usr/share/man/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/man1/fakeroot-tcp.1.gz and i386/usr/share/man/man1/fakeroot-tcp.1.gz differ
Files amd64/usr/share/man/nl/man1/faked-sysv.1.gz and i386/usr/share/man/nl/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/nl/man1/faked-tcp.1.gz and i386/usr/share/man/nl/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/nl/man1/fakeroot-sysv.1.gz and i386/usr/share/man/nl/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/nl/man1/fakeroot-tcp.1.gz and i386/usr/share/man/nl/man1/fakeroot-tcp.1.gz differ
Files amd64/usr/share/man/sv/man1/faked-sysv.1.gz and i386/usr/share/man/sv/man1/faked-sysv.1.gz differ
Files amd64/usr/share/man/sv/man1/faked-tcp.1.gz and i386/usr/share/man/sv/man1/faked-tcp.1.gz differ
Files amd64/usr/share/man/sv/man1/fakeroot-sysv.1.gz and i386/usr/share/man/sv/man1/fakeroot-sysv.1.gz differ
Files amd64/usr/share/man/sv/man1/fakeroot-tcp.1.gz and i386/usr/share/man/sv/man1/fakeroot-tcp.1.gz differ

These conflicting files either need to be made identical somehow (e.g. the 
manpages could be gzipped with -n), or moved into a separate non-multiarch 
package.  Alternatively, the libraries could be moved into a separate 
multiarch package while the main fakeroot package remains non-multiarch.

Anders




Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Mon, 20 May 2013 15:06:09 GMT) Full text and rfc822 format available.

Acknowledgement sent to Hilko Bengen <bengen@debian.org>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Mon, 20 May 2013 15:06:09 GMT) Full text and rfc822 format available.

Message #73 received at 636192@bugs.debian.org (full text, mbox):

From: Hilko Bengen <bengen@debian.org>
To: 636192@bugs.debian.org
Subject: Proposal for making fakeroot play nice on multiarch
Date: Mon, 20 May 2013 16:52:22 +0200
[Message part 1 (text/plain, inline)]
The attached set of patches splits off the shared libraries into
libfakeroot which is made Multi-Arch: same. A change to the fakeroot
script causes all paths of the co-installed libfakeroot libraries to be
found and put into the LD_LIBRARY_PATH.

I have successfully tested that this works correctly on an amd64 system
with both i386 and amd64 binaries. (With version 1.19-2, the i386
binaries would not get fakerooted.)

With my patch, this is how fakeroot finds the different multiarch paths:

    find /usr/lib -mindepth 1 -maxdepth 1 -type d -name '*-*-gnu*'| sed 's,$,/libfakeroot,' | tr '\n' ':'

I consider this to be somewhat of a hack. Perhaps something along the
lines of

    ( dpkg --print-architecture; dpkg --print-foreign-architectures ) |\
        xargs -i dpkg-architecture -a{} -qDEB_HOST_MULTIARCH

would be more appropriate...

Cheers,
-Hilko
[0001-libfakeroot-package.patch (text/x-diff, inline)]
From 3a85fab2c95713d0851940c8d310f668cd9de923 Mon Sep 17 00:00:00 2001
From: Hilko Bengen <bengen@debian.org>
Date: Sun, 19 May 2013 22:11:52 +0200
Subject: [PATCH 1/2] libfakeroot package

---
 debian/control |   21 ++++++++++++++++-
 debian/rules   |   70 +++++++++++++++++++++++++-------------------------------
 2 files changed, 51 insertions(+), 40 deletions(-)

diff --git a/debian/control b/debian/control
index 87fb247..b5e7411 100644
--- a/debian/control
+++ b/debian/control
@@ -9,10 +9,29 @@ Vcs-Browser: http://git.debian.org/?p=users/clint/fakeroot.git;a=summary
 
 Package: fakeroot
 Architecture: any
-Depends: ${shlibs:Depends}
+Multi-Arch: foreign
+Depends: ${shlibs:Depends}, libfakeroot (>= ${binary:Version}),
 Description: tool for simulating superuser privileges
  fakeroot provides a fake "root environment" by means of LD_PRELOAD and
  SysV IPC (or TCP) trickery. It puts wrappers around getuid(), chown(),
  stat(), and other file-manipulation functions, so that unprivileged
  users can (for instance) populate .deb archives with root-owned files;
  various build tools use fakeroot for this by default.
+ .
+ This package contains fakeroot command and the daemon that remembers
+ fake ownership/permissions of files manipulated by fakeroot
+ processes.
+
+Package: libfakeroot
+Architecture: any
+Multi-Arch: same
+Breaks: fakeroot (<< 1.9-2~)
+Depends: ${shlibs:Depends}
+Description: tool for simulating superuser privileges - shared libraries
+ fakeroot provides a fake "root environment" by means of LD_PRELOAD and
+ SysV IPC (or TCP) trickery. It puts wrappers around getuid(), chown(),
+ stat(), and other file-manipulation functions, so that unprivileged
+ users can (for instance) populate .deb archives with root-owned files;
+ various build tools use fakeroot for this by default.
+ .
+ This package contains the LD_PRELOAD libraries.
diff --git a/debian/rules b/debian/rules
index bf8857b..24ce52e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -69,8 +69,8 @@ ifneq (,$(findstring $(DEB_HOST_GNU_TYPE), sparc-linux-gnu s390-linux-gnu x86_64
 	-cd obj64-tcp && $(MAKE) distclean
 endif
 	rm -rf .deps
-	rm -f debian/substvars debian/files
-	rm -rf debian/tmp obj obj64 autom4te.cache
+	rm -f debian/*.substvars debian/files
+	rm -rf debian/tmp debian/fakeroot debian/libfakeroot obj obj64 autom4te.cache
 	find . -type f -a \( -name \#\*\# -o -name .\*\~ -o -name \*\~ -o -name DEADJOE -o -name \*.orig -o -name \*.rej -o -name \*.bak -o -name .\*.orig -o -name .\*.rej -o -name .SUMS -o -name TAGS -o -name core -o \( -path \*/.deps/\* -a -name \*.P \) \) -exec rm -f {} \;
 
 # Build architecture-independent files here.
@@ -93,7 +93,6 @@ binary-arch: build checkroot
 	mv debian/tmp/${LIB_DIR}/libfakeroot/libfakeroot-0.so debian/tmp/${LIB_DIR}/libfakeroot/libfakeroot-sysv.so
 	rm debian/tmp/${LIB_DIR}/libfakeroot/libfakeroot.so
 
-	$(INSTALL_DIR) debian/tmp/DEBIAN debian/tmp/usr/bin/
 #	$(INSTALL_SCRIPT) scripts/fakeroot debian/tmp/usr/bin/
 	$(INSTALL_DIR) debian/tmp/usr/share/doc/fakeroot \
 		           debian/tmp/${LIB_DIR}/libfakeroot
@@ -107,31 +106,8 @@ binary-arch: build checkroot
 	rm -f debian/tmp/usr/bin/simple
 	$(INSTALL_FILE) debian/copyright debian/tmp/usr/share/doc/fakeroot/copyright
 	$(INSTALL_FILE) debian/changelog debian/tmp/usr/share/doc/fakeroot/changelog.Debian
-	gzip -9f debian/tmp/usr/share/man/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/man/de/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/de/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/de/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/de/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/man/es/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/es/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/es/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/es/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/man/fr/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/fr/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/fr/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/fr/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/man/nl/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/nl/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/nl/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/nl/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/man/sv/man1/faked-sysv.1 \
-		 debian/tmp/usr/share/man/sv/man1/fakeroot-sysv.1 \
-		 debian/tmp/usr/share/man/sv/man1/faked-tcp.1 \
-		 debian/tmp/usr/share/man/sv/man1/fakeroot-tcp.1 \
-		 debian/tmp/usr/share/doc/fakeroot/changelog.Debian
+	find debian/tmp -name '*.1' -or -name changelog.Debian | \
+		xargs gzip -9fn
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 	$(STRIP) --remove-section=.comment --remove-section=.note --strip-unneeded debian/tmp/${LIB_DIR}/libfakeroot/libfakeroot-sysv.so
 	$(STRIP) --remove-section=.comment --remove-section=.note --strip-unneeded debian/tmp/${LIB_DIR}/libfakeroot/libfakeroot-tcp.so
@@ -139,8 +115,19 @@ ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 	$(STRIP) --remove-section=.comment --remove-section=.note debian/tmp/usr/bin/faked-tcp
 #	$(STRIP) --strip-debug debian/tmp/${LIB_DIR}/libfakeroot.a
 endif
-	$(INSTALL_SCRIPT) debian/fakeroot.postrm debian/tmp/DEBIAN/postrm
-	$(INSTALL_SCRIPT) debian/fakeroot.prerm debian/tmp/DEBIAN/prerm
+	$(INSTALL_DIR) debian/fakeroot/DEBIAN debian/libfakeroot/DEBIAN
+
+	# split
+	(cd debian/tmp && find usr/bin usr/share -type f | xargs tar -cf - ) |\
+		(cd debian/fakeroot && tar -xf - )
+	(cd debian/tmp && find usr/lib | xargs tar -cf - ) |\
+		(cd debian/libfakeroot && tar -xf - )
+	$(INSTALL_DIR) debian/libfakeroot/usr/share/doc/libfakeroot
+	cp -r debian/tmp/usr/share/doc/fakeroot/. \
+		debian/libfakeroot/usr/share/doc/libfakeroot/.
+
+	$(INSTALL_SCRIPT) debian/fakeroot.postrm debian/fakeroot/DEBIAN/postrm
+	$(INSTALL_SCRIPT) debian/fakeroot.prerm debian/fakeroot/DEBIAN/prerm
 ifneq ($(DEB_HOST_GNU_SYSTEM),gnu)
 	sed 's/@FAKEROOT_SYSV_ALTPRIO@/50/;s/@FAKEROOT_TCP_ALTPRIO@/30/;' \
 		debian/fakeroot.postinst.in > debian/fakeroot.postinst
@@ -148,17 +135,22 @@ else
 	sed 's/@FAKEROOT_SYSV_ALTPRIO@/30/;s/@FAKEROOT_TCP_ALTPRIO@/50/;' \
 		debian/fakeroot.postinst.in > debian/fakeroot.postinst
 endif
-	$(INSTALL_SCRIPT) debian/fakeroot.postinst debian/tmp/DEBIAN/postinst
+	$(INSTALL_SCRIPT) debian/fakeroot.postinst debian/fakeroot/DEBIAN/postinst
 	rm -f debian/fakeroot.postinst
 	# We can just use the deps for faked.
-	dpkg-shlibdeps -Tdebian/substvars \
-		debian/tmp/usr/bin/faked-sysv \
-		debian/tmp/usr/bin/faked-tcp
-	dpkg-gencontrol -ldebian/changelog -isp -Tdebian/substvars -Pdebian/tmp
-	chmod 644 debian/tmp/DEBIAN/control
-	chown root:root debian/tmp/DEBIAN/control
-	cd debian/tmp && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums
-	dpkg-deb --build debian/tmp ..
+	dpkg-shlibdeps -Tdebian/libfakeroot.substvars \
+		debian/libfakeroot/${LIB_DIR}/libfakeroot/*.so
+	dpkg-shlibdeps -Tdebian/fakeroot.substvars \
+		debian/fakeroot/usr/bin/faked-sysv \
+		debian/fakeroot/usr/bin/faked-tcp
+	dpkg-gencontrol -pfakeroot -ldebian/changelog -isp -Tdebian/fakeroot.substvars -Pdebian/fakeroot
+	dpkg-gencontrol -plibfakeroot -ldebian/changelog -isp -Tdebian/libfakeroot.substvars -Pdebian/libfakeroot
+	chmod 644 debian/fakeroot/DEBIAN/control debian/libfakeroot/DEBIAN/control
+	chown root:root debian/fakeroot/DEBIAN/control debian/libfakeroot/DEBIAN/control
+	cd debian/fakeroot && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums
+	cd debian/libfakeroot && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums
+	dpkg-deb --build debian/fakeroot ..
+	dpkg-deb --build debian/libfakeroot ..
 
 source diff:
 	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
-- 
1.7.10.4

[0002-Add-patches.patch (text/x-diff, inline)]
From 97712ec43a02e70949f0a1b73dc26570389e364a Mon Sep 17 00:00:00 2001
From: Hilko Bengen <bengen@debian.org>
Date: Mon, 20 May 2013 01:07:12 +0200
Subject: [PATCH 2/2] Add patches

- FTBFS (Close: #708959)
- Determine library paths at run time, for multiarch setups
---
 debian/patches/Fix-FTBFS                           |   21 ++++++++++++++++++++
 .../fakeroot-Determine-library-paths-at-run-time   |   21 ++++++++++++++++++++
 debian/patches/series                              |    2 ++
 3 files changed, 44 insertions(+)
 create mode 100644 debian/patches/Fix-FTBFS
 create mode 100644 debian/patches/fakeroot-Determine-library-paths-at-run-time

diff --git a/debian/patches/Fix-FTBFS b/debian/patches/Fix-FTBFS
new file mode 100644
index 0000000..728dc58
--- /dev/null
+++ b/debian/patches/Fix-FTBFS
@@ -0,0 +1,21 @@
+From: Hilko Bengen <bengen@debian.org>
+Date: Sun, 19 May 2013 21:48:27 +0200
+Subject: Fix FTBFS (Closes: #708959)
+
+---
+ test/t.xattr |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/t.xattr b/test/t.xattr
+index 39e0dd0..a1087fd 100755
+--- a/test/t.xattr
++++ b/test/t.xattr
+@@ -23,7 +23,7 @@ fi
+ mkdir $tmp
+ touch $tmp/foo
+ # fakeroot mangles spaces unless the getopt utility is the GNU version
+-echo "setcap cap_net_raw+ep $tmp/foo; getcap $tmp/foo" >$tmp/sh
++echo "/sbin/setcap cap_net_raw+ep $tmp/foo; /sbin/getcap $tmp/foo" >$tmp/sh
+ run_fakeroot -- \
+   ${posixshell} $tmp/sh >$tmp/out
+ cat $tmp/out
diff --git a/debian/patches/fakeroot-Determine-library-paths-at-run-time b/debian/patches/fakeroot-Determine-library-paths-at-run-time
new file mode 100644
index 0000000..85e5d1e
--- /dev/null
+++ b/debian/patches/fakeroot-Determine-library-paths-at-run-time
@@ -0,0 +1,21 @@
+From: Hilko Bengen <bengen@debian.org>
+Date: Sun, 19 May 2013 21:52:43 +0200
+Subject: fakeroot: Determine library paths at run-time
+
+---
+ scripts/fakeroot.in |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/fakeroot.in b/scripts/fakeroot.in
+index 324a9dc..c5fda9a 100755
+--- a/scripts/fakeroot.in
++++ b/scripts/fakeroot.in
+@@ -35,7 +35,7 @@ FAKEROOT_BINDIR=@bindir@
+ 
+ USEABSLIBPATH=@LDPRELOADABS@
+ LIB=lib@fakeroot_transformed@@DLSUFFIX@
+-PATHS=@libdir@:${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
++PATHS=`find /usr/lib -mindepth 1 -maxdepth 1 -type d -name '*-*-gnu*'| sed 's,$,/libfakeroot,' | tr '\n' ':'`${FAKEROOT_PREFIX}/lib64/libfakeroot:${FAKEROOT_PREFIX}/lib32/libfakeroot
+ FAKED=${FAKEROOT_BINDIR}/@faked_transformed@
+ 
+ FAKED_MODE="unknown-is-root"
diff --git a/debian/patches/series b/debian/patches/series
index 2798318..baf8576 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,4 @@
 eglibc-fts-without-LFS
 po4a
+Fix-FTBFS
+fakeroot-Determine-library-paths-at-run-time
-- 
1.7.10.4


Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Wed, 27 Nov 2013 15:30:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Piotr Roszatycki <dexter@debian.org>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Wed, 27 Nov 2013 15:30:04 GMT) Full text and rfc822 format available.

Message #78 received at 636192@bugs.debian.org (full text, mbox):

From: Piotr Roszatycki <dexter@debian.org>
To: Debian Bug Tracking System - Control <control@bugs.debian.org>, 694827@bugs.debian.org, 636192@bugs.debian.org
Subject: Re: make fakeroot multiarch
Date: Wed, 27 Nov 2013 16:26:12 +0100
block 694827 by 636192
thanks

As far as fakeroot doesn't support multiarch, this bug for fakechroot
can't be fixed.

fakechroot supported multiarch for long time. I'm wondering why author
of fakeroot can't implement it for a months even if he'd got a proper
patch in this bug report #636192

Regards,

-- 
 .''`.    Piotr Roszatycki
: :' :    mailto:Piotr.Roszatycki@gmail.com
`. `'     mailto:dexter@debian.org
  `-



Added indication that bug 636192 blocks 694827 Request was from Piotr Roszatycki <dexter@debian.org> to control@bugs.debian.org. (Wed, 27 Nov 2013 15:30:11 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org:
Bug#636192; Package fakeroot. (Wed, 27 Nov 2013 16:45:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Clint Adams <clint@debian.org>:
Extra info received and forwarded to list. (Wed, 27 Nov 2013 16:45:05 GMT) Full text and rfc822 format available.

Message #85 received at 636192@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: Piotr Roszatycki <dexter@debian.org>, 636192@bugs.debian.org
Cc: 694827@bugs.debian.org
Subject: Re: Bug#636192: make fakeroot multiarch
Date: Wed, 27 Nov 2013 16:42:21 +0000
On Wed, Nov 27, 2013 at 04:26:12PM +0100, Piotr Roszatycki wrote:
> fakechroot supported multiarch for long time. I'm wondering why author
> of fakeroot can't implement it for a months even if he'd got a proper
> patch in this bug report #636192

Running find on every invocation is pretty annoying, but I'll take
a look shortly.



Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Wed, 27 Nov 2013 18:12:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Piotr Roszatycki <dexter@debian.org>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Wed, 27 Nov 2013 18:12:05 GMT) Full text and rfc822 format available.

Message #90 received at 636192@bugs.debian.org (full text, mbox):

From: Piotr Roszatycki <dexter@debian.org>
To: Clint Adams <clint@debian.org>
Cc: 636192@bugs.debian.org
Subject: Re: Bug#694827: Bug#636192: make fakeroot multiarch
Date: Wed, 27 Nov 2013 19:08:56 +0100
2013/11/27 Clint Adams <clint@debian.org>:
> Running find on every invocation is pretty annoying, but I'll take
> a look shortly.

There is another possibility: use the default dynamic linker feature
and simply add the path to fakeroot library to /etc/ld.so.conf.d so it
should work with empty LD_LIBRARY_PATH

binary_arch:
        # ...
        echo /usr/lib/$(DEB_HOST_MULTIARCH)/libfakeroot >
debian/libfakeroot/etc/ld.so.conf.d/fakeroot-$(DEB_HOST_MULTIARCH).conf

You can see the difference between fakeroot and fakechroot:

(sid)dexter@sony-vaio-sve1112m1ep:/$ fakeroot env | grep LD | sort
LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/libfakeroot:/usr/lib64/libfakeroot:/usr/lib32/libfakeroot
LD_PRELOAD=libfakeroot-sysv.so

(sid)dexter@sony-vaio-sve1112m1ep:/$ fakechroot env | grep LD | sort
LD_LIBRARY_PATH=
LD_PRELOAD=libfakechroot.so

(sid)dexter@sony-vaio-sve1112m1ep:/$ cat
/etc/ld.so.conf.d/fakechroot-x86_64-linux-gnu.conf
/usr/lib/x86_64-linux-gnu/fakechroot

(sid)dexter@sony-vaio-sve1112m1ep:/$ cat
/etc/ld.so.conf.d/fakechroot-i386-linux-gnu.conf
/usr/lib/i386-linux-gnu/fakechroot

Each architecture adds own ld.so.conf config so dynamic linker can
load proper file by itself.

Regards,
-- 
 .''`.    Piotr Roszatycki
: :' :    mailto:Piotr.Roszatycki@gmail.com
`. `'     mailto:dexter@debian.org
  `-



Information forwarded to debian-bugs-dist@lists.debian.org:
Bug#636192; Package fakeroot. (Wed, 27 Nov 2013 18:27:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Clint Adams <clint@debian.org>:
Extra info received and forwarded to list. (Wed, 27 Nov 2013 18:27:05 GMT) Full text and rfc822 format available.

Message #95 received at 636192@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: Piotr Roszatycki <dexter@debian.org>, 636192@bugs.debian.org
Subject: Re: Bug#636192: Bug#694827: Bug#636192: make fakeroot multiarch
Date: Wed, 27 Nov 2013 18:25:22 +0000
On Wed, Nov 27, 2013 at 07:08:56PM +0100, Piotr Roszatycki wrote:
> There is another possibility: use the default dynamic linker feature
> and simply add the path to fakeroot library to /etc/ld.so.conf.d so it
> should work with empty LD_LIBRARY_PATH

Doesn't that defeat the purpose of having a separate directory?
If so we might as well put libfakeroot into /usr/lib/$triple
and be done with it.



Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Wed, 27 Nov 2013 19:09:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Piotr Roszatycki <dexter@debian.org>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Wed, 27 Nov 2013 19:09:05 GMT) Full text and rfc822 format available.

Message #100 received at 636192@bugs.debian.org (full text, mbox):

From: Piotr Roszatycki <dexter@debian.org>
To: Clint Adams <clint@debian.org>
Cc: 636192@bugs.debian.org
Subject: Re: Bug#636192: Bug#694827: Bug#636192: make fakeroot multiarch
Date: Wed, 27 Nov 2013 20:05:37 +0100
2013/11/27 Clint Adams <clint@debian.org>:
> On Wed, Nov 27, 2013 at 07:08:56PM +0100, Piotr Roszatycki wrote:
>> There is another possibility: use the default dynamic linker feature
>> and simply add the path to fakeroot library to /etc/ld.so.conf.d so it
>> should work with empty LD_LIBRARY_PATH
>
> Doesn't that defeat the purpose of having a separate directory?
> If so we might as well put libfakeroot into /usr/lib/$triple
> and be done with it.

There is a reason to put it separately. I think it doesn't mess with
gcc because libfakeroot.so or libfakechroot.so are not intended to
linking by compile time.
I'm afraid that such shared library in standard directory would also
violate the Debian Policy because it hadn't proper symlink
(libfakeroot.so.0 or something) and archive file (libfakechroot.a).

-- 
 .''`.    Piotr Roszatycki
: :' :    mailto:Piotr.Roszatycki@gmail.com
`. `'     mailto:dexter@debian.org
  `-



Added tag(s) pending. Request was from Anibal Monsalve Salazar <anibal@debian.org> to control@bugs.debian.org. (Fri, 29 Nov 2013 07:09:04 GMT) Full text and rfc822 format available.

Reply sent to Clint Adams <clint@debian.org>:
You have taken responsibility. (Fri, 29 Nov 2013 10:03:09 GMT) Full text and rfc822 format available.

Notification sent to Johannes Schauer <j.schauer@email.de>:
Bug acknowledged by developer. (Fri, 29 Nov 2013 10:03:09 GMT) Full text and rfc822 format available.

Message #107 received at 636192-close@bugs.debian.org (full text, mbox):

From: Clint Adams <clint@debian.org>
To: 636192-close@bugs.debian.org
Subject: Bug#636192: fixed in fakeroot 1.20-2
Date: Fri, 29 Nov 2013 10:00:06 +0000
Source: fakeroot
Source-Version: 1.20-2

We believe that the bug you reported is fixed in the latest version of
fakeroot, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 636192@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Clint Adams <clint@debian.org> (supplier of updated fakeroot package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 28 Nov 2013 14:01:01 -0500
Source: fakeroot
Binary: fakeroot libfakeroot
Architecture: source amd64
Version: 1.20-2
Distribution: unstable
Urgency: low
Maintainer: Clint Adams <clint@debian.org>
Changed-By: Clint Adams <clint@debian.org>
Description: 
 fakeroot   - tool for simulating superuser privileges
 libfakeroot - tool for simulating superuser privileges - shared libraries
Closes: 636192 708959
Changes: 
 fakeroot (1.20-2) unstable; urgency=low
 .
   * Patch from Hilko Bengen to hardcode path to setcap
     in the test suite.  closes: #708959.
   * Patches from Hilko Bengen and Piotr Roszatycki for
     multiarch support.  closes: #636192.
Checksums-Sha1: 
 d214e04c3811dbfa13816785d4b8415ff3be7a05 2045 fakeroot_1.20-2.dsc
 3b933cc218c9d968c6b8a2f6776ec8c3efa70335 24921 fakeroot_1.20-2.debian.tar.gz
 e66c8ae874e727a2351a6ba185d280df2434669d 77458 fakeroot_1.20-2_amd64.deb
 fe7604a250ddf30d3454927be5780112f192e801 44406 libfakeroot_1.20-2_amd64.deb
Checksums-Sha256: 
 eea04c335d32ff42ff0ded5a8d27d6db10762dd2ba30e19b42a7ea4c1fa86038 2045 fakeroot_1.20-2.dsc
 18b6b42c5982544176eb8fe1eb96cc7a0064ed03a9225afe1b984723228a949c 24921 fakeroot_1.20-2.debian.tar.gz
 747ae01fe36bc0908948b8faef7e3bf294bd8f2c6526fbdf36120c0e8ed8db72 77458 fakeroot_1.20-2_amd64.deb
 ed44f1f2f7ac77bb5e82e3e75ab5062361f5dfacd33db8f731a0bc72e725943a 44406 libfakeroot_1.20-2_amd64.deb
Files: 
 a226ade65985e5cc747a3640f45adc0b 2045 utils optional fakeroot_1.20-2.dsc
 d9f800d362f4f0b9a7ef42ba24b75d7d 24921 utils optional fakeroot_1.20-2.debian.tar.gz
 9dce22437436c7543d3df299469109fd 77458 utils optional fakeroot_1.20-2_amd64.deb
 ea012202b657baaf9225fa946dcaa927 44406 utils optional libfakeroot_1.20-2_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.15 (GNU/Linux)
Comment: Debian!

iQIcBAEBCgAGBQJSl5RUAAoJEFWSMx4ZnTioOKQP/AjYqukKHMa2zZyfQlnbUgxm
T4d4tBPKWI4QQl9wF22lgdMAYBkP8phh+xP74huhl5ERr1aGWy9HkH0rTITBL3d0
KZJKnOcTxPhvzFSO9pOl585+apTtGeJXKZQfayXKcyz2UmdLBYOyxDmWbkllqdj+
cxE1LyO91n4TFpYb+EFjYJVl+Dm3GzAASJSqkzov7SZe6eEffGKAoWG7E4T3BRqE
/1y/7iRScksUGVl5rnHQEBTKLl1249jzQ87mqmD5MC52dszWIasHuXOtK2tQSpvT
a11l8gUaPzaTTjgvUuIUojhBx3h7KPxxDCzRYYRv6jNqxuHXn5A2o9OuH3vJLLS8
rknwk3jaJ7cQnEGxWTgurPS+qY+FX7a8iIahBy1Mm++QBUVMfROiuRc5EHhtjAO6
irJ4dEUG7HOPNCQDFIfv5/xw0HP3iUqF2agrnUse1WK6KOh5gwAYreoZnwWJ+WdM
L/iXOgrUwHNOo3z0t2K8hTOizENREtLZiqZkj2SdKgN2lhX2TAr6MQq6BvUcD0lI
wQnGDYw4yIiEHOShrHmQeTJ6kajSUy9UMqYaN5PEg5m/mRHXR9YHEbBPCk1sBxcZ
XyT+vGIdAD9Tm/EKeVepTizyMoNpg0fUIN2HE6/Y+BIs10CSKgXRHDyiJedXna7O
Zwh7FhJDEPO8Ol4S4cKn
=2hft
-----END PGP SIGNATURE-----




Information forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <clint@debian.org>:
Bug#636192; Package fakeroot. (Fri, 14 Feb 2014 01:39:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nicolas Le Cam <niko.lecam@gmail.com>:
Extra info received and forwarded to list. Copy sent to Clint Adams <clint@debian.org>. (Fri, 14 Feb 2014 01:39:04 GMT) Full text and rfc822 format available.

Message #112 received at 636192@bugs.debian.org (full text, mbox):

From: Nicolas Le Cam <niko.lecam@gmail.com>
To: 636192@bugs.debian.org, clint@debian.org
Subject: Re: Bug#636192: fixed in fakeroot 1.20-2
Date: Fri, 14 Feb 2014 02:36:38 +0100
Hi Clint,

There seems to be a remaining problem, because libfakeroot is built
two times with the same libtool output, and ldconfig doesn't seem to
like that :

$ ls -l /usr/lib/x86_64-linux-gnu/libfakeroot/
total 108
lrwxrwxrwx 1 root root    18 Feb 14 00:12 libfakeroot-0.so -> libfakeroot-tcp.so
-rw-r--r-- 1 root root 50016 Nov 29 17:40 libfakeroot-sysv.so
-rw-r--r-- 1 root root 54192 Nov 29 17:40 libfakeroot-tcp.so

$ sudo ldconfig -v 2>/dev/null | grep libfakeroot
/usr/lib/i386-linux-gnu/libfakeroot:
    libfakeroot-0.so -> libfakeroot-tcp.so
/usr/lib/x86_64-linux-gnu/libfakeroot:
    libfakeroot-0.so -> libfakeroot-tcp.so
$ LD_LIBRARY_PATH="" LD_PRELOAD="libfakeroot-0.so" /bin/echo

$ LD_LIBRARY_PATH="" LD_PRELOAD="libfakeroot-sysv.so" /bin/echo
ERROR: ld.so: object 'libfakeroot-sysv.so' from LD_PRELOAD cannot be
preloaded: ignored.

I dont know if it's related but debootstraping i386 on amd64 doesn't
work here ...

$ fakeroot fakechroot debootstrap --variant=fakechroot --arch=i386
testing testing_i386 http://http.debian.net/debian/
[...]
: Failure trying to run: chroot /home/nlecam/testing_i386 dpkg
--force-depends --install
/var/cache/apt/archives/base-passwd_3.5.28_i386.deb
W: See /home/nlecam/testing_i386/debootstrap/debootstrap.log for details
$ cat /home/nlecam/testing_i386/debootstrap/debootstrap.log
gpgv: Signature made Thu Feb 13 21:55:28 2014 CET using RSA key ID 46925553
gpgv: Good signature from "Debian Archive Automatic Signing Key
(7.0/wheezy) <ftpmaster@debian.org>"
ERROR: ld.so: object 'libfakeroot-sysv.so' from LD_PRELOAD cannot be
preloaded: ignored.
dpkg: error while loading shared libraries: libselinux.so.1: cannot
open shared object file: No such file or directory


regards,

-- 
Nicolas Le Cam



Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sat Apr 19 09:57:51 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.