[mingw-boost] update to 1.53.0
sailer
sailer at fedoraproject.org
Sun Mar 3 10:28:44 UTC 2013
commit 99c8a3c3b51c727040fbf26adcf491e282079291
Author: Thomas Sailer <t.sailer at alumni.ethz.ch>
Date: Sun Mar 3 11:28:01 2013 +0100
update to 1.53.0
.gitignore | 1 +
boost-1.50.0-attribute.patch | 90 --------------------------------------
boost-1.50.0-signals-erase.patch | 23 ----------
boost-1.53.0-attribute.patch | 57 ++++++++++++++++++++++++
boost-1.53.0-context.patch | 66 ++++++++++++++++++++++++++++
mingw-boost.spec | 28 +++++-------
sources | 3 +-
7 files changed, 136 insertions(+), 132 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 974e001..f39d21b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ boost-1.41.0.cmake0.tar.bz2
/boost_1_47_0.tar.bz2
/boost_1_48_0.tar.bz2
/boost_1_50_0.tar.bz2
+/boost_1_53_0.tar.bz2
diff --git a/boost-1.53.0-attribute.patch b/boost-1.53.0-attribute.patch
new file mode 100644
index 0000000..e17f9e7
--- /dev/null
+++ b/boost-1.53.0-attribute.patch
@@ -0,0 +1,57 @@
+diff -urp boost_1_48_0~/boost/config/compiler/gcc.hpp boost_1_48_0/boost/config/compiler/gcc.hpp
+--- boost_1_48_0~/boost/config/compiler/gcc.hpp 2012-01-16 16:15:14.643239525 +0100
++++ boost_1_48_0/boost/config/compiler/gcc.hpp 2012-01-16 16:21:24.072247987 +0100
+@@ -120,13 +120,13 @@
+ // _WIN32 or one of its variant spellings. Note that Cygwin is a POSIX environment,
+ // so does not define _WIN32 or its variants.
+ # define BOOST_HAS_DECLSPEC
+-# define BOOST_SYMBOL_EXPORT __attribute__((dllexport))
+-# define BOOST_SYMBOL_IMPORT __attribute__((dllimport))
++# define BOOST_SYMBOL_EXPORT __attribute__((__dllexport__))
++# define BOOST_SYMBOL_IMPORT __attribute__((__dllimport__))
+ # else
+-# define BOOST_SYMBOL_EXPORT __attribute__((visibility("default")))
++# define BOOST_SYMBOL_EXPORT __attribute__((__visibility__("default")))
+ # define BOOST_SYMBOL_IMPORT
+ # endif
+-# define BOOST_SYMBOL_VISIBLE __attribute__((visibility("default")))
++# define BOOST_SYMBOL_VISIBLE __attribute__((__visibility__("default")))
+ #else
+ // config/platform/win32.hpp will define BOOST_SYMBOL_EXPORT, etc., unless already defined
+ # define BOOST_SYMBOL_EXPORT
+diff -urp boost_1_48_0~/boost/gil/gil_config.hpp boost_1_48_0/boost/gil/gil_config.hpp
+--- boost_1_48_0~/boost/gil/gil_config.hpp 2012-01-16 16:15:29.883239865 +0100
++++ boost_1_48_0/boost/gil/gil_config.hpp 2012-01-16 16:17:49.096243036 +0100
+@@ -32,7 +32,7 @@
+ #if defined(_MSC_VER)
+ # define GIL_FORCEINLINE __forceinline
+ #elif defined(__GNUC__) && __GNUC__ > 3
+-# define GIL_FORCEINLINE inline __attribute__ ((always_inline))
++# define GIL_FORCEINLINE inline __attribute__ ((__always_inline__))
+ #else
+ # define GIL_FORCEINLINE inline
+ #endif
+diff -urp boost_1_48_0~/boost/optional/optional.hpp boost_1_48_0/boost/optional/optional.hpp
+--- boost_1_48_0~/boost/optional/optional.hpp 2012-01-16 16:15:29.743239804 +0100
++++ boost_1_48_0/boost/optional/optional.hpp 2012-01-16 16:17:47.488242994 +0100
+@@ -127,7 +127,7 @@ class aligned_storage
+ union
+ // This works around GCC warnings about breaking strict aliasing rules when casting storage address to T*
+ #if defined(BOOST_OPTIONAL_DETAIL_USE_ATTRIBUTE_MAY_ALIAS)
+- __attribute__((may_alias))
++ __attribute__((__may_alias__))
+ #endif
+ dummy_u
+ {
+diff -up /home/ant/rpm/BUILD/boost_1_53_0/boost/random/detail/integer_log2.hpp\~ /home/ant/rpm/BUILD/boost_1_53_0/boost/random/detail/integer_log2.hpp
+--- boost_1_53_0/boost/random/detail/integer_log2.hpp~ 2013-01-25 18:06:07.000000000 +0100
++++ boost_1_53_0/boost/random/detail/integer_log2.hpp 2013-02-07 17:37:53.000000000 +0100
+@@ -27,7 +27,7 @@ namespace detail {
+ #elif defined(BOOST_MSVC)
+ #define BOOST_RANDOM_DETAIL_CONSTEXPR __forceinline
+ #elif defined(__GNUC__) && __GNUC__ >= 4
+-#define BOOST_RANDOM_DETAIL_CONSTEXPR inline __attribute__((const)) __attribute__((always_inline))
++#define BOOST_RANDOM_DETAIL_CONSTEXPR inline __attribute__((__const__)) __attribute__((__always_inline__))
+ #else
+ #define BOOST_RANDOM_DETAIL_CONSTEXPR inline
+ #endif
diff --git a/boost-1.53.0-context.patch b/boost-1.53.0-context.patch
new file mode 100644
index 0000000..2f80f07
--- /dev/null
+++ b/boost-1.53.0-context.patch
@@ -0,0 +1,66 @@
+--- boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S.orig 2013-02-11 14:03:46.631005713 -0600
++++ boost_1_53_0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S 2013-02-11 14:06:52.704815403 -0600
+@@ -78,7 +78,7 @@
+
+ # call align_stack, R3 contains address at 16 byte boundary after return
+ # == pointer to fcontext_t and address of context stack
+- rlwinm %r3, %r3, 0, 0, 27
++ clrrwi %r3, %r3, 4
+
+ stw %r0, 92(%r3) # save address of context stack (base) in fcontext_t
+ stw %r4, 96(%r3) # save context stack size in fcontext_t
+@@ -87,12 +87,10 @@
+ subi %r0, %r3, 64 # reserve 64 bytes (linkage + parameter area), R4 % 16 == 0
+ stw %r0, 76(%r3) # save address in R3 as stack pointer for context function
+
+- mflr %r0 # load LR
+ bl 1f # jump to label 1
+ 1:
+ mflr %r4 # load LR into R4
+ addi %r4, %r4, finish - 1b # compute abs address of label finish
+- mtlr %r0 # restore LR
+ stw %r4, 84(%r3) # save address of finish as return address for context function
+ # entered after context function returns
+
+@@ -108,4 +106,5 @@
+
+ li %r3, 0 # exit code is zero
+ bl _exit at plt # exit application
++ .long 0 # We should never get here, so SIGILL if we do
+ .size make_fcontext, .-make_fcontext
+
+--- boost_1_53_0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S.orig 2013-02-11 14:03:43.726849715 -0600
++++ boost_1_53_0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S 2013-02-11 14:22:48.202839078 -0600
+@@ -99,21 +99,19 @@
+
+ # call align_stack, R3 contains address at 16 byte boundary after return
+ # == pointer to fcontext_t and address of context stack
+- rlwinm %r3, %r3, 0, 0, 59
++ clrrdi %r3, %r3, 4
+
+ std %r0, 184(%r3) # save address of context stack (base) in fcontext_t
+ std %r4, 192(%r3) # save context stack size in fcontext_t
+ std %r5, 176(%r3) # save address of context function in fcontext_t
+
+- subf %r0, %r3, 64 # 64 bytes on stack for parameter area (== 8 registers)
++ subi %r0, %r3, 64 # 64 bytes on stack for parameter area (== 8 registers)
+ std %r0, 152(%r3) # save the stack base
+
+- mflr %r0 # load LR
+ bl 1f # jump to label 1
+ 1:
+ mflr %r4 # load LR into R4
+ addi %r4, %r4, finish - 1b # compute abs address of label finish
+- mtlr %r0 # restore LR
+ std %r4, 168(%r3) # save address of finish as return address for context function
+ # entered after context function returns
+
+@@ -128,5 +126,7 @@
+ stwu %r1, -32(%r1) # allocate stack space, SP % 16 == 0
+
+ li %r3, 0 # set return value to zero
+- bl _exit at plt # exit application
++ bl _exit # exit application
++ nop # nop is required by the linker
++ .long 0 # We should never get here, so SIGILL if we do
+ .size .make_fcontext, .-.make_fcontext
diff --git a/mingw-boost.spec b/mingw-boost.spec
index 8fb6836..1456e3d 100644
--- a/mingw-boost.spec
+++ b/mingw-boost.spec
@@ -2,11 +2,9 @@
%global name1 boost
Name: mingw-%{name1}
-Version: 1.50.0
-%global version_enc 1_50_0
-%global dllboostver 1_50
-%global dllgccver gcc47
-Release: 2%{?dist}
+Version: 1.53.0
+%global version_enc 1_53_0
+Release: 1%{?dist}
Summary: MinGW Windows port of Boost C++ Libraries
%global toplev_dirname %{name1}_%{version_enc}
@@ -16,10 +14,6 @@ Group: Development/Libraries
URL: http://www.boost.org
Source0: http://downloads.sourceforge.net/%{name1}/%{toplev_dirname}.tar.bz2
-# The patch may break c++03, and there is therefore no plan yet to include
-# it upstream: https://svn.boost.org/trac/boost/ticket/4999
-Patch2: boost-1.50.0-signals-erase.patch
-
# https://svn.boost.org/trac/boost/ticket/6150
Patch4: boost-1.50.0-fix-non-utf8-files.patch
@@ -34,24 +28,22 @@ Patch7: boost-1.50.0-foreach.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=781859
# The following tickets have still to be fixed by upstream.
-# https://svn.boost.org/trac/boost/ticket/6406 fixed, but only in Boost-1.51.0
# https://svn.boost.org/trac/boost/ticket/6408
# https://svn.boost.org/trac/boost/ticket/6410
# https://svn.boost.org/trac/boost/ticket/6413
-# https://svn.boost.org/trac/boost/ticket/6415
-Patch9: boost-1.50.0-attribute.patch
+Patch9: boost-1.53.0-attribute.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=783660
# https://svn.boost.org/trac/boost/ticket/6459 fixed
Patch10: boost-1.50.0-long-double-1.patch
-# https://bugzilla.redhat.com/show_bug.cgi?id=784654
-Patch12: boost-1.50.0-polygon.patch
-
# https://bugzilla.redhat.com/show_bug.cgi?id=828856
# https://bugzilla.redhat.com/show_bug.cgi?id=828857
Patch15: boost-1.50.0-pool.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=909888
+Patch16: boost-1.53.0-context.patch
+
Patch1000: boost-mingw.patch
BuildArch: noarch
@@ -142,14 +134,13 @@ mv %{toplev_dirname} win32
pushd win32
# Fixes
-%patch2 -p1
%patch4 -p1
%patch5 -p1
%patch7 -p2
%patch9 -p1
%patch10 -p1
-%patch12 -p3
%patch15 -p0
+%patch16 -p1
%patch1000 -p0 -b .mingw
popd
@@ -516,6 +507,9 @@ mv $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll $RPM_BUILD_ROOT%{mingw64_bindir}
%{mingw64_libdir}/libboost_test_exec_monitor.a
%changelog
+* Sun Mar 3 2013 Thomas Sailer <t.sailer at alumni.ethz.ch> - 1.53.0-1
+- update to 1.53.0
+
* Sun Jan 27 2013 Erik van Pienbroek <epienbro at fedoraproject.org> - 1.50.0-2
- Rebuild against mingw-gcc 4.8 (win64 uses SEH exceptions now)
diff --git a/sources b/sources
index d3159dd..faa245c 100644
--- a/sources
+++ b/sources
@@ -1,2 +1 @@
-d1e9a7a7f532bb031a3c175d86688d95 boost_1_48_0.tar.bz2
-52dd00be775e689f55a987baebccc462 boost_1_50_0.tar.bz2
+a00d22605d5dbcfb4c9936a9b35bc4c2 boost_1_53_0.tar.bz2
More information about the scm-commits
mailing list