Skip to content

Commit

Permalink
Bump minimal Boost version to 1.55.0
Browse files Browse the repository at this point in the history
  • Loading branch information
K-ballo committed Jul 17, 2017
1 parent 944eb27 commit 28fc70f
Show file tree
Hide file tree
Showing 33 changed files with 13 additions and 5,879 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Expand Up @@ -1533,7 +1533,7 @@ endif()
if(HPX_WITH_GENERIC_CONTEXT_COROUTINES)
# Check if we can use generic coroutine contexts without any problems
if(NOT Boost_CONTEXT_FOUND)
hpx_error("The usage of Boost.Context was selected but Boost.Context was not found (Version 1.51 or higher is required).")
hpx_error("The usage of Boost.Context was selected but Boost.Context was not found.")
endif()
if("${HPX_PLATFORM_UC}" STREQUAL "BLUEGENEQ")
if(Boost_VERSION LESS 105600)
Expand Down
25 changes: 3 additions & 22 deletions cmake/HPX_SetupBoost.cmake
Expand Up @@ -68,7 +68,7 @@ set(__boost_libraries
regex
system)

find_package(Boost 1.51 REQUIRED COMPONENTS ${__boost_libraries})
find_package(Boost 1.55 REQUIRED COMPONENTS ${__boost_libraries})

if(NOT Boost_FOUND)
hpx_error("Could not find Boost. Please set BOOST_ROOT to point to your Boost installation.")
Expand All @@ -86,7 +86,7 @@ endif()
set(Boost_TMP_LIBRARIES ${Boost_TMP_LIBRARIES} ${Boost_LIBRARIES})

if(HPX_WITH_COMPRESSION_BZIP2 OR HPX_WITH_COMPRESSION_ZLIB)
find_package(Boost 1.51 QUIET COMPONENTS iostreams)
find_package(Boost 1.55 QUIET COMPONENTS iostreams)
if(Boost_IOSTREAMS_FOUND)
hpx_info(" iostreams")
else()
Expand All @@ -96,26 +96,12 @@ if(HPX_WITH_COMPRESSION_BZIP2 OR HPX_WITH_COMPRESSION_ZLIB)
endif()

# attempt to load Boost.Random (if available), it's needed for one example only
find_package(Boost 1.51 QUIET COMPONENTS random)
find_package(Boost 1.55 QUIET COMPONENTS random)
if(Boost_RANDOM_FOUND)
hpx_info(" random")
set(Boost_TMP_LIBRARIES ${Boost_TMP_LIBRARIES} ${Boost_LIBRARIES})
endif()

# If the found Boost installation is < 1.53, we need to include our packaged
# atomic library
if(Boost_VERSION LESS 105300)
set(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} "${PROJECT_SOURCE_DIR}/external/atomic")
set(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} "${PROJECT_SOURCE_DIR}/external/lockfree")
else()
find_package(Boost 1.53 QUIET REQUIRED COMPONENTS atomic)
if(Boost_ATOMIC_FOUND)
hpx_info(" atomic")
endif()

set(Boost_TMP_LIBRARIES ${Boost_TMP_LIBRARIES} ${Boost_LIBRARIES})
endif()

set(Boost_LIBRARIES ${Boost_TMP_LIBRARIES})

# If we compile natively for the MIC, we need some workarounds for certain
Expand All @@ -141,11 +127,6 @@ hpx_add_config_define(HPX_HAVE_LOG_NO_TSS)
hpx_add_config_define(HPX_HAVE_LOG_NO_TS)
hpx_add_config_cond_define(BOOST_BIGINT_HAS_NATIVE_INT64)

# Disable usage of std::atomics in lockfree
if(Boost_VERSION LESS 105300)
hpx_add_config_cond_define(BOOST_NO_0X_HDR_ATOMIC)
endif()

include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
link_directories(${Boost_LIBRARY_DIRS})
if((NOT MSVC) OR HPX_WITH_BOOST_ALL_DYNAMIC_LINK OR HPX_WITH_VCPKG)
Expand Down
10 changes: 4 additions & 6 deletions docs/manual/build_system/prerequisites.qbk
Expand Up @@ -26,7 +26,7 @@ work, but we do not test __hpx__ with other platforms, so please be warned.
In the simplest case, __hpx__ depends on one set of libraries: __boost__. So,
before you read further, please make sure you have a recent version of
__boost__ installed on your target machine. __hpx__ currently requires at least
Boost V1.51.0 to work properly. It may build and run with older versions, but
Boost V1.55.0 to work properly. It may build and run with older versions, but
we do not test __hpx__ with those versions, so please be warned.

Installing the Boost libraries is described in detail in Boost's own
Expand Down Expand Up @@ -63,8 +63,7 @@ favorite compiler with __hpx__ visit __stellar_hpx_buildbot__.
[[__cmake__ ][3.1 ][3.0.2 ]]

[[[*Required Libraries]]]
[[__boost_libraries__ ][1.57.0 or newer ][1.51.0 ]
[See below for an important limitation when using Boost V1.54.0.]]
[[__boost_libraries__ ][1.57.0 or newer ][1.55.0 ]
[[__hwloc__ ][1.10 ][1.2 (Xeon Phi: 1.6)]
[Used for OS-thread pinning and NUMA awareness. This library is optional on Mac OSX.]]
]
Expand Down Expand Up @@ -92,16 +91,15 @@ favorite compiler with __hpx__ visit __stellar_hpx_buildbot__.
[[__cmake__ ][3.1 ][3.0.2 ]]

[[[*Required Libraries]]]
[[__boost__ ][1.57.0 or newer ][1.51.0 ]
[[__boost__ ][1.57.0 or newer ][1.55.0 ]
[See below for an important limitation when using Boost V1.55.0.]]
[[__hwloc__ ][1.10 ][1.5 ]
[Used for OS-thread pinning and NUMA awareness.]]
]

[note You need to build the following Boost libraries for __hpx__:
Boost.DateTime, Boost.Filesystem, Boost.ProgramOptions, Boost.Regex,
Boost.System, Boost.Thread, Boost.Chrono, and Boost.Atomic (starting
Boost 1.53.0). ]
Boost.System, Boost.Thread, Boost.Chrono, and Boost.Atomic. ]

Depending on the options you chose while building and installing __hpx__,
you will find that __hpx__ may depend on several other libraries such as those
Expand Down
225 changes: 0 additions & 225 deletions external/atomic/boost/atomic.hpp

This file was deleted.

0 comments on commit 28fc70f

Please sign in to comment.