From 3b8f6f0cf5620766b332d88ea591c8b4b435b3a7 Mon Sep 17 00:00:00 2001 From: Thomas Sailer Date: Mar 01 2017 15:53:33 +0000 Subject: update to 1.63.0 --- diff --git a/.gitignore b/.gitignore index 167129f..4494de5 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ boost-1.41.0.cmake0.tar.bz2 /boost_1_58_0.tar.bz2 /boost_1_59_0.tar.bz2 /boost_1_60_0.tar.bz2 +/boost_1_63_0.tar.bz2 diff --git a/boost-1.55.0-python-test-PyImport_AppendInittab.patch b/boost-1.55.0-python-test-PyImport_AppendInittab.patch deleted file mode 100644 index 1d2ee5c..0000000 --- a/boost-1.55.0-python-test-PyImport_AppendInittab.patch +++ /dev/null @@ -1,98 +0,0 @@ -diff -up boost_1_55_0/libs/python/test/exec.cpp\~ boost_1_55_0/libs/python/test/exec.cpp ---- boost_1_55_0/libs/python/test/exec.cpp~ 2010-07-05 00:38:38.000000000 +0200 -+++ boost_1_55_0/libs/python/test/exec.cpp 2015-01-09 21:31:12.903218280 +0100 -@@ -56,6 +56,20 @@ void eval_test() - BOOST_TEST(value == "ABCDEFG"); - } - -+struct PyCtx -+{ -+ PyCtx() { -+ Py_Initialize(); -+ } -+ -+ ~PyCtx() { -+ // N.B. certain problems may arise when Py_Finalize is called when -+ // using Boost.Python. However in this test suite it all seems to -+ // work fine. -+ Py_Finalize(); -+ } -+}; -+ - void exec_test() - { - // Register the module with the interpreter -@@ -68,6 +82,8 @@ void exec_test() - ) == -1) - throw std::runtime_error("Failed to add embedded_hello to the interpreter's " - "builtin modules"); -+ -+ PyCtx ctx; - // Retrieve the main module - python::object main = python::import("__main__"); - -@@ -148,41 +164,43 @@ void check_pyerr(bool pyerr_expected=fal - } - } - -+template -+bool -+run_and_handle_exception(Cb cb, bool pyerr_expected = false) -+{ -+ PyCtx ctx; -+ if (python::handle_exception(cb)) { -+ check_pyerr(pyerr_expected); -+ return true; -+ } else { -+ return false; -+ } -+} -+ - int main(int argc, char **argv) - { - BOOST_TEST(argc == 2 || argc == 3); - std::string script = argv[1]; -- // Initialize the interpreter -- Py_Initialize(); - -- if (python::handle_exception(eval_test)) { -- check_pyerr(); -- } -- else if(python::handle_exception(exec_test)) { -- check_pyerr(); -- } -- else if (python::handle_exception(boost::bind(exec_file_test, script))) { -+ // N.B. exec_test mustn't be called through run_and_handle_exception -+ // as it needs to handles the python context by itself. -+ if (run_and_handle_exception(eval_test) -+ || python::handle_exception(exec_test)) - check_pyerr(); -- } -- -- if (python::handle_exception(exec_test_error)) -- { -- check_pyerr(/*pyerr_expected*/ true); -- } - else -- { -+ run_and_handle_exception(boost::bind(exec_file_test, script)); -+ -+ if (!run_and_handle_exception(exec_test_error, true)) - BOOST_ERROR("Python exception expected, but not seen."); -- } - - if (argc > 2) { -+ PyCtx ctx; - // The main purpose is to test compilation. Since this test generates - // a file and I (rwgk) am uncertain about the side-effects, run it only - // if explicitly requested. - exercise_embedding_html(); - } - -- // Boost.Python doesn't support Py_Finalize yet. -- // Py_Finalize(); - return boost::report_errors(); - } - - -Diff finished. Fri Jan 9 21:31:13 2015 diff --git a/boost-1.57.0-spirit-unused_typedef.patch b/boost-1.57.0-spirit-unused_typedef.patch deleted file mode 100644 index 2829629..0000000 --- a/boost-1.57.0-spirit-unused_typedef.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -up boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp\~ boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp ---- boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp~ 2014-10-13 12:21:40.000000000 +0200 -+++ boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp 2015-01-20 13:25:50.069710766 +0100 -@@ -282,12 +282,12 @@ struct grammar_definition - #if !defined(BOOST_SPIRIT_SINGLE_GRAMMAR_INSTANCE) - typedef impl::grammar_helper_base helper_base_t; - typedef grammar_helper_list helper_list_t; -- typedef typename helper_list_t::vector_t::reverse_iterator iterator_t; - - helper_list_t& helpers = - grammartract_helper_list::do_(self); - - # if defined(BOOST_INTEL_CXX_VERSION) -+ typedef typename helper_list_t::vector_t::reverse_iterator iterator_t; - for (iterator_t i = helpers.rbegin(); i != helpers.rend(); ++i) - (*i)->undefine(self); - # else - -Diff finished. Tue Jan 20 13:25:53 2015 diff --git a/boost-1.60.0-no-rpath.patch b/boost-1.60.0-no-rpath.patch new file mode 100644 index 0000000..eed65c2 --- /dev/null +++ b/boost-1.60.0-no-rpath.patch @@ -0,0 +1,21 @@ +diff -up tools/build/src/tools/gcc.jam.rpath tools/build/src/tools/gcc.jam +--- tools/build/src/tools/gcc.jam.rpath 2016-05-27 13:30:01.092192721 -0500 ++++ tools/build/src/tools/gcc.jam 2016-05-27 13:30:46.686987585 -0500 +@@ -952,7 +952,7 @@ rule link ( targets * : sources * : prop + + actions link bind LIBRARIES + { +- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) ++ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) + } + + +@@ -1018,7 +1018,7 @@ rule link.dll ( targets * : sources * : + # Differs from 'link' above only by -shared. + actions link.dll bind LIBRARIES + { +- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) ++ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) + } + + rule setup-threading ( targets * : sources * : properties * ) diff --git a/boost-1.63.0-dual-python-build.patch b/boost-1.63.0-dual-python-build.patch new file mode 100644 index 0000000..d20b262 --- /dev/null +++ b/boost-1.63.0-dual-python-build.patch @@ -0,0 +1,46 @@ +--- boost_1_63_0/tools/build/src/tools/python.jam.orig 2017-02-16 18:51:14.005483084 +0000 ++++ boost_1_63_0/tools/build/src/tools/python.jam 2017-02-16 18:51:24.912497496 +0000 +@@ -926,27 +926,27 @@ + # for a particular target OS as the default. This makes it so that we can + # select a python interpreter with only knowledge of the target OS. And hence + # can configure different Pythons based on the target OS only. +- local toolset-requirements = [ toolset.requirements ] ; +- local toolset-target-os-requirements +- = [ property.evaluate-conditionals-in-context +- [ $(toolset-requirements).raw ] : $(target-os) ] ; +- if ! in $(toolset-target-os-requirements:G) +- { +- toolset.add-requirements $(target-os):$(version:E=default) ; +- } ++ #local toolset-requirements = [ toolset.requirements ] ; ++ #local toolset-target-os-requirements ++ # = [ property.evaluate-conditionals-in-context ++ # [ $(toolset-requirements).raw ] : $(target-os) ] ; ++ #if ! in $(toolset-target-os-requirements:G) ++ #{ ++ # toolset.add-requirements $(target-os):$(version:E=default) ; ++ #} + + # We also set a default requirement that assigns the first python configured + # for a particular target OS as the default. This makes it so that we can + # select a python interpreter with only knowledge of the target OS. And hence + # can configure different Pythons based on the target OS only. +- local toolset-requirements = [ toolset.requirements ] ; +- local toolset-target-os-requirements +- = [ property.evaluate-conditionals-in-context +- [ $(toolset-requirements).raw ] : $(target-os) ] ; +- if ! in $(toolset-target-os-requirements:G) +- { +- toolset.add-requirements $(target-os):$(version:E=default) ; +- } ++ #local toolset-requirements = [ toolset.requirements ] ; ++ #local toolset-target-os-requirements ++ # = [ property.evaluate-conditionals-in-context ++ # [ $(toolset-requirements).raw ] : $(target-os) ] ; ++ #if ! in $(toolset-target-os-requirements:G) ++ #{ ++ # toolset.add-requirements $(target-os):$(version:E=default) ; ++ #} + + # Register the right suffix for extensions. + register-extension-suffix $(extension-suffix) : $(target-requirements) ; diff --git a/boost-mingw.patch b/boost-mingw.patch index 36853a3..4fd98a4 100644 --- a/boost-mingw.patch +++ b/boost-mingw.patch @@ -1,6 +1,6 @@ --- libs/thread/build/Jamfile.v2.mingw 2012-12-04 15:05:00.027057650 +0100 +++ libs/thread/build/Jamfile.v2 2012-12-04 15:05:22.488292220 +0100 -@@ -142,7 +142,8 @@ +@@ -144,7 +144,8 @@ local rule default_threadapi ( ) { local api = pthread ; @@ -12,7 +12,7 @@ --- libs/context/build/Jamfile.v2.orig 2013-03-03 13:39:59.684868916 +0100 +++ libs/context/build/Jamfile.v2 2013-03-03 15:09:09.893232829 +0100 -@@ -45,10 +45,11 @@ +@@ -47,10 +47,11 @@ local rule default_binary_format ( ) { local tmp = elf ; @@ -28,7 +28,7 @@ return $(tmp) ; } -@@ -65,10 +66,11 @@ +@@ -67,10 +68,11 @@ local rule default_abi ( ) { local tmp = sysv ; @@ -44,39 +44,3 @@ return $(tmp) ; } ---- libs/context/src/asm/jump_i386_ms_pe_gas.asm.mingw 2015-09-02 16:03:06.406321632 +0200 -+++ libs/context/src/asm/jump_i386_ms_pe_gas.asm 2015-09-02 16:04:17.632915315 +0200 -@@ -138,3 +138,6 @@ - - /* indirect jump to context */ - jmp *%edx -+ -+.section .drectve -+.ascii " -export:\"jump_fcontext\"" ---- libs/context/src/asm/jump_x86_64_ms_pe_gas.asm.mingw 2015-09-02 16:03:13.495380721 +0200 -+++ libs/context/src/asm/jump_x86_64_ms_pe_gas.asm 2015-09-02 16:04:12.488872439 +0200 -@@ -223,3 +223,6 @@ - /* indirect jump to context */ - jmp *%r10 - .seh_endproc -+ -+.section .drectve -+.ascii " -export:\"jump_fcontext\"" ---- libs/context/src/asm/make_i386_ms_pe_gas.asm.mingw 2015-09-02 16:03:22.486455662 +0200 -+++ libs/context/src/asm/make_i386_ms_pe_gas.asm 2015-09-02 16:04:32.409038476 +0200 -@@ -122,3 +122,6 @@ - hlt - - .def __exit; .scl 2; .type 32; .endef /* standard C library function */ -+ -+.section .drectve -+.ascii " -export:\"make_fcontext\"" ---- libs/context/src/asm/make_x86_64_ms_pe_gas.asm.mingw 2015-09-02 16:03:30.631523552 +0200 -+++ libs/context/src/asm/make_x86_64_ms_pe_gas.asm 2015-09-02 16:04:27.433997008 +0200 -@@ -149,3 +149,6 @@ - .seh_endproc - - .def _exit; .scl 2; .type 32; .endef /* standard C library function */ -+ -+.section .drectve -+.ascii " -export:\"make_fcontext\"" diff --git a/mingw-boost.spec b/mingw-boost.spec index dbb0273..423be32 100644 --- a/mingw-boost.spec +++ b/mingw-boost.spec @@ -2,9 +2,9 @@ %global name1 boost Name: mingw-%{name1} -Version: 1.60.0 -%global version_enc 1_60_0 -Release: 2%{?dist} +Version: 1.63.0 +%global version_enc 1_63_0 +Release: 1%{?dist} Summary: MinGW Windows port of Boost C++ Libraries %global toplev_dirname %{name1}_%{version_enc} @@ -29,16 +29,12 @@ Patch15: boost-1.58.0-pool.patch # https://svn.boost.org/trac/boost/ticket/5637 Patch25: boost-1.57.0-mpl-print.patch -# https://svn.boost.org/trac/boost/ticket/8870 -Patch36: boost-1.57.0-spirit-unused_typedef.patch - # https://svn.boost.org/trac/boost/ticket/9038 Patch51: boost-1.58.0-pool-test_linking.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1102667 Patch61: boost-1.57.0-python-libpython_dep.patch Patch62: boost-1.57.0-python-abi_letters.patch -Patch63: boost-1.55.0-python-test-PyImport_AppendInittab.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1190039 Patch65: boost-1.57.0-build-optflags.patch @@ -46,6 +42,12 @@ Patch65: boost-1.57.0-build-optflags.patch # Prevent gcc.jam from setting -m32 or -m64. Patch68: boost-1.58.0-address-model.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1318383 +Patch82: boost-1.60.0-no-rpath.patch + +# https://github.com/boostorg/build/issues/163 +Patch83: boost-1.63.0-dual-python-build.patch + # https://svn.boost.org/trac/boost/ticket/7262 Patch1000: boost-mingw.patch @@ -145,13 +147,13 @@ pushd win32 %patch5 -p1 %patch15 -p0 %patch25 -p1 -%patch36 -p1 %patch51 -p1 %patch61 -p1 %patch62 -p1 -%patch63 -p1 %patch65 -p1 %patch68 -p1 +%patch82 -p0 +%patch83 -p1 %patch1000 -p0 -b .mingw %patch1001 -p0 -b .interlocked popd @@ -585,6 +587,9 @@ mv $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll $RPM_BUILD_ROOT%{mingw64_bindir} %{mingw64_libdir}/libboost_test_exec_monitor.a %changelog +* Wed Mar 01 2017 Thomas Sailer - 1.63.0-1 +- update to 1.63.0 + * Fri Feb 10 2017 Fedora Release Engineering - 1.60.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild diff --git a/sources b/sources index b131394..fae53ce 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -65a840e1a0b13a558ff19eeb2c4f0cbe boost_1_60_0.tar.bz2 +SHA512 (boost_1_63_0.tar.bz2) = c915c5f5778dee49b8e9d0a40f37f90f56fb1fdb1d8ce92d97bf48bc7bc462212487badfe4bbe30b06196d1149cfb221da12ac54e97499b0d4cb6466813bb4ad