This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 6301af9a4405702e51714946dd705fadd08ef3cd
Author: wangmingrong1 <[email protected]>
AuthorDate: Mon Sep 15 12:33:04 2025 +0800

    libbuitin/compiler-rt: Solve some compilation errors
    
    1. remove_item It needs to use the full path to exclude the file, otherwise 
the exclusion will fail
    2. No include path was added, resulting in the header file not being found
    
    Signed-off-by: wangmingrong1 <[email protected]>
---
 libs/libbuiltin/compiler-rt/CMakeLists.txt | 48 ++++++++++++++++--------------
 libs/libbuiltin/compiler-rt/Make.defs      |  1 +
 2 files changed, 26 insertions(+), 23 deletions(-)

diff --git a/libs/libbuiltin/compiler-rt/CMakeLists.txt 
b/libs/libbuiltin/compiler-rt/CMakeLists.txt
index 3a2e8f8a0ab..a235425c0c2 100644
--- a/libs/libbuiltin/compiler-rt/CMakeLists.txt
+++ b/libs/libbuiltin/compiler-rt/CMakeLists.txt
@@ -78,39 +78,37 @@ if(CONFIG_BUILTIN_COMPILER_RT)
 
   set(SRCSTMP)
   set(RT_BUILTINS_SRCS)
-  file(GLOB RT_BUILTINS_SRCS
-       ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins/*.c)
+  set(BUILTINS_DIR ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins)
 
-  file(GLOB SRCSTMP
-       ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins/${ARCH}/*.S)
+  file(GLOB RT_BUILTINS_SRCS ${BUILTINS_DIR}/*.c)
+
+  file(GLOB SRCSTMP ${BUILTINS_DIR}/${ARCH}/*.S)
   list(APPEND RT_BUILTINS_SRCS ${SRCSTMP})
 
-  file(GLOB SRCSTMP
-       ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins/${ARCH}/*.c)
+  file(GLOB SRCSTMP ${BUILTINS_DIR}/${ARCH}/*.c)
   list(APPEND RT_BUILTINS_SRCS ${SRCSTMP})
 
   if(NOT CONFIG_LIB_COMPILER_RT_HAS_BFLOAT16)
-    set(RT_BUILTINS_BFLOAT16_SRCS
-        ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins/truncdfbf2.c
-        ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/builtins/truncsfbf2.c)
+    set(RT_BUILTINS_BFLOAT16_SRCS ${BUILTINS_DIR}/truncdfbf2.c
+                                  ${BUILTINS_DIR}/truncsfbf2.c)
     list(REMOVE_ITEM RT_BUILTINS_SRCS ${RT_BUILTINS_BFLOAT16_SRCS})
   endif()
 
   set(x86_80_BIT_SOURCES
-      divxc3.c
-      extendxftf2.c
-      fixxfdi.c
-      fixxfti.c
-      fixunsxfdi.c
-      fixunsxfsi.c
-      fixunsxfti.c
-      floatdixf.c
-      floattixf.c
-      floatundixf.c
-      floatuntixf.c
-      mulxc3.c
-      powixf2.c
-      trunctfxf2.c)
+      ${BUILTINS_DIR}/divxc3.c
+      ${BUILTINS_DIR}/extendxftf2.c
+      ${BUILTINS_DIR}/fixxfdi.c
+      ${BUILTINS_DIR}/fixxfti.c
+      ${BUILTINS_DIR}/fixunsxfdi.c
+      ${BUILTINS_DIR}/fixunsxfsi.c
+      ${BUILTINS_DIR}/fixunsxfti.c
+      ${BUILTINS_DIR}/floatdixf.c
+      ${BUILTINS_DIR}/floattixf.c
+      ${BUILTINS_DIR}/floatundixf.c
+      ${BUILTINS_DIR}/floatuntixf.c
+      ${BUILTINS_DIR}/mulxc3.c
+      ${BUILTINS_DIR}/powixf2.c
+      ${BUILTINS_DIR}/trunctfxf2.c)
 
   if(NOT CONFIG_ARCH_X86_64)
     list(REMOVE_ITEM RT_BUILTINS_SRCS ${x86_80_BIT_SOURCES})
@@ -153,6 +151,10 @@ if(CONFIG_COVERAGE_COMPILER_RT)
 elseif(CONFIG_COVERAGE_MINI AND CONFIG_ARCH_TOOLCHAIN_CLANG)
   nuttx_add_system_library(rt.miniprofile)
 
+  target_include_directories(
+    rt.miniprofile PRIVATE ${INCDIR}
+                           ${CMAKE_CURRENT_LIST_DIR}/compiler-rt/lib/profile)
+
   target_compile_options(rt.miniprofile PRIVATE -fno-profile-instr-generate
                                                 -fno-coverage-mapping)
 
diff --git a/libs/libbuiltin/compiler-rt/Make.defs 
b/libs/libbuiltin/compiler-rt/Make.defs
index 9576ea536b6..d269024533a 100644
--- a/libs/libbuiltin/compiler-rt/Make.defs
+++ b/libs/libbuiltin/compiler-rt/Make.defs
@@ -120,6 +120,7 @@ CSRCS += InstrProfilingPlatform.c
 
 else ifeq ($(CONFIG_COVERAGE_MINI)$(CONFIG_ARCH_TOOLCHAIN_CLANG),yy)
 
+FLAGS += ${INCDIR_PREFIX}$(CURDIR)/compiler-rt/compiler-rt/lib/profile
 FLAGS += -fno-profile-instr-generate -fno-coverage-mapping
 
 CSRCS += coverage.c

Reply via email to