e0590a0b56
kf6-kcoreaddons 6.28.0 requires ECM >= 6.28.0 but the vendored ECM source/ was still 6.10.0: the sync engine skipped it because ECM's version marker is a bare set(VERSION "X.Y.Z") that the parser didn't recognize (only KF_VERSION / PROJECT_VERSION / RELEASE_SERVICE_VERSION). Re-lay ECM from its 6.28.0 source.tar (pure cmake modules, no Redox port) and teach both the sync engine and the validator to read set(VERSION) so this class is caught, not silently skipped.
33 lines
1.1 KiB
CMake
33 lines
1.1 KiB
CMake
# SPDX-FileCopyrightText: 2014 Aleix Pol Gonzalez <aleixpol@kde.org>
|
|
#
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
#[=======================================================================[.rst:
|
|
ECMCoverageOption
|
|
--------------------
|
|
|
|
Allow users to easily enable GCov code coverage support.
|
|
|
|
Code coverage allows you to check how much of your codebase is covered by
|
|
your tests. This module makes it easy to build with support for
|
|
`GCov <https://gcc.gnu.org/onlinedocs/gcc/Gcov.html>`_.
|
|
|
|
When this module is included, a ``BUILD_COVERAGE`` option is added (default
|
|
``OFF``). Turning this option on enables GCC's coverage instrumentation, and
|
|
links against ``libgcov``.
|
|
|
|
.. note::
|
|
This will probably break the build if you are not using GCC.
|
|
|
|
Since 1.3.0.
|
|
#]=======================================================================]
|
|
|
|
cmake_policy(VERSION 3.16)
|
|
|
|
option(BUILD_COVERAGE "Build the project with gcov support" OFF)
|
|
|
|
if(BUILD_COVERAGE)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
|
endif()
|