Debian Bug report logs - #618840
make-dfsg: make needs to know about multiarch for expansion of -l target dependencies

version graph

Package: make-dfsg; Maintainer for make-dfsg is Manoj Srivastava <srivasta@debian.org>;

Reported by: Steve Langasek <steve.langasek@canonical.com>

Date: Fri, 18 Mar 2011 21:06:01 UTC

Severity: important

Tags: patch

Found in version 3.81-8

Fixed in version make-dfsg/3.81-8.1

Done: Steve Langasek <vorlon@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

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


Report forwarded to debian-bugs-dist@lists.debian.org, Manoj Srivastava <srivasta@debian.org>:
Bug#618840; Package make-dfsg. (Fri, 18 Mar 2011 21:06:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <steve.langasek@canonical.com>:
New Bug report received and forwarded. Copy sent to Manoj Srivastava <srivasta@debian.org>. (Fri, 18 Mar 2011 21:06:04 GMT) Full text and rfc822 format available.

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

From: Steve Langasek <steve.langasek@canonical.com>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: make-dfsg: make needs to know about multiarch for expansion of -l target dependencies
Date: Fri, 18 Mar 2011 14:02:50 -0700
[Message part 1 (text/plain, inline)]
Package: make-dfsg
Version: 3.81-8
Severity: normal
Tags: patch
User: vorlon@debian.org
Usertags: multiarch

Hi Manoj,

As part of the initial deployment of multiarch support in Ubuntu, we've
discovered that some packages rely on make dependencies on "-lpthread" and
the like, which GNU make resolves internally to a library file.  Since
multiarch means changing the paths at which libraries are installed on the
system, this means an update to make is required to know about the extended
system path on Debian systems.

