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
next prev parent 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 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.