diff options
author | Naios <naios-dev@live.de> | 2017-02-27 22:31:05 +0100 |
---|---|---|
committer | Naios <naios-dev@live.de> | 2017-02-27 22:52:48 +0100 |
commit | 3da60f84000bd7ffa5a1516839b84cdee4764448 (patch) | |
tree | b55b6559f04bbafba8e09f8f8dc1052e80146d1d | |
parent | bb46bfb8648cccf6cbdd922bba4e92166b861a49 (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.txt | 16 |
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 |