commit:     027516d3af563328344e22b0447960081ad16f4f
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 16 21:30:27 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Sep 16 21:30:27 2019 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=027516d3

Bump boost to v1.71.0

Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 gkbuilds/boost-build.gkbuild                       | 30 ++++++------
 .../boost-build-1.50.0-respect-c_ld-flags.patch    | 53 ----------------------
 .../1.70.0/boost-build-1.55.0-ppc-aix.patch        | 13 ------
 .../boost-build-1.48.0-disable_python_rpath.patch  | 11 +++++
 ...boost-build-1.62.0-sparc-no-default-flags.patch |  0
 ...ost-build-1.66.0-add-none-feature-options.patch |  0
 .../boost-build-1.71.0-respect-c_ld-flags.patch    |  9 ++++
 .../boost/1.71.0/boost-1.69.0-context-x32.patch    | 38 ++++++++++++++++
 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
similarity index 100%
rename from 
patches/boost-build/1.70.0/boost-build-1.62.0-sparc-no-default-flags.patch
rename to 
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
similarity index 100%
rename from 
patches/boost-build/1.70.0/boost-build-1.66.0-add-none-feature-options.patch
rename to 
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

Reply via email to