diff --git a/CMakeLists.txt b/CMakeLists.txt index 63d7c4e..0250daf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,26 +14,39 @@ else() message(WARNING "Your compiler (${CMAKE_CXX_COMPILER_ID}) has not been tested on this project. Only Clang and GCC has been tested. Please report any problems at the project page on GitHub.") endif() -#Only tested with versions 1.55 and 1.56 -find_package(Boost 1.54.0 COMPONENTS regex system thread coroutine context filesystem REQUIRED) +OPTION(ENABLE_SSL "Use ssl" ON) + +set(Boost_USE_STATIC_LIBS ON) +set(Boost_USE_MULTITHREADED ON) +set(Boost_USE_STATIC_RUNTIME OFF) +#Only tested with versions 1.59.0 +find_package(Boost 1.59.0 COMPONENTS regex system thread coroutine context filesystem date_time REQUIRED) include_directories(${Boost_INCLUDE_DIR}) if(APPLE) set(OPENSSL_ROOT_DIR "/usr/local/opt/openssl") endif() -#TODO: add requirement for version 1.0.1g (can it be done in one line?) -find_package(OpenSSL REQUIRED) -include_directories(${OPENSSL_INCLUDE_DIR}) +if(MSVC) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc") +endif() + +if(ENABLE_SSL) + #TODO: add requirement for version 1.0.1g (can it be done in one line?) + find_package(OpenSSL REQUIRED) + include_directories(${OPENSSL_INCLUDE_DIR}) +endif() find_package(Threads REQUIRED) include_directories(.) -add_executable(https_examples https_examples.cpp) -target_link_libraries(https_examples ${Boost_LIBRARIES}) -target_link_libraries(https_examples ${OPENSSL_LIBRARIES}) -target_link_libraries(https_examples ${CMAKE_THREAD_LIBS_INIT}) +if(ENABLE_SSL) + add_executable(https_examples https_examples.cpp) + target_link_libraries(https_examples ${Boost_LIBRARIES}) + target_link_libraries(https_examples ${OPENSSL_LIBRARIES}) + target_link_libraries(https_examples ${CMAKE_THREAD_LIBS_INIT}) +endif() add_executable(http_examples http_examples.cpp) target_link_libraries(http_examples ${Boost_LIBRARIES})