package/protobuf: uses fork(), not available on no-MMU platforms

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.

Since protobuf already has a BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS option,
we use it to add the BR2_USE_MMU dependency (which is architecture
related), which avoids the need to propagate the dependency.

Fixes:

  http://autobuild.buildroot.net/results/2c1/2c151e84d7854a810465dc16869023e0ada2d586/

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas:
 - move the BR2_USE_MMU dependency under
   BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS and remove the propagation to
   reverse dependencies of protobuf, since they already depend on
   BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS.
 - improve commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed