diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2021-08-04 16:00:57 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2021-08-04 16:00:57 +0200 |
commit | cbfecc6afcc9976506925ec124364aaa99a03f8f (patch) | |
tree | 6812de023b9d8abb296f9a98eae215febb34e830 | |
parent | a84dc9bf41fe3b44c3267d2d11e0d6c188bcad99 (diff) | |
parent | fb099bb1b78c69d272b81ee6980ccb8d3e13dd69 (diff) | |
download | ayatana-indicator-bluetooth-cbfecc6afcc9976506925ec124364aaa99a03f8f.tar.gz ayatana-indicator-bluetooth-cbfecc6afcc9976506925ec124364aaa99a03f8f.tar.bz2 ayatana-indicator-bluetooth-cbfecc6afcc9976506925ec124364aaa99a03f8f.zip |
Merge branch 'tari01-pr/add-standard-cmake-bits'
Attributes GH PR #24: https://github.com/AyatanaIndicators/ayatana-indicator-bluetooth/pull/24
-rw-r--r-- | CMakeLists.txt | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 5a8019f..6a0a6aa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,10 +1,27 @@ project(ayatana-indicator-bluetooth C CXX) -cmake_minimum_required(VERSION 2.8.9) +cmake_minimum_required(VERSION 3.13) + +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + SET(CMAKE_INSTALL_PREFIX "/usr" CACHE PATH "..." FORCE) +endif(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}") set(PACKAGE ${CMAKE_PROJECT_NAME}) set(PROJECT_VERSION 0.8.2) + +# Options + +option(ENABLE_TESTS "Enable all tests and checks" OFF) +option(ENABLE_COVERAGE "Enable coverage reports (includes enabling all tests and checks)" OFF) + +if(ENABLE_COVERAGE) + set(ENABLE_TESTS ON) + set(CMAKE_BUILD_TYPE "Coverage") +else() + set(CMAKE_BUILD_TYPE "Release") +endif() + find_package(PkgConfig REQUIRED) include(GNUInstallDirs) include(UseVala) @@ -57,3 +74,23 @@ configure_file( add_subdirectory(data) add_subdirectory(src) add_subdirectory(po) + +# testing & coverage + +if (ENABLE_TESTS) + + include(CTest) + enable_testing() + + if (ENABLE_COVERAGE) + + find_package(CoverageReport) + + endif() + +endif() + +# Display config info + +message(STATUS "Install prefix: ${CMAKE_INSTALL_PREFIX}") +message(STATUS "Unit tests: ${ENABLE_TESTS}") |