diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ae1d8bb..05eda647 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,6 +3,8 @@ cmake_minimum_required(VERSION 3.0) # define the project project(json VERSION 2.0.0 LANGUAGES CXX) +option(BuildTests "Build the unit tests" ON) + # define project variables set(JSON_TARGET_NAME ${PROJECT_NAME}) set(JSON_UNITTEST_TARGET_NAME "json_unit") @@ -20,15 +22,19 @@ target_include_directories(${JSON_TARGET_NAME} INTERFACE $) # create and configure the unit test target -add_executable(${JSON_UNITTEST_TARGET_NAME} - "test/catch.hpp" "test/unit.cpp") -set_target_properties(${JSON_UNITTEST_TARGET_NAME} PROPERTIES - CXX_STANDARD 11 - CXX_STANDARD_REQUIRED ON - COMPILE_DEFINITIONS "$<$:_SCL_SECURE_NO_WARNINGS>" - COMPILE_OPTIONS "$<$:/EHsc;$<$:/Od>>") -target_include_directories(${JSON_UNITTEST_TARGET_NAME} PRIVATE "test") -target_link_libraries(${JSON_UNITTEST_TARGET_NAME} ${JSON_TARGET_NAME}) +if (BuildTests) + add_executable(${JSON_UNITTEST_TARGET_NAME} + "test/catch.hpp" + "test/unit.cpp" + ) + set_target_properties(${JSON_UNITTEST_TARGET_NAME} PROPERTIES + CXX_STANDARD 11 + CXX_STANDARD_REQUIRED ON + COMPILE_DEFINITIONS "$<$:_SCL_SECURE_NO_WARNINGS>" + COMPILE_OPTIONS "$<$:/EHsc;$<$:/Od>>") + target_include_directories(${JSON_UNITTEST_TARGET_NAME} PRIVATE "test") + target_link_libraries(${JSON_UNITTEST_TARGET_NAME} ${JSON_TARGET_NAME}) +endif() # generate a config and config version file for the package include(CMakePackageConfigHelpers)