Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/onqtam/doctest.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoronqtam <vik.kirilov@gmail.com>2017-04-16 17:22:44 +0300
committeronqtam <vik.kirilov@gmail.com>2017-05-16 00:22:20 +0300
commit61954c38773e7ee0c1e39efe202e32c038ba2ae7 (patch)
treee9e4b62d928a62559f7be0e586dafafe1d1a69ea /CMakeLists.txt
parent08cf7dcdb8a86f69e2d61e32d772dfef39c01a53 (diff)
reworked cmake a bit
- examples/tests now guarded with a single option - no longer overriding add_executable/add_library
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt27
1 files changed, 16 insertions, 11 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 91d88b9d..427fbb64 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,21 +2,25 @@ cmake_minimum_required(VERSION 3.0)
project(doctest)
-option(DOCTEST_SKIP_COVERAGE "Skip coverage" OFF)
-option(DOCTEST_SKIP_EXAMPLES "Skip examples" OFF)
+option(DOCTEST_WITH_TESTS "Build tests/examples" ON)
-include(scripts/cmake/common.cmake)
+add_library(${PROJECT_NAME} INTERFACE)
+target_include_directories(${PROJECT_NAME} INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/doctest/>)
+
+################################################################################
+## TESTS/EXAMPLES
+################################################################################
-include_directories("doctest/") # needed here so the coverage tools work - otherwise the "../../doctest" relative path fucks up
+if(${DOCTEST_WITH_TESTS})
+ include(scripts/cmake/common.cmake)
-if(NOT ${DOCTEST_SKIP_COVERAGE})
# setup coverage stuff only when COVERALLS_SERVICE_NAME is set (usually on travis CI)
if(DEFINED ENV{COVERALLS_SERVICE_NAME})
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/scripts/coveralls-cmake/cmake)
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/scripts/coveralls-cmake/cmake)
include(Coveralls)
coveralls_turn_on_coverage()
- coveralls_setup("${CMAKE_SOURCE_DIR}/doctest/doctest.h" ON "${CMAKE_SOURCE_DIR}/scripts/coveralls-cmake/cmake")
+ coveralls_setup("${CMAKE_CURRENT_SOURCE_DIR}/doctest/doctest.h" ON "${CMAKE_CURRENT_SOURCE_DIR}/scripts/coveralls-cmake/cmake")
add_subdirectory(scripts/code_coverage_source)
@@ -24,10 +28,8 @@ if(NOT ${DOCTEST_SKIP_COVERAGE})
endif()
add_subdirectory(scripts/code_coverage_source)
-endif()
-if(NOT ${DOCTEST_SKIP_EXAMPLES})
- file(GLOB subdir_list "${CMAKE_SOURCE_DIR}/examples/*")
+ file(GLOB subdir_list "${CMAKE_CURRENT_SOURCE_DIR}/examples/*")
foreach(dir ${subdir_list})
if(IS_DIRECTORY ${dir})
get_filename_component(DIRNAME ${dir} NAME)
@@ -36,7 +38,10 @@ if(NOT ${DOCTEST_SKIP_EXAMPLES})
endforeach()
endif()
-add_library(${PROJECT_NAME} INTERFACE)
+################################################################################
+## PACKAGE SUPPORT
+################################################################################
+
set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated")
set(include_install_dir "include/doctest/")