Commit Graph

103 Commits

Author SHA1 Message Date
Jörg Krause
b139cb5dbe boost: module context affected by GCC bug 64735
Building boosts module context is affected by GCC bug 64735 [1]:

```
./boost/context/execution_context_v2.hpp:298:31: error: 'exception_ptr' is not a member of 'std'
     auto p = std::make_tuple( std::exception_ptr{}, std::move( data) );
```

This is because `exception_ptr` from libstdc++ is not available for
architectures not supporting always lock-free atomic ints.

Note, that this bug is fixed in GCC 7.

Fixes:
http://autobuild.buildroot.net/results/f4e/f4e8a3727f19f7df4a1c45efe3603422fafd4af5/

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64735

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-06-15 22:27:00 +02:00
Romain Naour
5270553b90 package/boost: disable boost-locale for static only build with icu
Boost fails to build with the following error:

error: Tried to build the target twice, with property sets having
error: these incompatible properties:
error:
error:     -  <runtime-link>static <warnings>all
error:     -  <runtime-link>shared <warnings>on

when the following conditions are met:

 - BR2_STATIC_LIBS=y
 - BR2_PACKAGE_ICU=y
 - BR2_PACKAGE_BOOST_LOCALE=y
 - Another BR2_PACKAGE_BOOST_xyz option is enabled, which enables a
   feature not provided just by header files, but that requires
   building a library.

In such a situation, Boost absolutely wants to build the libboost
libraries as shared libraries. Not having boost-locale, or not having
icu is sufficient to avoid the issue.

So, as a simple work-around, we prevent from building boost-locale
when icu and static linking are used.

Fixes:

  http://autobuild.buildroot.net/results/c8f7aa85f5791d8ae8cf4b9085788adc5152286f/

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
 - only disable boost-locale when icu is enabled
 - improve commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-05-16 09:45:35 +02:00
Adam Duskett
48bd50287f package/b*/Config.in: fix ordering of statements
The check-package script when ran gives warnings on ordering issues
on all of these Config files.  This patch cleans up all warnings
related to the ordering in the Config files for packages starting with
the letter b in the package directory.

The appropriate ordering is: type, default, depends on, select, help
See http://nightly.buildroot.org/#_config_files for more information.

Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-29 17:17:57 +02:00
Rahul Bedarkar
26a7f80664 package: use SPDX short identifier for Boost Software License 1.0
We want to use SPDX identifier for license string as much as possible.
SPDX short identifier for Boost Software License 1.0 is BSL-1.0.

Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-01 15:34:46 +02:00
Jörg Krause
1d577f33df boost: bump to version 1.63.0
Remove getchar() patch which has been applied upstream.

Add recommanded post-release patch from upstream to fix 64-bit atomic
operations on 32-bit x86 with gcc versions older than 4.7.

Add a patch from upstream to fix FPE issue with uClibc-based toolchains.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-12 14:09:57 +01:00
Thomas Petazzoni
e14d0dfbfe Revert "boost: bump to version 1.63.0"
This reverts commit 7b9b0e3215, which is
causing way too many build issues in our autobuilders.

Fixes:

  http://autobuild.buildroot.net/results/7f0ec2d249f7219c60979b9abb1eb3266d475012/
  and many other build issues

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-12 11:27:41 +01:00
Jörg Krause
7b9b0e3215 boost: bump to version 1.63.0
Remove getchar() patch which has been applied upstream.

Add recommanded post-release patch from upstream to fix 64-bit atomic
operations on 32-bit x86 with gcc versions older than 4.7.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-10 22:21:24 +01:00
Gustavo Zacarias
dc513a797b boost: use $(TARGET_MAKE_ENV) when calling $(MAKE)
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-15 14:17:16 +02:00
Romain Naour
778ab4da4f package/boost: context module needs ARM instructions on ARM
The boost-context module contains ARM assembly code, which uses ARM
instructions. Therefore, on Thumb-2 only platforms (such as Cortex-M),
the following build error occurs:

