Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Jörg Krause" <joerg.krause@embedded.rocks>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] package/protobuf: uses fork(), not available on no-MMU platforms
Date: Sat, 27 Aug 2016 20:01:36 +0200	[thread overview]
Message-ID: <1472320896.3953.4.camel@embedded.rocks> (raw)
In-Reply-To: <20160827151211.3984639c@free-electrons.com>

On Sa, 2016-08-27 at 15:12 +0200, Thomas Petazzoni wrote:
> Hello,
> 
> On Sat, 27 Aug 2016 02:17:03 +0200, J?rg Krause wrote:
> > 
> > Propagate the dependency to the packages mosh and ola.
> > 
> > Fixes:
> > http://autobuild.buildroot.net/results/2c1/2c151e84d7854a810465dc16
> > 869023e0ada2d586/
> > 
> > Signed-off-by: J?rg Krause <joerg.krause@embedded.rocks>
> 
> At first, I was a bit surprised as to why we're seeing this only now,
> so I investigated a bit, and came to the following conclusion, which
> I
> added to the commit log:
> 
> """
> ????This was not noticed until now because:
> ????
> ?????1/ The older Blackfin toolchain doesn't have libatomic, so it
> didn't
> ????????provide the atomic operations that protobuf needs, so
> protobuf was
> ????????never built.
> ????
> ?????2/ The ARM Cortex-M toolchain is static-only, and protobuf
> requires
> ????????dynamic library support.
> ????
> ????So it's only with the new Blackfin toolchain, which is based on
> gcc
> ????6.x (and therefore provides libatomic) and is FDPIC-based (and
> therefore
> ????has dynamic library support) that this problem appeared.
> 
> """
> 
> 
> > 
> > diff --git a/package/protobuf/Config.in
> > b/package/protobuf/Config.in
> > index 3215a07..4a8d1ef 100644
> > --- a/package/protobuf/Config.in
> > +++ b/package/protobuf/Config.in
> > @@ -33,6 +33,7 @@ config BR2_PACKAGE_PROTOBUF
> > ?	depends on BR2_INSTALL_LIBSTDCPP
> > ?	depends on BR2_TOOLCHAIN_HAS_THREADS
> > ?	depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
> > +	depends on BR2_USE_MMU # fork()
> > ?	depends on !BR2_STATIC_LIBS
> > ?	help
> > ?	??Protocol buffers are Google's language-neutral,
> > platform-neutral,
> 
> When you add a new dependency, you must also propagate it to the
> Config.in comment so that those comments don't appear on no-MMU
> platforms.
> 
> *However*, in this specific case, there was already a
> BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS, to which it makes a lot of sense
> to
> add the BR2_USE_MMU dependency: it's an architecture dependency, and
> by
> doing so, it's automatically propagated to the existing comments and
> reverse dependencies.

Many thanks for improving the commit! However, there a some packages
which have an architecture dependency where the no-MMU dependency is
not added to the architecture dependency, e.g. gauche. Should those
packages be revised, too?

J?rg

  reply	other threads:[~2016-08-27 18:01 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-27  0:17 [Buildroot] [PATCH] package/protobuf: uses fork(), not available on no-MMU platforms Jörg Krause
2016-08-27 13:12 ` Thomas Petazzoni
2016-08-27 18:01   ` Jörg Krause [this message]
2016-08-27 19:37     ` 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=1472320896.3953.4.camel@embedded.rocks \
    --to=joerg.krause@embedded.rocks \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox