diff --git a/cpp/BoostParts/CMakeLists.txt b/cpp/BoostParts/CMakeLists.txt index 2cdb7253..0b1da46e 100644 --- a/cpp/BoostParts/CMakeLists.txt +++ b/cpp/BoostParts/CMakeLists.txt @@ -17,9 +17,10 @@ # The interesting parts of Boost have been extracted using # the BCP tool: -# http://www.boost.org/doc/libs/1_52_0/tools/bcp/doc/html/index.html +# http://www.boost.org/doc/libs/1_54_0/tools/bcp/doc/html/index.html # -# bcp call: bcp boost/utility.hpp boost/python.hpp boost/bind.hpp boost/lambda/lambda.hpp boost/exception/all.hpp boost/tuple/tuple_io.hpp boost/tuple/tuple_comparison.hpp boost/regex.hpp boost/foreach.hpp boost/smart_ptr.hpp boost/algorithm/string_regex.hpp boost/thread.hpp boost/unordered_map.hpp boost/unordered_set.hpp boost/format.hpp boost/ptr_container/ptr_container.hpp boost/filesystem.hpp boost/filesystem/fstream.hpp boost/utility.hpp boost/algorithm/cxx11/any_of.hpp atomic lockfree assign ../BoostParts +# See the top-level update_boost.sh script for details on how bcp is called to +# generate BoostParts. cmake_minimum_required( VERSION 2.8 ) diff --git a/update_boost.sh b/update_boost.sh new file mode 100755 index 00000000..5c59bcae --- /dev/null +++ b/update_boost.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash + +# This script is used to update cpp/BoostParts to the latest boost version +# Give it the full path to the boost_1_XX_X folder + +# Exit if error +set -e + +if [ -z "$1" ]; then + echo "Usage: $0 /path/to/boost_1_XX_X" + exit 0 +fi + +pushd $1 + +./bootstrap.sh +b2 tools/bcp + +boost_part_dir=`mktemp -d -t boost_parts.XXXXXX` + +dist/bin/bcp boost/utility.hpp boost/python.hpp boost/bind.hpp boost/lambda/lambda.hpp boost/exception/all.hpp boost/tuple/tuple_io.hpp boost/tuple/tuple_comparison.hpp boost/regex.hpp boost/foreach.hpp boost/smart_ptr.hpp boost/algorithm/string_regex.hpp boost/thread.hpp boost/unordered_map.hpp boost/unordered_set.hpp boost/format.hpp boost/ptr_container/ptr_container.hpp boost/filesystem.hpp boost/filesystem/fstream.hpp boost/utility.hpp boost/algorithm/cxx11/any_of.hpp atomic lockfree assign $boost_part_dir + +pushd $boost_part_dir + +# DON'T exit if error +set +e + +find libs \( -name assign -o -name mpi -o -name config -o -name lockfree \) -exec rm -rf '{}' \; +find libs \( -name doc -o -name test -o -name examples -o -name build \) -exec rm -rf '{}' \; +find libs -not \( -name "*.hpp" -o -name "*.cpp" -o -name "*.ipp" -o -name "*.inl" \) -type f -delete + +# Exit if error +set -e + +popd +popd + +rm -rf cpp/BoostParts/libs +rm -rf cpp/BoostParts/boost + +cp -R $boost_part_dir/libs cpp/BoostParts/libs +cp -R $boost_part_dir/boost cpp/BoostParts/boost + +rm -rf $boost_part_dir