summaryrefslogtreecommitdiff
path: root/source/l/boost
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2013-11-04 17:08:47 +0000
committerEric Hameleers <alien@slackware.com>2018-05-31 22:57:36 +0200
commit76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (patch)
tree9b98e6e193c7870cb27ac861394c1c4592850922 /source/l/boost
parent9664bee729d487bcc0a0bc35859f8e13d5421c75 (diff)
downloadcurrent-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.gz
Slackware 14.1slackware-14.1
Mon Nov 4 17:08:47 UTC 2013 Slackware 14.1 x86_64 stable is released! It's been another interesting release cycle here at Slackware bringing new features like support for UEFI machines, updated compilers and development tools, the switch from MySQL to MariaDB, and many more improvements throughout the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to 'source/l/boost')
-rwxr-xr-xsource/l/boost/boost.SlackBuild22
-rw-r--r--source/l/boost/boost.glibc.long.long.diff22
-rw-r--r--source/l/boost/changeset_82498.diff116
3 files changed, 156 insertions, 4 deletions
diff --git a/source/l/boost/boost.SlackBuild b/source/l/boost/boost.SlackBuild
index 006c1897..aa859516 100755
--- a/source/l/boost/boost.SlackBuild
+++ b/source/l/boost/boost.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/sh
# Copyright 2007, 2008, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2007-2008, 2012 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2007-2008, 2013 Heinz Wiesinger, Amsterdam, NL
+# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -31,7 +31,6 @@ PKGNAM=boost
VERSION=${VERSION:-$(echo $PKGNAM_*.tar.?z* | rev | cut -f 3- -d . | rev | cut -f 2- -d _)}
BUILD=${BUILD:-3}
-ICU=${ICU:-no}
PKG_VERSION=$(echo $VERSION | tr _ .) # Leave this alone
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -75,6 +74,13 @@ rm -rf boost_$VERSION
tar xvf $CWD/boost_$VERSION.tar.?z* || exit 1
cd boost_$VERSION || exit 1
+# Revert changeset 82498, which breaks OQGRAPH support in MariaDB:
+zcat $CWD/changeset_82498.diff.gz | patch -R -p2 --verbose || exit 1
+
+# glibc as of 2.17 no longer defines __GLIBC_HAVE_LONG_LONG (it is assumed
+# to support it), so don't use that to detect long long support:
+zcat $CWD/boost.glibc.long.long.diff.gz | patch -p0 --verbose || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -87,6 +93,10 @@ find . \
#
# (none currently for this $VERSION)
+# Avoid C++11 for now as it introduces potentially different behaviour.
+# Let's give applications some more time to adjust to this.
+EXTRA_CXXFLAGS="-std=gnu++98"
+
# This is the python we build against:
PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]')
PYTHON_FLAGS="-sPYTHON_ROOT=/usr -sPYTHON_VERSION=$PYTHON_VERSION"
@@ -96,7 +106,7 @@ cd tools/build/v2/engine
CFLAGS="$SLKCFLAGS -fno-strict-aliasing" CC=gcc ./build.sh cc
cd -
-BJAM=$(find tools/build/v2/engine/ -name bjam -a -type f)
+BJAM=$(find tools/build/v2/engine/ -name b2 -a -type f)
# Create build subdirectory
mkdir obj
@@ -122,6 +132,8 @@ $BJAM \
link=shared \
threading=multi \
runtime-link=shared \
+ cflags="$SLKCFLAGS" \
+ cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
$PYTHON_FLAGS \
stage
@@ -142,6 +154,8 @@ $BJAM \
link=shared \
threading=multi \
runtime-link=shared \
+ cflags="$SLKCFLAGS" \
+ cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
$PYTHON_FLAGS \
install
diff --git a/source/l/boost/boost.glibc.long.long.diff b/source/l/boost/boost.glibc.long.long.diff
new file mode 100644
index 00000000..3c425f32
--- /dev/null
+++ b/source/l/boost/boost.glibc.long.long.diff
@@ -0,0 +1,22 @@
+diff -up boost/cstdint.hpp\~ boost/cstdint.hpp
+--- boost/cstdint.hpp~ 2013-03-07 01:46:19.000000000 +0100
++++ boost/cstdint.hpp 2013-06-25 21:56:25.930276225 +0200
+@@ -41,7 +41,15 @@
+ // so we disable use of stdint.h when GLIBC does not define __GLIBC_HAVE_LONG_LONG.
+ // See https://svn.boost.org/trac/boost/ticket/3548 and http://sources.redhat.com/bugzilla/show_bug.cgi?id=10990
+ //
+-#if defined(BOOST_HAS_STDINT_H) && (!defined(__GLIBC__) || defined(__GLIBC_HAVE_LONG_LONG))
++// This define has been dropped altogether in GLIBC 2.17. As of then,
++// support for long long is part of baseline requirements, and
++// [u]int64_t is always defined. See here:
++// http://sourceware.org/ml/libc-alpha/2013-01/msg00440.html
++//
++#if defined(BOOST_HAS_STDINT_H) \
++ && (!defined(__GLIBC__) \
++ || defined(__GLIBC_HAVE_LONG_LONG) \
++ || (defined __GLIBC_PREREQ && __GLIBC_PREREQ(2,17)))
+
+ // The following #include is an implementation artifact; not part of interface.
+ # ifdef __hpux
+
+Diff finished. Tue Jun 25 21:56:32 2013
diff --git a/source/l/boost/changeset_82498.diff b/source/l/boost/changeset_82498.diff
new file mode 100644
index 00000000..6b7a9a70
--- /dev/null
+++ b/source/l/boost/changeset_82498.diff
@@ -0,0 +1,116 @@
+Index: /trunk/boost/graph/named_graph.hpp
+===================================================================
+--- /trunk/boost/graph/named_graph.hpp (revision 81772)
++++ /trunk/boost/graph/named_graph.hpp (revision 82498)
+@@ -12,4 +12,5 @@
+
+ #include <boost/config.hpp>
++#include <boost/static_assert.hpp>
+ #include <boost/functional/hash.hpp>
+ #include <boost/graph/graph_traits.hpp>
+@@ -20,7 +21,9 @@
+ #include <boost/optional.hpp>
+ #include <boost/pending/property.hpp> // for boost::lookup_one_property
++#include <boost/pending/container_traits.hpp>
+ #include <boost/throw_exception.hpp>
+ #include <boost/tuple/tuple.hpp> // for boost::make_tuple
+ #include <boost/type_traits/is_same.hpp>
++#include <boost/type_traits/is_base_of.hpp>
+ #include <boost/type_traits/remove_cv.hpp>
+ #include <boost/type_traits/remove_reference.hpp>
+@@ -254,5 +257,6 @@
+ /// Notify the named_graph that we are removing the given
+ /// vertex. The name of the vertex will be removed from the mapping.
+- void removing_vertex(Vertex vertex);
++ template <typename VertexIterStability>
++ void removing_vertex(Vertex vertex, VertexIterStability);
+
+ /// Notify the named_graph that we are clearing the graph.
+@@ -309,6 +313,8 @@
+
+ template<BGL_NAMED_GRAPH_PARAMS>
+-inline void BGL_NAMED_GRAPH::removing_vertex(Vertex vertex)
+-{
++template<typename VertexIterStability>
++inline void BGL_NAMED_GRAPH::removing_vertex(Vertex vertex, VertexIterStability)
++{
++ BOOST_STATIC_ASSERT_MSG ((boost::is_base_of<boost::graph_detail::stable_tag, VertexIterStability>::value), "Named graphs cannot use vecS as vertex container and remove vertices; the lack of vertex descriptor stability (which iterator stability is a proxy for) means that the name -> vertex mapping would need to be completely rebuilt after each deletion. See https://svn.boost.org/trac/boost/ticket/7863 for more information and a test case.");
+ typedef typename BGL_NAMED_GRAPH::vertex_name_type vertex_name_type;
+ const vertex_name_type& vertex_name = extract_name(derived()[vertex]);
+@@ -487,5 +493,6 @@
+ /// Notify the named_graph that we are removing the given
+ /// vertex. This is a no-op.
+- void removing_vertex(Vertex) { }
++ template <typename VertexIterStability>
++ void removing_vertex(Vertex, VertexIterStability) { }
+
+ /// Notify the named_graph that we are clearing the graph. This is a
+@@ -518,5 +525,6 @@
+ /// Notify the named_graph that we are removing the given
+ /// vertex. This is a no-op.
+- void removing_vertex(Vertex) { }
++ template <typename VertexIterStability>
++ void removing_vertex(Vertex, VertexIterStability) { }
+
+ /// Notify the named_graph that we are clearing the graph. This is a
+Index: /trunk/boost/graph/detail/adjacency_list.hpp
+===================================================================
+--- /trunk/boost/graph/detail/adjacency_list.hpp (revision 82052)
++++ /trunk/boost/graph/detail/adjacency_list.hpp (revision 82498)
+@@ -18,4 +18,5 @@
+ #include <boost/operators.hpp>
+ #include <boost/property_map/property_map.hpp>
++#include <boost/pending/container_traits.hpp>
+ #include <boost/range/irange.hpp>
+ #include <boost/graph/graph_traits.hpp>
+@@ -1904,5 +1905,5 @@
+ typedef typename Config::stored_vertex stored_vertex;
+ Derived& g = static_cast<Derived&>(g_);
+- g.removing_vertex(u);
++ g.removing_vertex(u, boost::graph_detail::iterator_stability(g_.m_vertices));
+ stored_vertex* su = (stored_vertex*)u;
+ g.m_vertices.erase(su->m_position);
+@@ -2204,5 +2205,5 @@
+ typedef typename Config::directed_category Cat;
+ Graph& g = static_cast<Graph&>(g_);
+- g.removing_vertex(v);
++ g.removing_vertex(v, boost::graph_detail::iterator_stability(g_.m_vertices));
+ detail::remove_vertex_dispatch(g, v, Cat());
+ }
+Index: /trunk/boost/graph/distributed/named_graph.hpp
+===================================================================
+--- /trunk/boost/graph/distributed/named_graph.hpp (revision 67706)
++++ /trunk/boost/graph/distributed/named_graph.hpp (revision 82498)
+@@ -268,5 +268,6 @@
+ /// Notify the named_graph that we are removing the given
+ /// vertex. This is a no-op.
+- void removing_vertex(Vertex) { }
++ template <typename VertexIterStability>
++ void removing_vertex(Vertex, VertexIterStability) { }
+
+ /// Notify the named_graph that we are clearing the graph
+@@ -1212,5 +1213,6 @@
+ /// Notify the named_graph that we are removing the given
+ /// vertex. This is a no-op.
+- void removing_vertex(Vertex) { }
++ template <typename VertexIterStability>
++ void removing_vertex(Vertex, VertexIterStability) { }
+
+ /// Notify the named_graph that we are clearing the graph
+Index: /trunk/boost/graph/distributed/adjacency_list.hpp
+===================================================================
+--- /trunk/boost/graph/distributed/adjacency_list.hpp (revision 77549)
++++ /trunk/boost/graph/distributed/adjacency_list.hpp (revision 82498)
+@@ -38,4 +38,5 @@
+ #include <boost/graph/distributed/selector.hpp>
+ #include <boost/graph/parallel/process_group.hpp>
++#include <boost/pending/container_traits.hpp>
+
+ // Callbacks
+@@ -3428,5 +3429,5 @@
+ BOOST_ASSERT(u.owner == g.processor());
+ static_cast<named_graph_mixin&>(static_cast<graph_type&>(g))
+- .removing_vertex(u);
++ .removing_vertex(u, boost::graph_detail::iterator_stability(g.base().m_vertices));
+ g.distribution().clear();
+ remove_vertex(u.local, g.base());