Add options for building examples and tests.

Move zlib test sources to test/zlib
This commit is contained in:
Sacha
2017-06-29 09:40:14 +10:00
committed by Vinnie Falco
parent 6496aa89ee
commit 7f05f67464
3 changed files with 35 additions and 26 deletions

View File

@ -10,6 +10,7 @@ WebSockets:
* Allow close, ping, and write to happen concurrently
* Fix race in websocket read op
* Fix websocket write op
* Add cmake options for examples and tests
--------------------------------------------------------------------------------

View File

@ -5,6 +5,8 @@ cmake_minimum_required (VERSION 3.5.2)
project (Beast VERSION 69)
set_property (GLOBAL PROPERTY USE_FOLDERS ON)
option (Beast_BUILD_EXAMPLES "Build examples" ON)
option (Beast_BUILD_TESTS "Build tests" ON)
if (MSVC)
set (CMAKE_VERBOSE_MAKEFILE FALSE)
@ -51,7 +53,10 @@ endif()
option (Boost_USE_STATIC_LIBS "Use static libraries for boost" ON)
set (BOOST_COMPONENTS coroutine context filesystem program_options system thread)
set(BOOST_COMPONENTS system)
if (Beast_BUILD_EXAMPLES OR Beast_BUILD_TESTS)
list(APPEND BOOST_COMPONENTS coroutine context filesystem program_options thread)
endif()
find_package (Boost 1.58.0 REQUIRED COMPONENTS ${BOOST_COMPONENTS})
link_directories(${Boost_LIBRARY_DIRS})
@ -160,29 +165,6 @@ if (OPENSSL_FOUND)
include_directories (${OPENSSL_INCLUDE_DIR})
endif()
set(ZLIB_SOURCES
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/crc32.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/deflate.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inffast.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inffixed.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inflate.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inftrees.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/trees.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/zlib.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/zutil.h
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/adler32.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/compress.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/crc32.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/deflate.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/infback.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inffast.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inflate.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/inftrees.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/trees.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/uncompr.c
${PROJECT_SOURCE_DIR}/test/zlib/zlib-1.2.8/zutil.c
)
file(GLOB_RECURSE BEAST_INCLUDES
${PROJECT_SOURCE_DIR}/include/beast/*.hpp
${PROJECT_SOURCE_DIR}/include/beast/*.ipp
@ -197,9 +179,12 @@ file(GLOB_RECURSE EXTRAS_INCLUDES
${PROJECT_SOURCE_DIR}/extras/beast/*.ipp
)
add_subdirectory (test)
if (Beast_BUILD_TESTS)
add_subdirectory (test)
endif()
if ((NOT "${VARIANT}" STREQUAL "coverage") AND
if (Beast_BUILD_EXAMPLES AND
(NOT "${VARIANT}" STREQUAL "coverage") AND
(NOT "${VARIANT}" STREQUAL "ubasan"))
add_subdirectory (example)
endif()

View File

@ -5,6 +5,29 @@ GroupSources(include/beast beast)
GroupSources(test/zlib "/")
set(ZLIB_SOURCES
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/crc32.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/deflate.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inffast.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inffixed.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inflate.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inftrees.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/trees.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/zlib.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/zutil.h
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/adler32.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/compress.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/crc32.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/deflate.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/infback.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inffast.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inflate.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/inftrees.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/trees.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/uncompr.c
${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.8/zutil.c
)
if (MSVC)
set_source_files_properties (${ZLIB_SOURCES} PROPERTIES COMPILE_FLAGS "/wd4127 /wd4131 /wd4244")
endif()