aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2019-09-16 23:30:27 +0200
committerThomas Deutschmann <whissi@gentoo.org>2019-09-16 23:30:27 +0200
commit027516d3af563328344e22b0447960081ad16f4f (patch)
tree3a055a818f63f36e1e11dd705b83ceae5f077dce
parentgen_funcs.sh: Add tc-getBUILD_CXX() function (diff)
downloadgenkernel-027516d3.tar.gz
genkernel-027516d3.tar.bz2
genkernel-027516d3.zip
Bump boost to v1.71.0
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
-rw-r--r--gkbuilds/boost-build.gkbuild30
-rw-r--r--patches/boost-build/1.70.0/boost-build-1.50.0-respect-c_ld-flags.patch53
-rw-r--r--patches/boost-build/1.70.0/boost-build-1.55.0-ppc-aix.patch13
-rw-r--r--patches/boost-build/1.71.0/boost-build-1.48.0-disable_python_rpath.patch11
-rw-r--r--patches/boost-build/1.71.0/boost-build-1.62.0-sparc-no-default-flags.patch (renamed from patches/boost-build/1.70.0/boost-build-1.62.0-sparc-no-default-flags.patch)0
-rw-r--r--patches/boost-build/1.71.0/boost-build-1.66.0-add-none-feature-options.patch (renamed from patches/boost-build/1.70.0/boost-build-1.66.0-add-none-feature-options.patch)0
-rw-r--r--patches/boost-build/1.71.0/boost-build-1.71.0-respect-c_ld-flags.patch9
-rw-r--r--patches/boost/1.71.0/boost-1.69.0-context-x32.patch38
8 files changed, 71 insertions, 83 deletions
diff --git a/gkbuilds/boost-build.gkbuild b/gkbuilds/boost-build.gkbuild
index 17673c1..b2883ed 100644
--- a/gkbuilds/boost-build.gkbuild
+++ b/gkbuilds/boost-build.gkbuild
@@ -8,19 +8,15 @@ QA_IGNORE_DYNAMICALLY_LINKED_PROGRAM='(bjam|b2)$'
src_prepare() {
default
- # Force regeneration
- rm engine/jambase.c \
- || die "Failed to remove 'engine/jambase.c'!"
-
- # This patch allows us to fully control optimization
- # and stripping flags when bjam is used as build-system
- # We simply extend the optimization and debug-symbols feature
- # with empty dummies called 'none'
- sed -i \
- -e 's/\(off speed space\)/\1 none/' \
- -e 's/\(debug-symbols : on off\)/\1 none/' \
- tools/builtin.jam \
- || die "sed failed"
+ # remove default -march/-mcpu definitions
+ # bjam is trying to be clever and injects -march= in order to
+ # optimize code for you. This breaks on 32-bit builds, because
+ # -march=i686 will not work on an i486 CHOST.
+ # https://bugs.gentoo.org/624616
+ sed -e '/^cpu-flags\s*gcc\s*OPTIONS/d' \
+ -e '/toolset\.flags\s*gcc\s*OPTIONS/d' \
+ -e "/cpu_flags('gcc',\s*'OPTIONS'/d" \
+ -i tools/gcc.{jam,py} || die "Failed removing -march/-mcpu"
}
src_compile() {
@@ -28,20 +24,20 @@ src_compile() {
local myargs=(
./build.sh
- cc
+ cxx
-d+2
--without-python
)
- CC=$(tc-getBUILD_CC) gkexec "${myargs[*]}"
+ CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) gkexec "${myargs[*]}"
}
src_install() {
mkdir -p "${D}"/usr/bin \
|| die "Failed to create '${D}/usr/bin'!"
- cp --target-directory="${D}/usr/bin" engine/bin.*/{bjam,b2} \
- || die "Failed to install 'engine/bin.*/{bjam,b2}' to '${D}/usr/bin'!"
+ cp --target-directory="${D}/usr/bin" engine/{bjam,b2} \
+ || die "Failed to install 'engine/{bjam,b2}' to '${D}/usr/bin'!"
mkdir -p "${D}"/usr/share/boost-build \
|| die "Failed to create '${D}/usr/share/boost-build'!"
diff --git a/patches/boost-build/1.70.0/boost-build-1.50.0-respect-c_ld-flags.patch b/patches/boost-build/1.70.0/boost-build-1.50.0-respect-c_ld-flags.patch
deleted file mode 100644
index 8775583..0000000
--- a/patches/boost-build/1.70.0/boost-build-1.50.0-respect-c_ld-flags.patch
+++ /dev/null
@@ -1,53 +0,0 @@
---- a/engine/build.jam
-+++ b/engine/build.jam
-@@ -3,7 +3,7 @@
- #~ (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
-
- # Clean env vars of any "extra" empty values.
--for local v in ARGV CC CFLAGS LIBS
-+for local v in ARGV CC CFLAGS LDFLAGS LIBS
- {
- local values ;
- for local x in $($(v))
-@@ -179,10 +179,10 @@
- if ! $(CC) { CC = cc ; }
- toolset cc $(CC) : "-o " : -D
- : $(CFLAGS)
-- [ opt --release : -s -O ]
-+ [ opt --release : ]
- [ opt --debug : -g ]
- -I$(--python-include) -I$(--extra-include)
-- : $(LIBS) -L$(--python-lib[1]) -l$(--python-lib[2]) ;
-+ : $(LDFLAGS) $(LIBS) -L$(--python-lib[1]) -l$(--python-lib[2]) ;
- ## Comeau C/C++ 4.x
- toolset como como : "-o " : -D
- : --c
-@@ -201,11 +201,11 @@
- ## MacOSX Darwin, using GCC 2.9.x, 3.x
- toolset darwin cc : "-o " : -D
- :
-- [ opt --release : -Wl,-x -O3 -finline-functions ]
-+ [ opt --release : -Wl,-x -finline-functions ]
- [ opt --debug : -g -O0 -fno-inline -pg ]
- [ opt --profile : -Wl,-x -O3 -finline-functions -g -pg ]
- -I$(--python-include) -I$(--extra-include)
-- : -L$(--python-lib[1]) -l$(--python-lib[2]) ;
-+ : $(LDFLAGS) -L$(--python-lib[1]) -l$(--python-lib[2]) ;
- ## GCC 2.x, 3.x, 4.x
- toolset gcc gcc : "-o " : -D
- : -pedantic -fno-strict-aliasing
---- a/engine/build.sh
-+++ b/engine/build.sh
-@@ -224,9 +224,9 @@
- cc)
- if test -z "$CC" ; then CC=cc ; fi
- BOOST_JAM_CC=$CC
-- BOOST_JAM_OPT_JAM="$BOOST_JAM_OPT_JAM $CFLAGS $LIBS"
-- BOOST_JAM_OPT_MKJAMBASE="$BOOST_JAM_OPT_MKJAMBASE $CFLAGS $LIBS"
-- BOOST_JAM_OPT_YYACC="$BOOST_JAM_OPT_YYACC $CFLAGS $LIBS"
-+ BOOST_JAM_OPT_JAM="$BOOST_JAM_OPT_JAM $CFLAGS $LDFLAGS $LIBS"
-+ BOOST_JAM_OPT_MKJAMBASE="$BOOST_JAM_OPT_MKJAMBASE $CFLAGS $LDFLAGS $LIBS"
-+ BOOST_JAM_OPT_YYACC="$BOOST_JAM_OPT_YYACC $CFLAGS $LDFLAGS $LIBS"
- ;;
-
- qcc)
diff --git a/patches/boost-build/1.70.0/boost-build-1.55.0-ppc-aix.patch b/patches/boost-build/1.70.0/boost-build-1.55.0-ppc-aix.patch
deleted file mode 100644
index d8b6a5a..0000000
--- a/patches/boost-build/1.70.0/boost-build-1.55.0-ppc-aix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-https://svn.boost.org/trac/boost/ticket/10122
-
---- a/engine/mem.h
-+++ b/engine/mem.h
-@@ -8,6 +8,8 @@
- #ifndef BJAM_MEM_H
- #define BJAM_MEM_H
-
-+#include "jam.h"
-+
- #ifdef OPT_BOEHM_GC
-
- /* Use Boehm GC memory allocator. */
diff --git a/patches/boost-build/1.71.0/boost-build-1.48.0-disable_python_rpath.patch b/patches/boost-build/1.71.0/boost-build-1.48.0-disable_python_rpath.patch
new file mode 100644
index 0000000..84734f7
--- /dev/null
+++ b/patches/boost-build/1.71.0/boost-build-1.48.0-disable_python_rpath.patch
@@ -0,0 +1,11 @@
+--- a/tools/python.jam
++++ b/tools/python.jam
+@@ -961,7 +961,7 @@
+ # linux).
+ : $(usage-requirements)
+ <testing.launcher>$(set-PYTHONPATH)
+- <library-path>$(libraries) <dll-path>$(dll-path) <library>python.lib
++ <library-path>$(libraries) <library>python.lib
+ ;
+ }
+
diff --git a/patches/boost-build/1.70.0/boost-build-1.62.0-sparc-no-default-flags.patch b/patches/boost-build/1.71.0/boost-build-1.62.0-sparc-no-default-flags.patch
index a3f450b..a3f450b 100644
--- a/patches/boost-build/1.70.0/boost-build-1.62.0-sparc-no-default-flags.patch
+++ b/patches/boost-build/1.71.0/boost-build-1.62.0-sparc-no-default-flags.patch
diff --git a/patches/boost-build/1.70.0/boost-build-1.66.0-add-none-feature-options.patch b/patches/boost-build/1.71.0/boost-build-1.66.0-add-none-feature-options.patch
index fd86c9e..fd86c9e 100644
--- a/patches/boost-build/1.70.0/boost-build-1.66.0-add-none-feature-options.patch
+++ b/patches/boost-build/1.71.0/boost-build-1.66.0-add-none-feature-options.patch
diff --git a/patches/boost-build/1.71.0/boost-build-1.71.0-respect-c_ld-flags.patch b/patches/boost-build/1.71.0/boost-build-1.71.0-respect-c_ld-flags.patch
new file mode 100644
index 0000000..f51abea
--- /dev/null
+++ b/patches/boost-build/1.71.0/boost-build-1.71.0-respect-c_ld-flags.patch
@@ -0,0 +1,9 @@
+--- a/engine/build.sh
++++ b/engine/build.sh
+@@ -439,5 +439,5 @@
+ if check_debug_build "$@" ; then B2_CXXFLAGS="${B2_CXXFLAGS_DEBUG}"
+ else B2_CXXFLAGS="${B2_CXXFLAGS_RELEASE} -DNDEBUG"
+ fi
+-echo_run ${B2_CXX} ${CXXFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
++echo_run ${B2_CXX} ${CPPFLAGS} ${CXXFLAGS} ${LDFLAGS} ${B2_CXXFLAGS} ${B2_SOURCES} -o b2
+ echo_run cp b2 bjam
diff --git a/patches/boost/1.71.0/boost-1.69.0-context-x32.patch b/patches/boost/1.71.0/boost-1.69.0-context-x32.patch
new file mode 100644
index 0000000..9ee3d54
--- /dev/null
+++ b/patches/boost/1.71.0/boost-1.69.0-context-x32.patch
@@ -0,0 +1,38 @@
+--- a/libs/context/src/asm/jump_i386_sysv_elf_gas.S
++++ b/libs/context/src/asm/jump_i386_sysv_elf_gas.S
+@@ -24,6 +24,10 @@
+ * *
+ ****************************************************************************************/
+
++#ifdef __x86_64__
++#include "jump_x86_64_sysv_elf_gas.S"
++#else
++
+ .file "jump_i386_sysv_elf_gas.S"
+ .text
+ .globl jump_fcontext
+@@ -81,3 +85,5 @@
+
+ /* Mark that we don't need executable stack. */
+ .section .note.GNU-stack,"",%progbits
++
++#endif
+--- a/libs/context/src/asm/make_i386_sysv_elf_gas.S
++++ b/libs/context/src/asm/make_i386_sysv_elf_gas.S
+@@ -24,6 +24,10 @@
+ * *
+ ****************************************************************************************/
+
++#ifdef __x86_64__
++#include "make_x86_64_sysv_elf_gas.S"
++#else
++
+ .file "make_i386_sysv_elf_gas.S"
+ .text
+ .globl make_fcontext
+@@ -105,3 +109,5 @@
+
+ /* Mark that we don't need executable stack. */
+ .section .note.GNU-stack,"",%progbits
++
++#endif