libs/context/src/asm/make_arm_aapcs_elf_gas.S: Assembler messages:
libs/context/src/asm/make_arm_aapcs_elf_gas.S:33: Error: unshifted register required -- `bic a1,a1,#15'
libs/context/src/asm/make_arm_aapcs_elf_gas.S:42: Error: immediate value out of range

To avoid this error, we make the boost-context module depend on
BR2_ARM_CPU_HAS_ARM.

Fixes:

  http://autobuild.buildroot.net/results/8f6770b59a343b9f710e9363b43227ee9f026660

Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas: use BR2_ARM_CPU_HAS_ARM instead of a dependency on
!BR2_ARM_CPU_ARMV7M.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-02 22:49:01 +02:00
Waldemar Brodkorb
36ed5cba0d boost: disable wave support for coldfire
A big autogenerated C file is used, which does not fit
in the limited range provided for coldfire.
See here for a longer discussion about the type of issue:
http://uclinux-dev.uclinux.narkive.com/9HrogvzP/fatal-error-tried-to-convert-pc-relative

Fixes:
http://autobuild.buildroot.net/results/c0a8b73901956b393bebe7df3b7af26ade26fcbf/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-01 20:29:47 +02:00
Julien Floret
3c230b3fab boost: remove empty host dependencies definition
Signed-off-by: Julien Floret <julien.floret@6wind.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-03 10:24:02 +02:00
Romain Naour
f7c9571cb0 package/boost: add boot-type_erasure support
Until now this library wasn't handled by the Buildroot packaging,
so add a new config option to disable it when requested.

Also disable boost-type_erasure for the host variant to keep it as
minimal as possible.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-02 18:55:02 +02:00
Bernd Kuhls
052b46c6dc package/boost: boost-metaparse depends on boost-test
The boost metaparse library depends on the test library:
https://github.com/boostorg/metaparse/blob/master/build/Jamfile.v2

The test library itself depends on MMU, therefore we need to propagate
the dependency, fixes

http://autobuild.buildroot.net/results/02f/02f98a50340ecae01f723ad48c2d54d9e28388f8/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-20 22:47:12 +02:00
Bernd Kuhls
f223c19f93 package/boost: Add Kconfig option for new module metaparse
The module description can be found in the release notes of v1.61.0:
http://www.boost.org/users/history/version_1_61_0.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-08 07:56:35 +02:00
Bernd Kuhls
a7bc7b5564 package/boost: bump version to 1.61.0
removed patches applied upstream, renumbered remaining patches.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-08 07:55:54 +02:00
Peter Korsgaard
577021e81b Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-01 17:55:16 +02:00
Thomas Petazzoni
668ce45644 boost: remove BR2_PACKAGE_BOOST_ARCH_SUPPORTS option
The BR2_PACKAGE_BOOST_ARCH_SUPPORTS option was originally added in
commit feeab03fa6 to be able to disable
Boost on broken NIOSII CodeSourcery toolchains.

However, since then, the CodeSourcery toolchain has been updated, and
once the fenv problem is fixed, this NIOSII toolchain is capable of
building Boost.

Thanks to this we can completely get rid of the
BR2_PACKAGE_BOOST_ARCH_SUPPORTS symbol, from boost itself and from all
its reverse dependencies.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-17 15:25:18 +02:00
Thomas Petazzoni
f01f2cde09 boost: fix build failures on NIOSII and Microblaze
The fenv support provided by glibc on NIOSII and Microblaze is not
sufficient for Boost, causing the same build failures as the ones we had
with uClibc.

To address this, we adapt (and rename) the existing
0006-uclibc-fenv.patch by forcefully disabling fenv support in Boost on
NIOSII and Microblaze, in addition to the existing uClibc exclusion.

Fixes (for NIOSII):

  http://autobuild.buildroot.net/results/9b8c5d2cd31d63ae70b41d1434868c83e65b8423/

Fixes (for Microblaze):

  http://autobuild.buildroot.net/results/0b9db4c5cfd80d75eb620dbf7a6201faed7230a1/

Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-17 15:23:42 +02:00
Jörg Krause
c8c039ee54 boost: fix getchar issue with uClibc and gcc <= 4.8.2
getchar() is defined as a macro in uClibc. This hits gcc bug 58952 [1] for all
gcc versions <= 4.8.2 and building boost/test fails:

./boost/test/impl/unit_test_main.ipp: In function 'int boost::unit_test::unit_test_main(boost::unit_test::init_unit_test_func, int, char**)':
./boost/test/impl/unit_test_main.ipp:194:18: error: expected unqualified-id before '(' token

To allow building boost/test with uClibc based toolchains with gcc <= 4.8.2 use
parenthesis for std::getchar.

Fixes:
http://autobuild.buildroot.net/results/506/506b3b1b4087318a4247456782ac9e4f128d5db6/
http://autobuild.buildroot.net/results/5f2/5f2a8fb5cb823160542ee721591867b34bd25de6/
http://autobuild.buildroot.net/results/e3e/e3e6002ac5b40f7f03d32ba9da99f6497f01b42f/
.. and more

Upstream status: Pending
https://github.com/boostorg/test/pull/97

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58952

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-31 03:47:14 +02:00
Bernd Kuhls
bbef0a871d package/boost: Disable fenv support with uClibc
The boost build system does not recognize the fact that fenv.h is an
optional module in uClibc and tries to use it even if UCLIBC_HAS_FENV
is disabled. This patch disables fenv support completely when compiling
with a uClibc-based toolchain.

Fixes
http://autobuild.buildroot.net/results/160/160e1b98b204148ecf128144826554b6c523931b/
and many others

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-02-13 16:45:37 +01:00
Thomas Petazzoni
2babbddac9 boost: fix missing select on BR2_PACKAGE_LIBICONV
The boost package adds a dependency on the libiconv package when
boost-locale is selected but locale support is not available in the
toolchain. However, it forgets to select BR2_PACKAGE_LIBICONV in this
situation, causing the following build failure:

  http://autobuild.buildroot.org/results/ab1809f4fa8cf29208f9503edd90aca87fe397c2/

This commit fixes this mistake by adding the necessary select
BR2_PACKAGE_LIBICONV.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-02-06 12:30:32 +01:00
Jörg Krause
640b75c8d7 package/boost: add patch to fix undeclared isnan issue
Add patch from upstream [1] to fix build error:
  ./boost/math/special_functions/fpclassify.hpp:137:75: error: '::isnan' has not been declared

Fixes:
http://autobuild.buildroot.net/results/6c7/6c72c189cd029fb6c81798f5443fab331358bb90/
http://autobuild.buildroot.net/results/b70/b709fc201c9df8f76163e2a620da32362abe5288/
http://autobuild.buildroot.net/results/99b/99bdbc5622dfd0ac369611ec07dd2a8a8fe41ce8/
http://autobuild.buildroot.net/results/d2b/d2b270787fc20e45c839d5670af55e47723aef2a/
and many more.

Backported from: fbd1393858719c7bda7d251f742950c1bc691ea8

[1] fbd1393858

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-01-16 18:18:31 +01:00
Jörg Krause
d0b1749757 package/boost: add patch to fix host build with gcc 4.4
Add patch from upstream [1] to fix a host build with gcc 4.4.x:
  gcc.compile.c++ bin.v2/libs/container/build/gcc-4.4.5/release/threading-multi/pool_resource.o
  libs/container/src/pool_resource.cpp:35: error: declaration of 'typedef class boost::container::pmr::block_slist_base<boost::container::pmr::block_slist_header> boost::container::pmr::pool_data_t::block_slist_base'
  ./boost/container/detail/block_slist.hpp:67: error: changes meaning of 'block_slist_base' from 'class boost::container::pmr::block_slist_base<boost::container::pmr::block_slist_header>'

Fixes:
http://autobuild.buildroot.org/results/3cd/3cdc30a5b6e05de99787a20bf71fcf82842c15b3/
http://autobuild.buildroot.net/results/852/85212dd41db76d4e32efd98736ad8506e1917a8d/
http://autobuild.buildroot.org/results/963/963d102aa1c42efd84447d68d0856074421fbe05/
http://autobuild.buildroot.org/results/a39/a395f91969f79a8a4c0deffca4cdfdad33d48bd0/
.. and many more.

Host build tested on Scientific Linux 6.7 with gcc 4.4.7.

Backported from: a4e9686f8a0258bc30f9da2abab65673d6b9bd50

[1] a4e9686f8a

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-01-05 22:36:37 +01:00
Jörg Krause
8c91a32be5 package/boost: add patch to fix libquadmath issue
Backport patch from upstream [1] to fix build issues with toolchains not
providing libquadmath, but still supporting __float128.

Fixes:
http://autobuild.buildroot.net/results/fcc/fccb40e7b05b84275cfe36a890cedbbaaaa4f953/
http://autobuild.buildroot.net/results/cfc/cfcc6c44d2225b9baf0fd92d3cfba4922bfb248b/
http://autobuild.buildroot.net/results/ab1/ab1a5aceedb7f9edcd5536b601f1ffb66c5fe1e8/
http://autobuild.buildroot.net/results/1ed/1ed3c1ae1e31325b49dd05c1f616637bb5e6382d/
http://autobuild.buildroot.net/results/9e5/9e53a5aff9966c6f26e705c91d13692107452feb/
and many more.

Backported from: 74ff2db959c5fa75bec770c41ed2951a740fe936

[1]
74ff2db959

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-01-03 21:58:45 +01:00
Jörg Krause
ef72f660e4 package/boost: bump to version 1.60.0
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-26 16:04:02 +01:00
Romain Naour
c785b1b2c4 toolchain-external: CodeSourcery NIOSII: support only one version
See the conclusion about external toolchains during the Buildroot
meeting [1]:
"In the future, we stick to a single external toolchain version. The
Kconfig symbol should not encode the version (avoid legacy handling)"

[1] http://elinux.org/index.php?title=Buildroot:DeveloperDaysELCE2015#Report

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-18 22:57:16 +01:00
Jörg Krause
469bc4f370 package/boost: add library coroutine2
Coroutine2 is a new (C++14) library added in boost 1.59.0. We also add
coroutine2 to the '--without-libraries' configuration flag for the host
variant.

Build successfully tested with Arago ARMv5 2011.09 - a gcc v4.5.3 toolchain.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-12 13:53:48 +01:00
Jörg Krause
8e098cbe6e package/boost: fix space tabs
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-12 13:53:18 +01:00
Jörg Krause
12ec0cd9af package/boost: bump to version 1.59.0
Also:
* remove patch "gcc.jam compiler options fix" - merged upstream
* renumber patch "fix uclibc eventfd".

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-12 13:53:09 +01:00
Peter Korsgaard
9fbeea741a boost: add target build step
The build step for the target was missing, causing the compilation to happen
during the staging install step.  Add a dedicated build step like we do for
the host build.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-12-05 15:38:05 +01:00
Peter Korsgaard
7c35f31552 boost: reorder build steps
The host and target build steps were mixed between eachother. Reorder them
so we have the target steps before the host ones.

No functional change, but helps readability.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-12-05 15:38:05 +01:00
Peter Korsgaard
27281af4bf boost: make package less verbose when building with -s
The boost build is very verbose (11K+ lines even when no sub options are
enabled).  While this can be handy for debugging, make is less verbose when
'make -s' is used, similar to how we do it for autotools.

With this, make -s boost outputs less than 100 lines.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-12-05 15:37:50 +01:00
Peter Korsgaard
cc257ee493 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-12-01 23:24:07 +01:00
Waldemar Brodkorb
4b13641be6 boost: specify architecture variant for sparc
Instead of using a patch to specify the architecture variant for
sparc, use some Boost configure variables.

[Thomas: reword commit log.]

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-17 22:10:15 +01:00
Thomas Petazzoni
648956a137 boost: do not allow context module on sparc
The boost context module does not build on sparc, even if sparc is
advertised as a supported architecture by the boost documentation. So
let's disallow this module for the time being.

Fixes:

  http://autobuild.buildroot.org/results/206/2060e6e31c4d739947097faf6587e0a06681fee2/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-16 21:50:56 +01:00
Waldemar Brodkorb
fa110626f7 boost: fix sparc64 compile, set the correct instruction-set
The default for sparc is v7, which doesn't work for sparc64.
Use ultrasparc for sparc64.
Fixes following autobuild errors:
http://autobuild.buildroot.net/results/0cad0a6eddc153098bb6d1501afd1cf4a57a82d1/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-08 15:02:08 +01:00
Thomas Petazzoni
7025021950 boost: add link giving the list of architectures supported by context
To help understanding the list of architectures supported by
Boost.Context, add a link to the appropriate documentation page.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-03 21:18:00 +01:00
Edson Siqueira
e9bd806311 boost: add option to build boost_coroutine
It was disabled by default by commit
611dfe6cb5 because it caused some build
failures on AArch64 and SuperH. However, the coroutine module needs
the context module, which is only available on certain architectures.

We can therefore allow enabling the coroutine module, but only if the
context module is available.

[Thomas: extend commit log with more details.]

Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-11-03 21:16:26 +01:00
Jonathan Ben Avraham
239f54c2fe boost.mk: allow building both static and shared
Use BR2_SHARED_STATIC_LIBS for building both static and shared boost libs.
The static libs are copied to the staging directory. Only the shared libs are
copied to the rootfs image.

[Thomas:
 - remove empty else clause, and instead add a comment that explains
   why we're doing something only for the BR2_STATIC_LIBS=y and
   BR2_SHARED_LIBS=y.
 - remove trailing backslash at the end of the BOOST_CONF_OPTS
   definition.]

Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-10-26 07:28:09 +01:00
Jonathan Ben Avraham
49580efc4a boost.mk spelling error 'SEPERATED' -> 'SEPARATED'
Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-10-25 22:01:40 +01:00
Thomas Petazzoni
b7aee38fe2 boost: fix build on ARC
This commit adds a patch to Boost to make it use the eventfd()
function provided by the C library when uClibc is used, rather than
falling back to using directly the __NR_eventfd system call. This
fixes the build on ARC, which doesn't define __NR_eventfd.

The original problem is that uClibc pretends to be glibc 2.2, which
didn't had eventfd(), so Boost makes the system call
manually. uClibc-ng, in its next release, will pretend to be glibc
2.10 (see
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=4ff3a6c8eb91db71d6dc3d2932b66e848bd20ac3),
which will also fix the problem, but requires bumping the uClibc
version, rebuilding the external toolchains, and so on.

Ideally, Boost should be doing a compile test to detect if eventfd()
is available or not, but the Boost build system is so brain-damaged
that doing so would require way too much effort.

Fixes:

  http://autobuild.buildroot.org/results/22b/22b710346d2cd78b7b51cdccd18d670bb6ac5d24/
  and many similar build failures

[Peter: minor tweaks to description]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-08-19 23:06:59 +02:00
Jörg Krause
d86b94e028 package/boost: boost needs wchar
The most modules of boost needs a toolchain with wchar. To ease maintenance
we make the entire boost package depend on wchar.

Also add a reverse dependency to libftdipp1 and yaml-cpp.

Fixes:
http://autobuild.buildroot.net/results/49f/49f5c0521fc90fbd4673ad233ff679be007d2953/
http://autobuild.buildroot.net/results/12f/12f544c97e3451fb2a72025ebc62292957e47070/
http://autobuild.buildroot.net/results/ef6/ef6c897ea7547e8ed5f019e8ce4473f0998f2c16/
http://autobuild.buildroot.net/results/7a0/7a0ab069c505696a7887ba5c561b76b233ce59d5/

and more.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-26 15:24:20 +02:00
Gustavo Zacarias
74461e56b3 boost: fix build for sparc
Using upstream patch, fixes:
http://autobuild.buildroot.net/results/dd0/dd032aa7b387f3ba5b25bffcaf833ba0ea9ba199/

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-22 17:19:16 +02:00
Jörg Krause
b685629b9c package/boost: boost-filesystem needs wchar
Also add reverse dependency for cc-tool.

Fixes:
http://autobuild.buildroot.net/results/2c7/2c7783b7f3cc28d54d15a7f017442c48244ffd8e/
http://autobuild.buildroot.net/results/2c7/2c7783b7f3cc28d54d15a7f017442c48244ffd8e/
http://autobuild.buildroot.net/results/0dd/0dd3ef96bbd034a41d908cdaa6552b27fda78132/
http://autobuild.buildroot.net/results/34b/34b55b2cd83fd5d87af4a9c15d05094b16ef3960/

and many more

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-18 14:13:50 +02:00
Arnout Vandecappelle
e77354d28f boost: use backtick instead of $(shell ...) make function
Also remove the variables TARGET_CC_VERSION and HOST_CC_VERSION which
lack the BOOST_ prefix and are used only once.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-07-15 00:42:01 +02:00
Peter Korsgaard
cddaae8229 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-06-01 23:52:57 +02:00
Jörg Krause
d5f5a829fc package/boost: bump to version 1.58.0
Add patch to fix build issues for mips and sh targets:
error: unrecognized command line option '-m32'

Fixes:
http://autobuild.buildroot.org/results/66c/66c3a868816dfe4bd4d0ffafec6988fd87a2c058/
http://autobuild.buildroot.net/results/ccd/ccd5c83963032ba49b1627b1dff39e34a9486943/

Patch send upstream:
https://github.com/boostorg/build/pull/76

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Tested-by: Gergely Imreh <imrehg@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-05-21 23:54:10 +02:00
Thomas Petazzoni
7aaa9bee2e boost: do not allow boost-log on PowerPC with uClibc
The build of boost-log with a uClibc toolchain on PowerPC fails with
some weird C++ issues. Since nobody ever looked into this problem,
let's "fix" the autobuilder issue by not allowing to select boost-log
in such a situation.

Fixes:

   http://autobuild.buildroot.net/results/13b43105caf4d3952de70030b51f8d96cf6604ee/
   (and many, many similar build failures)

[Peter: also add dependency to comment]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-05-16 15:13:58 +02:00
Romain Naour
e94a953159 package/boost: stop on the first error during install to staging
-q option is missing in BOOST_INSTALL_STAGING_CMDS,
so the build doesn't stop on the first error.
This help to see what happened.

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-05-16 14:20:47 +02:00
Thomas Petazzoni
feeab03fa6 boost: disable on NIOS 2 with broken toolchains
The current NIOS 2 toolchains are not capable of building Boost, so
let's disable it and its reverse dependencies. Even though it's not
strictly an architecture dependency, we use the <pkg>_ARCH_SUPPORTS
paradigm for this dependency, since it simplifies a lot handling all
boost reverse dependencies, and is anyway quite similar to an
architecture dependency since we don't display a comment about this
dependency.

Fixes:

  http://autobuild.buildroot.net/results/e119b1ef55c546e0d0598b85c46ceefa5c43d5a6/

[Peter: also update mpd comment]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-05-16 09:26:29 +02:00