diff options
author | Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de> | 2016-01-06 18:31:01 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-01-11 23:26:30 +0000 |
commit | cd2cf1f654389b872e6586a120774df2067fb6d2 (patch) | |
tree | eb9957ae1e87bcb3e85f00447000567042d7cd83 | |
parent | afc0255f5a1d0b8d2b3a76d57d797c03edb48cf2 (diff) | |
download | poky-cd2cf1f654389b872e6586a120774df2067fb6d2.tar.gz |
boost: update to 1.60.0
Due to the version update to 1.59.0, the two patches previously
backported in this recipe are now dropped. The actual status of
the arm-intrinsics.patch (reported with Upstream-Status: Backport)
is unknown to the committer, and hence, that patch is kept in the
recipe, even if it is possibly not required anymore. A deeper
analysis is required to determine need and status of that patch.
Second, boost 1.59.0 provides a new library, called timer,
which is packaged as further library in the boost recipe. The
update to boost 1.60.0 required no further changes beyond
changing the checksum hashes.
Third, on PPC architectures, qemuppc & mpc8315e-rdb [1] (tested
by Ross Burton), the boost test library with the vanilla
version 1.60.0 fails with:
| gcc.compile.c++ bin.v2/libs/test/build/aca09349fdb84d131321425f6c3a38ed/execution_monitor.o
| In file included from [...]/tmp/sysroots/mpc8315e-rdb/usr/include/fenv.h:114:0,
| from [...]/tmp/sysroots/mpc8315e-rdb/usr/include/c++/5.3.0/fenv.h:36,
| from ./boost/detail/fenv.hpp:97,
| from ./boost/test/execution_monitor.hpp:64,
| from ./boost/test/impl/execution_monitor.ipp:31,
| from libs/test/src/execution_monitor.cpp:16:
| ./boost/test/impl/execution_monitor.ipp: In function 'unsigned int boost::fpe::enable(unsigned int)':
| ./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-expression before '(' token
| ::feclearexcept(BOOST_FPE_ALL);
| ^
| ./boost/test/impl/execution_monitor.ipp: In function 'unsigned int boost::fpe::disable(unsigned int)':
| ./boost/test/impl/execution_monitor.ipp:1420:7: error: expected id-expression before '(' token
| ::feclearexcept(BOOST_FPE_ALL);
| ^
The commit f50e7bc9fed323c5705c0ed992c03e80eeec1dd6 from the
boostorg/test github repository (branch: develop) [2] addresses
that issue, but it was not merged in the 1.60.0 release. This
commit adds this upstream-accepted patch, which was created by:
`git checkout f50e7bc9fed323c5705c0ed992c03e80eeec1dd6 && git format-patch -1`
[1] http://lists.openembedded.org/pipermail/openembedded-core/2016-January/114844.html
[2] https://github.com/boostorg/test/commit/f50e7bc9fed323c5705c0ed992c03e80eeec1dd6
(From OE-Core rev: 17d77db5e1203e18cdd178e7d9a457310425ebdc)
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-support/boost/bjam-native_1.60.0.bb (renamed from meta/recipes-support/boost/bjam-native_1.58.0.bb) | 0 | ||||
-rw-r--r-- | meta/recipes-support/boost/boost-1.60.0.inc (renamed from meta/recipes-support/boost/boost-1.58.0.inc) | 9 | ||||
-rw-r--r-- | meta/recipes-support/boost/boost.inc | 1 | ||||
-rw-r--r-- | meta/recipes-support/boost/boost/0001-Do-not-qualify-fenv.h-names-that-might-be-macros.patch | 45 | ||||
-rw-r--r-- | meta/recipes-support/boost/boost_1.60.0.bb (renamed from meta/recipes-support/boost/boost_1.58.0.bb) | 1 | ||||
-rw-r--r-- | meta/recipes-support/boost/files/0001-mips1-fix-added-gcc.jam-was-passing-the-options-m32-.patch | 33 | ||||
-rw-r--r-- | meta/recipes-support/boost/files/0002-Don-t-pass-m32-m64-where-it-s-not-supported.patch | 40 |
7 files changed, 50 insertions, 79 deletions
diff --git a/meta/recipes-support/boost/bjam-native_1.58.0.bb b/meta/recipes-support/boost/bjam-native_1.60.0.bb index 32646d707b..32646d707b 100644 --- a/meta/recipes-support/boost/bjam-native_1.58.0.bb +++ b/meta/recipes-support/boost/bjam-native_1.60.0.bb | |||
diff --git a/meta/recipes-support/boost/boost-1.58.0.inc b/meta/recipes-support/boost/boost-1.60.0.inc index b47d091335..a38693e25d 100644 --- a/meta/recipes-support/boost/boost-1.58.0.inc +++ b/meta/recipes-support/boost/boost-1.60.0.inc | |||
@@ -11,12 +11,9 @@ BOOST_VER = "${@"_".join(d.getVar("PV",1).split("."))}" | |||
11 | BOOST_MAJ = "${@"_".join(d.getVar("PV",1).split(".")[0:2])}" | 11 | BOOST_MAJ = "${@"_".join(d.getVar("PV",1).split(".")[0:2])}" |
12 | BOOST_P = "boost_${BOOST_VER}" | 12 | BOOST_P = "boost_${BOOST_VER}" |
13 | 13 | ||
14 | SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \ | 14 | SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2" |
15 | file://0001-mips1-fix-added-gcc.jam-was-passing-the-options-m32-.patch \ | ||
16 | file://0002-Don-t-pass-m32-m64-where-it-s-not-supported.patch \ | ||
17 | " | ||
18 | 15 | ||
19 | SRC_URI[md5sum] = "b8839650e61e9c1c0a89f371dd475546" | 16 | SRC_URI[md5sum] = "65a840e1a0b13a558ff19eeb2c4f0cbe" |
20 | SRC_URI[sha256sum] = "fdfc204fc33ec79c99b9a74944c3e54bd78be4f7f15e260c0e2700a36dc7d3e5" | 17 | SRC_URI[sha256sum] = "686affff989ac2488f79a97b9479efb9f2abae035b5ed4d8226de6857933fd3b" |
21 | 18 | ||
22 | S = "${WORKDIR}/${BOOST_P}" | 19 | S = "${WORKDIR}/${BOOST_P}" |
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc index 7167ac3859..981e6eecb8 100644 --- a/meta/recipes-support/boost/boost.inc +++ b/meta/recipes-support/boost/boost.inc | |||
@@ -18,6 +18,7 @@ BOOST_LIBS = "\ | |||
18 | serialization \ | 18 | serialization \ |
19 | signals \ | 19 | signals \ |
20 | system \ | 20 | system \ |
21 | timer \ | ||
21 | test \ | 22 | test \ |
22 | thread \ | 23 | thread \ |
23 | " | 24 | " |
diff --git a/meta/recipes-support/boost/boost/0001-Do-not-qualify-fenv.h-names-that-might-be-macros.patch b/meta/recipes-support/boost/boost/0001-Do-not-qualify-fenv.h-names-that-might-be-macros.patch new file mode 100644 index 0000000000..df7e71fea6 --- /dev/null +++ b/meta/recipes-support/boost/boost/0001-Do-not-qualify-fenv.h-names-that-might-be-macros.patch | |||
@@ -0,0 +1,45 @@ | |||
1 | From f50e7bc9fed323c5705c0ed992c03e80eeec1dd6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jonathan Wakely <jwakely@redhat.com> | ||
3 | Date: Mon, 14 Sep 2015 15:05:24 +0100 | ||
4 | Subject: [PATCH] Do not qualify <fenv.h> names that might be macros. | ||
5 | |||
6 | The patch was imported from the boost-test git repository | ||
7 | (https://github.com/boostorg/test) as of commit id | ||
8 | f50e7bc9fed323c5705c0ed992c03e80eeec1dd6. | ||
9 | |||
10 | Upstream-Status: Accepted [commit f50e7bc9fed in develop branch] | ||
11 | |||
12 | Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de> | ||
13 | --- | ||
14 | include/boost/test/impl/execution_monitor.ipp | 8 ++++---- | ||
15 | 1 file changed, 4 insertions(+), 4 deletions(-) | ||
16 | |||
17 | diff --git a/include/boost/test/impl/execution_monitor.ipp b/include/boost/test/impl/execution_monitor.ipp | ||
18 | index b3e873e..a7bdce2 100644 | ||
19 | --- a/include/boost/test/impl/execution_monitor.ipp | ||
20 | +++ b/include/boost/test/impl/execution_monitor.ipp | ||
21 | @@ -1380,8 +1380,8 @@ enable( unsigned mask ) | ||
22 | |||
23 | return ~old_cw & BOOST_FPE_ALL; | ||
24 | #elif defined(__GLIBC__) && defined(__USE_GNU) && !defined(BOOST_CLANG) && !defined(BOOST_NO_FENV_H) | ||
25 | - ::feclearexcept(BOOST_FPE_ALL); | ||
26 | - int res = ::feenableexcept( mask ); | ||
27 | + feclearexcept(BOOST_FPE_ALL); | ||
28 | + int res = feenableexcept( mask ); | ||
29 | return res == -1 ? (unsigned)BOOST_FPE_INV : (unsigned)res; | ||
30 | #else | ||
31 | /* Not Implemented */ | ||
32 | @@ -1417,8 +1417,8 @@ disable( unsigned mask ) | ||
33 | |||
34 | return ~old_cw & BOOST_FPE_ALL; | ||
35 | #elif defined(__GLIBC__) && defined(__USE_GNU) && !defined(BOOST_CLANG) && !defined(BOOST_NO_FENV_H) | ||
36 | - ::feclearexcept(BOOST_FPE_ALL); | ||
37 | - int res = ::fedisableexcept( mask ); | ||
38 | + feclearexcept(BOOST_FPE_ALL); | ||
39 | + int res = fedisableexcept( mask ); | ||
40 | return res == -1 ? (unsigned)BOOST_FPE_INV : (unsigned)res; | ||
41 | #else | ||
42 | /* Not Implemented */ | ||
43 | -- | ||
44 | 1.9.1 | ||
45 | |||
diff --git a/meta/recipes-support/boost/boost_1.58.0.bb b/meta/recipes-support/boost/boost_1.60.0.bb index c09d5f431f..e7b91dcc72 100644 --- a/meta/recipes-support/boost/boost_1.58.0.bb +++ b/meta/recipes-support/boost/boost_1.60.0.bb | |||
@@ -3,4 +3,5 @@ include boost.inc | |||
3 | 3 | ||
4 | SRC_URI += "\ | 4 | SRC_URI += "\ |
5 | file://arm-intrinsics.patch \ | 5 | file://arm-intrinsics.patch \ |
6 | file://0001-Do-not-qualify-fenv.h-names-that-might-be-macros.patch;striplevel=2 \ | ||
6 | " | 7 | " |
diff --git a/meta/recipes-support/boost/files/0001-mips1-fix-added-gcc.jam-was-passing-the-options-m32-.patch b/meta/recipes-support/boost/files/0001-mips1-fix-added-gcc.jam-was-passing-the-options-m32-.patch deleted file mode 100644 index 329b4c3612..0000000000 --- a/meta/recipes-support/boost/files/0001-mips1-fix-added-gcc.jam-was-passing-the-options-m32-.patch +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | From 817aed0d755bf8c0ba4ef6a77d41538e50b571fd Mon Sep 17 00:00:00 2001 | ||
2 | From: claymore <carlosmf.pt@gmail.com> | ||
3 | Date: Fri, 24 Apr 2015 02:28:47 +0100 | ||
4 | Subject: [PATCH 1/2] mips1 fix added gcc.jam was passing the options -m32 and | ||
5 | -m64 to mips cross-compilers, when those do not use | ||
6 | such options This modification solves it by adding mips | ||
7 | as an exception | ||
8 | |||
9 | Signed-off-by: Carlos M. Ferreira carlosmf.pt@gmail.com | ||
10 | |||
11 | Upstream-Status: Backport | ||
12 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
13 | |||
14 | --- | ||
15 | tools/build/src/tools/gcc.jam | 2 +- | ||
16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
17 | |||
18 | diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam | ||
19 | index db04534..eff95ae 100644 | ||
20 | --- a/tools/build/src/tools/gcc.jam | ||
21 | +++ b/tools/build/src/tools/gcc.jam | ||
22 | @@ -451,7 +451,7 @@ rule setup-address-model ( targets * : sources * : properties * ) | ||
23 | else | ||
24 | { | ||
25 | local arch = [ feature.get-values architecture : $(properties) ] ; | ||
26 | - if $(arch) != arm | ||
27 | + if $(arch) != arm && $(arch) != mips1 | ||
28 | { | ||
29 | if $(model) = 32 | ||
30 | { | ||
31 | -- | ||
32 | 1.7.9.5 | ||
33 | |||
diff --git a/meta/recipes-support/boost/files/0002-Don-t-pass-m32-m64-where-it-s-not-supported.patch b/meta/recipes-support/boost/files/0002-Don-t-pass-m32-m64-where-it-s-not-supported.patch deleted file mode 100644 index ecf7e550f8..0000000000 --- a/meta/recipes-support/boost/files/0002-Don-t-pass-m32-m64-where-it-s-not-supported.patch +++ /dev/null | |||
@@ -1,40 +0,0 @@ | |||
1 | From f825634a56b119dfa9d712119a66279cc7635978 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks> | ||
3 | Date: Sat, 2 May 2015 14:24:02 +0200 | ||
4 | Subject: [PATCH 2/2] Don't pass -m32/-m64 where it's not supported. | ||
5 | |||
6 | Only PowerPC, SPARC, and x86 do support the -m32 and -m64 compiler options [1]. | ||
7 | |||
8 | Rather then excluding all architectures not supporting these options as it is | ||
9 | done in commit c0634341d9ee2c02d3a55c91dafb988afc066c49 [2], include all | ||
10 | architectures that do support them. | ||
11 | |||
12 | This will fix building Boost for the SuperH architecture with Buildroot [3]. | ||
13 | |||
14 | [1] https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html | ||
15 | [2] https://github.com/boostorg/build/commit/c0634341d9ee2c02d3a55c91dafb988afc066c49 | ||
16 | [3] http://autobuild.buildroot.net/results/ccd/ccd5c83963032ba49b1627b1dff39e34a9486943/build-end.log | ||
17 | |||
18 | Upstream-Status: Backport | ||
19 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
20 | |||
21 | --- | ||
22 | tools/build/src/tools/gcc.jam | 2 +- | ||
23 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
24 | |||
25 | diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam | ||
26 | index eff95ae..2f6af93 100644 | ||
27 | --- a/tools/build/src/tools/gcc.jam | ||
28 | +++ b/tools/build/src/tools/gcc.jam | ||
29 | @@ -451,7 +451,7 @@ rule setup-address-model ( targets * : sources * : properties * ) | ||
30 | else | ||
31 | { | ||
32 | local arch = [ feature.get-values architecture : $(properties) ] ; | ||
33 | - if $(arch) != arm && $(arch) != mips1 | ||
34 | + if $(arch) = power || $(arch) = sparc || $(arch) = x86 | ||
35 | { | ||
36 | if $(model) = 32 | ||
37 | { | ||
38 | -- | ||
39 | 1.7.9.5 | ||
40 | |||