[libc-commits] [libc] [libc][stdlib] Fix skipped libc.src.stdlib.freelist_malloc target for baremetal. (PR #96372)

via libc-commits libc-commits at lists.llvm.org
Fri Jun 21 19:39:54 PDT 2024


https://github.com/lntue created https://github.com/llvm/llvm-project/pull/96372

Downstream build issue reported: https://ci.chromium.org/ui/p/fuchsia/builders/toolchain.ci/clang-linux-x64/b8744479865106393873/overview



>From 73638bf38797d394e3c2ebe028fb9414c9657f6e Mon Sep 17 00:00:00 2001
From: Tue Ly <lntue.h at gmail.com>
Date: Sat, 22 Jun 2024 02:35:43 +0000
Subject: [PATCH] [libc][stdlib] Fix skipped libc.src.stdlib.freelist_malloc
 target for baremetal.

---
 libc/config/baremetal/arm/entrypoints.txt   | 1 +
 libc/config/baremetal/riscv/entrypoints.txt | 1 +
 libc/src/stdlib/CMakeLists.txt              | 3 ++-
 3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/libc/config/baremetal/arm/entrypoints.txt b/libc/config/baremetal/arm/entrypoints.txt
index 1443d1e44e10a..b8e97783c7723 100644
--- a/libc/config/baremetal/arm/entrypoints.txt
+++ b/libc/config/baremetal/arm/entrypoints.txt
@@ -176,6 +176,7 @@ set(TARGET_LIBC_ENTRYPOINTS
     libc.src.stdlib.calloc
     libc.src.stdlib.div
     libc.src.stdlib.free
+    libc.src.stdlib.freelist_malloc
     libc.src.stdlib.labs
     libc.src.stdlib.ldiv
     libc.src.stdlib.llabs
diff --git a/libc/config/baremetal/riscv/entrypoints.txt b/libc/config/baremetal/riscv/entrypoints.txt
index 99ae20b726ae2..c9070c2691b19 100644
--- a/libc/config/baremetal/riscv/entrypoints.txt
+++ b/libc/config/baremetal/riscv/entrypoints.txt
@@ -172,6 +172,7 @@ set(TARGET_LIBC_ENTRYPOINTS
     libc.src.stdlib.calloc
     libc.src.stdlib.div
     libc.src.stdlib.free
+    libc.src.stdlib.freelist_malloc
     libc.src.stdlib.labs
     libc.src.stdlib.ldiv
     libc.src.stdlib.llabs
diff --git a/libc/src/stdlib/CMakeLists.txt b/libc/src/stdlib/CMakeLists.txt
index 7d99fdf38141a..a5d5ac5f32b06 100644
--- a/libc/src/stdlib/CMakeLists.txt
+++ b/libc/src/stdlib/CMakeLists.txt
@@ -392,7 +392,8 @@ else()
     COMPILE_OPTIONS
       -DLIBC_FREELIST_MALLOC_SIZE=${LIBC_CONF_FREELIST_MALLOC_BUFFER_SIZE}
   )
-  if(LIBC_TARGET_OS_IS_BAREMETAL)
+  get_target_property(freelist_malloc_is_skipped libc.src.stdlib.freelist_malloc "SKIPPED")
+  if(LIBC_TARGET_OS_IS_BAREMETAL AND NOT freelist_malloc_is_skipped)
     add_entrypoint_object(
       malloc
       ALIAS



More information about the libc-commits mailing list