aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaios <naios-dev@live.de>2017-02-27 22:31:05 +0100
committerNaios <naios-dev@live.de>2017-02-27 22:52:48 +0100
commit3da60f84000bd7ffa5a1516839b84cdee4764448 (patch)
treeb55b6559f04bbafba8e09f8f8dc1052e80146d1d
parentbb46bfb8648cccf6cbdd922bba4e92166b861a49 (diff)
Dep: Use the anonymous namespace free definition of `boost::none`.
* Fixes MSVC linking errors after the recent changes: "class boost::none_t const & const boost::`anonymous namespace' ::none" (?none@?A0x518851d0@boost@@3AEBVnone_t@2@EB) already defined in scripts_commands.lib... * Sets the required version of boost on windows to 1.59 according to the wiki.
-rw-r--r--dep/boost/CMakeLists.txt16
1 files changed, 13 insertions, 3 deletions
diff --git a/dep/boost/CMakeLists.txt b/dep/boost/CMakeLists.txt
index 8d1e71dbf7a..3ad14864a47 100644
--- a/dep/boost/CMakeLists.txt
+++ b/dep/boost/CMakeLists.txt
@@ -33,10 +33,17 @@ check_cxx_source_compiles("
int main() { std::wregex r(L\".*\"); }"
STD_HAS_WORKING_WREGEX)
+if (WIN32)
+ # On windows the requirements are higher according to the wiki.
+ set(BOOST_REQUIRED_VERSION 1.59)
+else()
+ set(BOOST_REQUIRED_VERSION 1.55)
+endif()
+
if (STD_HAS_WORKING_WREGEX)
- find_package(Boost 1.55 REQUIRED system filesystem thread program_options iostreams)
+ find_package(Boost ${BOOST_REQUIRED_VERSION} REQUIRED system filesystem thread program_options iostreams)
else()
- find_package(Boost 1.55 REQUIRED system filesystem thread program_options iostreams regex)
+ find_package(Boost ${BOOST_REQUIRED_VERSION} REQUIRED system filesystem thread program_options iostreams regex)
endif()
# Find if Boost was compiled in C++03 mode because it requires -DBOOST_NO_CXX11_SCOPED_ENUMS
@@ -67,7 +74,10 @@ target_compile_definitions(boost
INTERFACE
-DBOOST_DATE_TIME_NO_LIB
-DBOOST_REGEX_NO_LIB
- -DBOOST_CHRONO_NO_LIB)
+ -DBOOST_CHRONO_NO_LIB
+ # Due to MSVC linking error boost::none" already defined in scripts_...
+ # May be removed when the requirement is raised to boost 1.61 on windows.
+ -DBOOST_OPTIONAL_USE_OLD_DEFINITION_OF_NONE)
if (NOT boost_filesystem_copy_links_without_NO_SCOPED_ENUM)
target_compile_definitions(boost