From 7bbb96205bac176d63b0a41cf739c70879b00ddf Mon Sep 17 00:00:00 2001 From: wangmingrong1 Date: Wed, 19 Feb 2025 12:04:52 +0800 Subject: [PATCH] CMake: Fix link error Bringing the code coverage option when linking may cause gcc or g++ to automatically link the libgcov.a that comes with the toolchain. Signed-off-by: wangmingrong1 --- libs/libbuiltin/libgcc/CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libs/libbuiltin/libgcc/CMakeLists.txt b/libs/libbuiltin/libgcc/CMakeLists.txt index 52f3faa7ba8..45f318035ba 100644 --- a/libs/libbuiltin/libgcc/CMakeLists.txt +++ b/libs/libbuiltin/libgcc/CMakeLists.txt @@ -28,5 +28,10 @@ if(CONFIG_COVERAGE_MINI AND CONFIG_ARCH_TOOLCHAIN_GCC) target_compile_options( libcoverage PRIVATE -fno-profile-arcs -fno-test-coverage -fno-stack-protector) + + list(REMOVE_ITEM NUTTX_EXTRA_FLAGS "-fprofile-arcs" "-ftest-coverage" + "-fno-inline") + set_property(GLOBAL PROPERTY NUTTX_EXTRA_FLAGS ${NUTTX_EXTRA_FLAGS}) + target_sources(libcoverage PRIVATE gcov.c) endif()