All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v4] mtree: new package
Date: Thu, 28 Mar 2019 12:14:41 +0100	[thread overview]
Message-ID: <20190328121441.02648d09@windsurf> (raw)
In-Reply-To: <87bm1w9ck5.fsf@haabendal.dk>

Hello Esben,

On Wed, 27 Mar 2019 23:28:58 +0100
Esben Haabendal <esben.haabendal@gmail.com> wrote:

> > If it has been resolved in glibc 2.23, should
> > we remove those work-arounds ?  
> 
> It depends.  If we do that, people using external toolchains with glibc
> older than 2.23 would see breakage.
> 
> > I just would like to make sure we don't work around this problem in
> > different ways in different packages.  
> 
> Sounds like a good plan.  Unfortunately, I don't see that any of the
> proposed workaround generally good.
> 
> For packages where large file support is not deemed an important
> feature, The -U_FILE_OFFSET_BITS workaround is good.  But for packages
> where large file support could be relevant, it seems like a bad idea to
> disable it just to stay compatible with old glibc versions that only a
> few people use together with new buildroot versions.
> 
> If you like, I will switch to the -U_FILE_OFFSET_BITS for mtree
> package.  I personally don't need large file support...

OK, I did a bit of testing, taking as example the libcgroup package. I
confirmed that without -U_FILE_OFFSET_BITS, libcgroup fails to build
with the Sourcery ARM toolchain (old glibc), but builds perfectly fine
with the Linaro toolchain (recent glibc).

So, from there, you have two options:

 (1) You don't have much time and you're not willing to not much
     additional work. In this case, use the -U_FILE_OFFSET_BITS trick in
     mtree. This way, we have the same quirk/workaround everywhere for this
     fts.h problem.

 (2) You have more time. In this case, add a hidden option in
     toolchain/Config.in called BR2_TOOLCHAIN_HAS_BROKEN_FTS. This hidden
     option should be selected by the broken ARM Codesourcery toolchain.
     Then all packages that do the -U_FILE_OFFSET_BITS trick can be changed
     to only do it when BR2_TOOLCHAIN_HAS_BROKEN_FTS is enabled
     (including mtree, of course).

     Obviously, this leaves old custom external toolchains potentially
     broken, as for these, the work around will not be applied. If this
     turns out to really be a problem in practice, we can always add an
     option BR2_TOOLCHAIN_EXTERNAL_CUSTOM_HAS_BROKEN_FTS, and let the
     user enable it + a check that if this option is not enabled, the
     external toolchain really does not have broken fts.h.

Let me know which option you chose :-)

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

  reply	other threads:[~2019-03-28 11:14 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-26 14:24 [Buildroot] [PATCH v4] mtree: new package Esben Haabendal
2019-03-27 19:18 ` Thomas Petazzoni
2019-03-27 22:28   ` Esben Haabendal
2019-03-28 11:14     ` Thomas Petazzoni [this message]
2019-03-28 15:14       ` Esben Haabendal
2019-03-28 18:13         ` Arnout Vandecappelle
2019-03-28 20:00           ` Thomas Petazzoni
2019-03-28 20:59             ` Peter Korsgaard
2019-03-28 21:53               ` Thomas Petazzoni
2019-03-29  9:31                 ` Arnout Vandecappelle
2019-03-29  9:35                   ` Thomas Petazzoni

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=20190328121441.02648d09@windsurf \
    --to=thomas.petazzoni@bootlin.com \
    --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.