[clang] [clang][Driver][BareMetal] Support --cstdlib in clang-runtimes sysroot lookup (PR #185870)

Sam Elliott via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 26 16:53:27 PDT 2026


================
@@ -293,6 +255,19 @@ if (NOT(CLANG_DEFAULT_CXX_STDLIB STREQUAL "" OR
     "Default C++ stdlib to use (\"libstdc++\" or \"libc++\", empty for platform default" FORCE)
 endif()
 
+set(CLANG_DEFAULT_C_STDLIB "" CACHE STRING
+  "Default C stdlib to use (\"newlib\", \"newlib-nano\", \"picolibc\", \"llvm-libc\", or \"system\", empty for platform default)")
+if (NOT(CLANG_DEFAULT_C_STDLIB STREQUAL "" OR
+        CLANG_DEFAULT_C_STDLIB STREQUAL "newlib" OR
+        CLANG_DEFAULT_C_STDLIB STREQUAL "newlib-nano" OR
+        CLANG_DEFAULT_C_STDLIB STREQUAL "picolibc" OR
+        CLANG_DEFAULT_C_STDLIB STREQUAL "llvm-libc" OR
+        CLANG_DEFAULT_C_STDLIB STREQUAL "system"))
+  message(WARNING "Resetting default C stdlib to use platform default")
+  set(CLANG_DEFAULT_C_STDLIB "" CACHE STRING
+    "Default C stdlib to use (\"newlib\", \"newlib-nano\", \"picolibc\", \"llvm-libc\", or \"system\", empty for platform default)" FORCE)
+endif()
----------------
lenary wrote:

https://github.com/llvm/llvm-project/pull/188857 is an attempt at (2), which shows that we don't need it for the existing libraries - this should be able to be extended for `--cstdlib` too.

https://github.com/llvm/llvm-project/pull/185870


More information about the cfe-commits mailing list