The attached patch implements this.  It's not the prettiest m4 code I've
ever written, but it does the job...  It also has a fallback when built with
current dpkg-architecture (which doesn't implement DEB_HOST_MULTIARCH), so
this may be reasonable to apply in advance of dpkg-dev 1.16.0 landing in the
Debian archive.  Or, you may prefer to wait for dpkg-dev 1.16.0 and drop any
mention of DEB_HOST_GNU_TYPE here, since it's been determined that this is
wrong for i386.

(Note, this currently doesn't include /usr/local/lib/$triplet.  The reason
for this is that the gcc and eglibc patches for multiarch do not mention
/usr/local/lib/$triplet, so I'm following suit here; but we may want to
revisit this issue down the line, I'm not sure this is very FHS upstreamable
without the /usr/local/lib analogue.)

Changelog entry used for the upload to Ubuntu was:

  * remake.c, configure.in: prepend multiarch paths to the library path in 
    library_search() when we have a target dependency of '-lfoo', so that
    this still works when all our libraries are moving to multiarch library
    directories.  LP: #737641.

Cheers,
-- 
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/
slangasek@ubuntu.com                                     vorlon@debian.org
[tmpYf5s1l (text/x-c, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, Manoj Srivastava <srivasta@debian.org>:
Bug#618840; Package make-dfsg. (Fri, 18 Mar 2011 22:03:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to Manoj Srivastava <srivasta@debian.org>. (Fri, 18 Mar 2011 22:03:03 GMT) Full text and rfc822 format available.

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

From: Jonathan Nieder <jrnieder@gmail.com>
To: bug-make@gnu.org
Cc: Steve Langasek <steve.langasek@canonical.com>
Subject: Re: make needs to know about multiarch for expansion of -l target dependencies
Date: Fri, 18 Mar 2011 17:00:58 -0500
Hi Paul,

FYI:

Steve Langasek wrote[1]:

> As part of the initial deployment of multiarch support in Ubuntu, we've
> discovered that some packages rely on make dependencies on "-lpthread" and
> the like, which GNU make resolves internally to a library file.  Since
> multiarch means changing the paths at which libraries are installed on the
> system, this means an update to make is required to know about the extended
> system path on Debian systems.
>
> The attached patch implements this.
[...]
> (Note, this currently doesn't include /usr/local/lib/$triplet.  The reason
> for this is that the gcc and eglibc patches for multiarch do not mention
> /usr/local/lib/$triplet, so I'm following suit here; but we may want to
> revisit this issue down the line, I'm not sure this is very FHS upstreamable
> without the /usr/local/lib analogue.)
>
> Changelog entry used for the upload to Ubuntu was:
>
>   * remake.c, configure.in: prepend multiarch paths to the library path in 
>     library_search() when we have a target dependency of '-lfoo', so that
>     this still works when all our libraries are moving to multiarch library
>     directories.  LP: #737641.

This all suggests to me that we need a

	getconf LIBRARY_PATH

command so the same system-specific rules do not have to be reimplemented
in every program that cares.

Potential Debian-specific patch to just deal with this in "make" in the
short term follows.  Thoughts?

Thanks,
Jonathan

[1] http://bugs.debian.org/618840

> --- Makefile.am	2006-05-03 21:49:55 +0000
> +++ Makefile.am	2011-03-18 20:34:06 +0000
> @@ -57,7 +57,7 @@
>  
>  man_MANS =	make.1
>  
> -DEFS =		-DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@
> +DEFS =		-DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" -DMULTIARCH_DIRS="$(MULTIARCH_DIRS)" @DEFS@
>  
>  AM_CPPFLAGS =	$(GLOBINC)
>  # Only process if target is MS-Windows
> 
> === modified file 'configure.in'
> --- configure.in	2006-05-03 21:49:55 +0000
> +++ configure.in	2011-03-18 20:41:16 +0000
> @@ -374,6 +374,24 @@
>  MAKE_HOST="$host"
>  AC_SUBST(MAKE_HOST)
>  
> +AC_PATH_TOOL([DPKG_ARCH], [dpkg-architecture])
> +AC_MSG_CHECKING([for multiarch paths])
> +multiarch_triplet=""
> +if test -n "$DPKG_ARCH"; then
> +	multiarch_triplet=$($DPKG_ARCH -qDEB_HOST_MULTIARCH)
> +	if test -z "$multiarch_triplet"; then
> +		multiarch_triplet=$($DPKG_ARCH -qDEB_HOST_GNU_TYPE)
> +	fi
> +fi
> +if test -n "$multiarch_triplet"; then
> +	MULTIARCH_DIRS="\\\"/lib/$multiarch_triplet\\\", \\\"/usr/lib/$multiarch_triplet\\\","
> +	AC_MSG_RESULT([$MULTIARCH_DIRS])
> +else
> +	AC_MSG_RESULT([not found])
> +fi
> +
> +AC_SUBST(MULTIARCH_DIRS)
> +
>  w32_target_env=no
>  AM_CONDITIONAL([WINDOWSENV], false)
>  
> 
> === modified file 'remake.c'
> --- remake.c	2008-04-03 02:04:02 +0000
> +++ remake.c	2011-03-18 20:17:13 +0000
> @@ -1451,6 +1451,9 @@
>  {
>    static char *dirs[] =
>      {
> +#ifdef MULTIARCH_DIRS
> +      MULTIARCH_DIRS
> +#endif
>  #ifndef _AMIGA
>        "/lib",
>  #endif
> 




Information forwarded to debian-bugs-dist@lists.debian.org, Manoj Srivastava <srivasta@debian.org>:
Bug#618840; Package make-dfsg. (Wed, 23 Mar 2011 03:09:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jonathan Nieder <jrnieder@gmail.com>:
Extra info received and forwarded to list. Copy sent to Manoj Srivastava <srivasta@debian.org>. (Wed, 23 Mar 2011 03:09:03 GMT) Full text and rfc822 format available.

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

From: Jonathan Nieder <jrnieder@gmail.com>
To: Steve Langasek <steve.langasek@canonical.com>
Cc: 618840@bugs.debian.org
Subject: Re: make-dfsg: make needs to know about multiarch for expansion of -l target dependencies
Date: Tue, 22 Mar 2011 22:05:34 -0500
Hi Steve,

Steve Langasek wrote:

> Changelog entry used for the upload to Ubuntu was:
>
>   * remake.c, configure.in: prepend multiarch paths to the library path in 
>     library_search() when we have a target dependency of '-lfoo', so that
>     this still works when all our libraries are moving to multiarch library
>     directories.  LP: #737641.

FWIW, I'd encourage you to make an NMU (to experimental at first,
presumably).  I say this from no position of authority, of course.
If Manoj shows up, that would be even better, but he's been silent
regarding the "make" package lately.

Thanks for your work.
Jonathan




Severity set to 'important' from 'normal' Request was from Steve Langasek <vorlon@debian.org> to control@bugs.debian.org. (Sat, 02 Apr 2011 06:06:05 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Manoj Srivastava <srivasta@debian.org>:
Bug#618840; Package make-dfsg. (Sat, 02 Apr 2011 06:12:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Manoj Srivastava <srivasta@debian.org>. (Sat, 02 Apr 2011 06:12:03 GMT) Full text and rfc822 format available.

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

From: Steve Langasek <vorlon@debian.org>
To: 618840@bugs.debian.org
Subject: Re: make-dfsg: make needs to know about multiarch for expansion of -l target dependencies
Date: Fri, 1 Apr 2011 23:02:22 -0700
[Message part 1 (text/plain, inline)]
severity 618840 important
thanks

Hi Manoj,

dpkg-architecture support for multiarch has now landed in unstable, which
means eglibc will soon be uploaded to move its .so files from /usr/lib to
the multiarch paths.  As this will cause some packages to begin to FTBFS
without this patch, I raise the severity of this bug to "important" and plan
to NMU make for this issue on Monday, April 4 unless you indicate otherwise.

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/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Manoj Srivastava <srivasta@debian.org>:
Bug#618840; Package make-dfsg. (Sat, 09 Apr 2011 20:39:49 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Manoj Srivastava <srivasta@debian.org>. (Sat, 09 Apr 2011 20:39:54 GMT) Full text and rfc822 format available.

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

From: Steve Langasek <vorlon@debian.org>
To: 618840@bugs.debian.org
Subject: Re: make-dfsg: make needs to know about multiarch for expansion of -l target dependencies
Date: Sat, 9 Apr 2011 13:00:03 -0700
[Message part 1 (text/plain, inline)]
Hi Manoj,

As previously indicated, I'm now uploading an NMU for make-dfsg - a few days
later than originally promised.  The full NMU diff with changelog is
attached for your reference.

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/
slangasek@ubuntu.com                                     vorlon@debian.org
[make-dfsg-nmu.diff (text/x-diff, attachment)]
[signature.asc (application/pgp-signature, inline)]

Reply sent to Steve Langasek <vorlon@debian.org>:
You have taken responsibility. (Sat, 09 Apr 2011 20:55:14 GMT) Full text and rfc822 format available.

Notification sent to Steve Langasek <steve.langasek@canonical.com>:
Bug acknowledged by developer. (Sat, 09 Apr 2011 20:55:21 GMT) Full text and rfc822 format available.

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

From: Steve Langasek <vorlon@debian.org>
To: 618840-close@bugs.debian.org
Subject: Bug#618840: fixed in make-dfsg 3.81-8.1
Date: Sat, 09 Apr 2011 20:50:09 +0000
Source: make-dfsg
Source-Version: 3.81-8.1

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

make-dfsg_3.81-8.1.diff.gz
  to main/m/make-dfsg/make-dfsg_3.81-8.1.diff.gz
make-dfsg_3.81-8.1.dsc
  to main/m/make-dfsg/make-dfsg_3.81-8.1.dsc
make_3.81-8.1_amd64.deb
  to main/m/make-dfsg/make_3.81-8.1_amd64.deb



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 618840@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Steve Langasek <vorlon@debian.org> (supplier of updated make-dfsg 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: SHA256

Format: 1.8
Date: Sat, 09 Apr 2011 19:51:46 +0000
Source: make-dfsg
Binary: make
Architecture: source amd64
Version: 3.81-8.1
Distribution: unstable
Urgency: low
Maintainer: Manoj Srivastava <srivasta@debian.org>
Changed-By: Steve Langasek <vorlon@debian.org>
Description: 
 make       - An utility for Directing compilation.
Closes: 618840
Changes: 
 make-dfsg (3.81-8.1) unstable; urgency=low
 .
   * Non-maintainer upload.
   * remake.c, configure.in: prepend multiarch paths to the library path in
     library_search() when we have a target dependency of '-lfoo', so that
     this still works when all our libraries are moving to multiarch library
     directories.  Closes: #618840, LP: #737641.
Checksums-Sha1: 
 fe02dff593390163d828d773941b4a9781544410 1813 make-dfsg_3.81-8.1.dsc
 3c6e256b29e9608de5885b5f164a92ea46b0c62f 372432 make-dfsg_3.81-8.1.diff.gz
 70f40906138e8ef93ef58d070bf328799796ab06 407780 make_3.81-8.1_amd64.deb
Checksums-Sha256: 
 50752756cfc9b1b2187ecc05d9f65cb9df336aa7111b84482197c8f25bd04de3 1813 make-dfsg_3.81-8.1.dsc
 aeadcb1b8a7d477f245ed417a1b0e9a473c8d5c3421b41f34d5be585154dadde 372432 make-dfsg_3.81-8.1.diff.gz
 55ea9754b4d01fefe90c1d1b888ecaf26fe5e83b692a46533b0d52da52d9a5e0 407780 make_3.81-8.1_amd64.deb
Files: 
 c168e6f0879e522d1d2e3dba75760928 1813 devel standard make-dfsg_3.81-8.1.dsc
 cffb0163c3710c43c16e03c4176211f5 372432 devel standard make-dfsg_3.81-8.1.diff.gz
 d94f831ad4f9ca0edb79d3fd710dccd4 407780 devel standard make_3.81-8.1_amd64.deb

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

iQIVAwUBTaC6JFaNMPMhshM9AQgwiA//fIvvFfADXVmTO+1REZvXAG6Uu/4dKMvF
hIAwiVg7oMm5WX5jgzgKsIIPpvR/LDMKzsckEmyUvJmhhVu6zktj9FzuaDWe0A3C
xl76S8kK7WcBLSAHfC+abcdkN8lmEnNtWFuUiryC2y/vfoAmU3f4QpyROzLCx1uU
tG5PwtTMj7KRGPi9SaZaFm2IqgKoFKlX/zIKqMxRJE9EqZW1hDXTEMPN0GZGNi52
Bd80UEmITRKQAj/tNpNalremSw9p+J1pK1KgIJ0CoM8DbsLDfBes3UK6/YzAKqXz
5SMNR4nlytFXvzXWEphKGW4oezyFtDa9R7HxR4V7/g87hBDEigSMwY5C9QK3fPZI
usbBTMrYGNObDAjOiLp8ky09u2Q7ak97ugOnBvj1q95GQypb+TR7TG5CgZDr+XQ4
P5xea2+CpNJocuEceB6UW3vFu4CzupoBRIiBcKKtAi59vEFOflOslTVKAvlpS4ha
DixM0+jaGZUf4eapSQIlCWoATJqyCaQU6tqjk4q84cSJuKkAiArjePcaNhRh7oSJ
QN87qRoSZuw5Zwl4S0azVjsuizMR39A5p1jgJkLyUjH3YoeQ5ayONeWEYZKnpJMt
CZPgoPAMDeP+EuqZl4BRtbq6e0XOwV6vpw02BaCxWmPTOLwtd15QxjObVxtq6GcZ
7fx8K0LzCwQ=
=eZpF
-----END PGP SIGNATURE-----





Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Wed, 18 May 2011 07:36:42 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Thu Apr 17 05:03:31 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.