All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnout Vandecappelle <arnout@mind.be>
To: buildroot@busybox.net
Subject: [Buildroot] Open bug analysis
Date: Wed, 19 Feb 2014 22:16:25 +0100	[thread overview]
Message-ID: <53051F29.2000809@mind.be> (raw)
In-Reply-To: <CAAXf6LWOJo8FPMgX=Hmk=u2QtJW6VS8JODnxK2HPfvLDuEWkgw@mail.gmail.com>

On 19/02/14 17:02, Thomas De Schampheleire wrote:
> Hi,
> 
> On Mon, Feb 17, 2014 at 6:46 PM, Arnout Vandecappelle <arnout@mind.be> wrote:
> [..]
>>> As mentioned on IRC, I'm currently using a slightly modified version
>>> of the above .la fixing:
>>>
>>> -               $$(SED) "s:\(['= ]\)/usr:\\1$(STAGING_DIR)/usr:g" $$$$i; \
>>> +               $$(SED) "s:\(['=
>>> ]\)/usr/lib:\\1$(STAGING_DIR)/usr/lib:g" $$$$i; \
>>> +               $$(SED) "s:\(['=
>>> ]\)/usr/local/lib:\\1$(STAGING_DIR)/usr/local/lib:g" $$$$i; \
>>>
>>> I.e. instead of searching for /usr/something, only search for /usr/lib
>>> as this is where all .la files are put.
>>> I actually don't think we need the /usr/local/lib line.
>>
>>  Just brainstorming here, but I think a more complete solution could be
>> something like:
>>
>> $$(SED) -e "s:\(['= ]\)$(STAGING_DIR):\\1 at STAGING_DIR@:g" \
>>         -e "s:\(['= ]\)/usr:\\1$(STAGING_DIR)/usr:g" \
>>         -e "s:@STAGING_DIR@:$(STAGING_DIR):g" \
>>         $$$$i;
>>
> 
> I have yet to try this alternate proposal, but in the meantime I have
> done several randpackage tests with the mentioned code, and this works
> without problem apparently. I have changes in pkg-autotools.mk (fixup
> of .la files), pkg-generic (fixup of .pc files), and qt5.
> 
> There is one wrong path that remains (but seems to cause no problem),
> but this same problem is present in 'normal' buildroot builds outside
> of /usr: several .la files contain strings of the form:
> -L /path/to/buildroot/sysroot/path/to/buildroot/sysroot/usr/lib
> 
> I tracked down this issue: when asking pkgconf for the libs
> corresponding to a certain dependency expression, it will add the
> sysroot to those strings it thinks need it. This works fine when the
> paths are /usr /usr/lib etc, but not in case the library dependency is
> already a full path. For example, when gcrypt and gnutls are enabled,
> libecore is compiled with: --with-libgcrypt-prefix=$(STAGING_DIR)/usr,
> causing an absolute path to be present. This is later prefixed by
> pkgconf with another instance of STAGING_DIR.

 Seems to me that this should be solved in pkgconf itself, not by hacking
the .la files...

 Regards,
 Arnout

> 
> We could fix that by doing a SED on <staging>/<staging> too, and
> replace it with just one <staging>. This would seem 'hacky' but
> actually would fix incorrect paths.
> 
> Best regards,
> Thomas
> 
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

  reply	other threads:[~2014-02-19 21:16 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-13 15:30 [Buildroot] Open bug analysis Thomas De Schampheleire
2014-02-13 18:52 ` Thomas Petazzoni
2014-02-14 20:39   ` Thomas De Schampheleire
2014-02-17 17:46     ` Arnout Vandecappelle
2014-02-19 16:02       ` Thomas De Schampheleire
2014-02-19 21:16         ` Arnout Vandecappelle [this message]
2014-02-17 17:36   ` Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53051F29.2000809@mind.be \
    --to=arnout@mind.be \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.