| From 328ae3d2306c9f65b5e85a2be98a368c07287a05 Mon Sep 17 00:00:00 2001 |
| From: Thomas Perale <thomas.perale@mind.be> |
| Date: Sat, 14 Sep 2024 21:07:30 +0200 |
| Subject: [PATCH] cmake: Only enable CXX when running the coverage |
| |
| Commit 25a678190c42b24076fdd805a8d7a722a8a9c798 introduced code coverage |
| collection. That also introduced a dependency to CXX language. |
| |
| When cross-compiling libssh in an environment that doesn't have a C++ compiler |
| the following error is raised: "No CMAKE_CXX_COMPILER could be found.". |
| |
| Since the C++ part is only needed for the coverage part, this commit only enable |
| that language dependency when actually needing it. |
| |
| Signed-off-by: Thomas Perale <thomas.perale@mind.be> |
| Upstream: https://gitlab.com/libssh/libssh-mirror/-/merge_requests/537 |
| --- |
| CMakeLists.txt | 3 ++- |
| cmake/Modules/AddCMockaTest.cmake | 1 + |
| 2 files changed, 3 insertions(+), 1 deletion(-) |
| |
| diff --git a/CMakeLists.txt b/CMakeLists.txt |
| index 13330ea3..5595a47a 100644 |
| --- a/CMakeLists.txt |
| +++ b/CMakeLists.txt |
| @@ -9,7 +9,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules") |
| include(DefineCMakeDefaults) |
| include(DefineCompilerFlags) |
| |
| -project(libssh VERSION 0.11.1 LANGUAGES C CXX) |
| +project(libssh VERSION 0.11.1 LANGUAGES C) |
| |
| # global needed variable |
| set(APPLICATION_NAME ${PROJECT_NAME}) |
| @@ -190,6 +190,7 @@ endif (WITH_SYMBOL_VERSIONING AND ABIMAP_FOUND) |
| |
| # Coverage |
| if (WITH_COVERAGE) |
| + ENABLE_LANGUAGE(CXX) |
| include(CodeCoverage) |
| setup_target_for_coverage_lcov( |
| NAME "coverage" |
| diff --git a/cmake/Modules/AddCMockaTest.cmake b/cmake/Modules/AddCMockaTest.cmake |
| index 79178183..f49961ba 100644 |
| --- a/cmake/Modules/AddCMockaTest.cmake |
| +++ b/cmake/Modules/AddCMockaTest.cmake |
| @@ -117,6 +117,7 @@ function(ADD_CMOCKA_TEST _TARGET_NAME) |
| ${TARGET_SYSTEM_EMULATOR} ${_TARGET_NAME} |
| ) |
| if (WITH_COVERAGE) |
| + ENABLE_LANGUAGE(CXX) |
| include(CodeCoverage) |
| append_coverage_compiler_flags_to_target(${_TARGET_NAME}) |
| endif (WITH_COVERAGE) |
| -- |
| 2.46.0 |
| |