[libc-commits] [libc] [libc] Add localtime_r to baremetal entrypoints (PR #166677)
Prabhu Rajasekaran via libc-commits
libc-commits at lists.llvm.org
Thu Nov 6 11:11:51 PST 2025
Prabhuk wrote:
While building the Fuchsia toolchain locally, baremetal runtimes builds are failing. I am debugging them currently. Marking the PR as draft until I resolve the failures.
```
[hi on] prabhukr at prabhukr:~/llvm-builds/build$ ninja runtimes-armv8.1m.main-none-eabi
[13/20] Performing build step for 'builtins-armv8.1m.main-none-eabi'
ninja: no work to do.
[14/20] No install step for 'builtins-armv8.1m.main-none-eabi'
[16/20] Performing configure step for 'runtimes-armv8.1m.main-none-eabi'
Not searching for unused variables given on the command line.
loading initial cache file /usr/local/google/home/prabhukr/llvm-builds/build/projects/runtimes-armv8.1m.main-none-eabi/tmp/runtimes-armv8.1m.main-none-eabi-cache-RelWithDebInfo.cmake
-- Performing bootstrapping runtimes build.
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMExports.cmake:894 (add_library):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMConfig.cmake:293 (include)
CMakeLists.txt:63 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMExports.cmake:1094 (add_library):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMConfig.cmake:293 (include)
CMakeLists.txt:63 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMExports.cmake:1113 (add_library):
ADD_LIBRARY called with MODULE option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/llvm/LLVMConfig.cmake:293 (include)
CMakeLists.txt:63 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/clang/ClangTargets.cmake:386 (add_library):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/clang/ClangConfig.cmake:16 (include)
CMakeLists.txt:64 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/clang/ClangTargets.cmake:750 (add_library):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/local/google/home/prabhukr/llvm-builds/build/lib/cmake/clang/ClangConfig.cmake:16 (include)
CMakeLists.txt:64 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning at /usr/local/google/home/prabhukr/llvm/llvm-project/llvm/cmake/modules/HandleLLVMOptions.cmake:141 (message):
LLVM_ENABLE_ASSERTIONS implies LIBCXX_HARDENING_MODE "extensive" but is
overriden from command line with value "none".
Call Stack (most recent call first):
CMakeLists.txt:194 (include)
-- Building with -fPIC
-- LLVM host triple: x86_64-unknown-linux-gnu
-- LLVM default target triple: armv8.1m.main-none-eabi
-- Setting LIBC_NAMESPACE namespace to '__llvm_libc_22_0_0_git'
-- Set COMPILER_RESOURCE_DIR to /usr/local/google/home/prabhukr/llvm-builds/build/lib/clang/22 using --print-resource-dir
-- Building libc for arm on baremetal with
LIBC_COMPILE_OPTIONS_DEFAULT: --target=armv8.1m.main-none-eabi
-- LIBC_CONF_ENABLE_STRONG_STACK_PROTECTOR: ON
-- LIBC_CONF_KEEP_FRAME_POINTER: ON
-- LIBC_CONF_ERRNO_MODE: LIBC_ERRNO_MODE_DEFAULT
-- LIBC_ADD_NULL_CHECKS: ON
-- LIBC_CONF_FREXP_INF_NAN_EXPONENT:
-- LIBC_CONF_MATH_OPTIMIZATIONS: 0
-- LIBC_CONF_PRINTF_DISABLE_FIXED_POINT: OFF
-- LIBC_CONF_PRINTF_DISABLE_FLOAT: OFF
-- LIBC_CONF_PRINTF_DISABLE_INDEX_MODE: OFF
-- LIBC_CONF_PRINTF_DISABLE_STRERROR: OFF
-- LIBC_CONF_PRINTF_DISABLE_WRITE_INT: OFF
-- LIBC_CONF_PRINTF_FLOAT_TO_STR_NO_SPECIALIZE_LD: OFF
-- LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_DYADIC_FLOAT: OFF
-- LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_FLOAT320: OFF
-- LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_MEGA_LONG_DOUBLE_TABLE: OFF
-- LIBC_CONF_PRINTF_RUNTIME_DISPATCH: ON
-- LIBC_CONF_RAW_MUTEX_DEFAULT_SPIN_COUNT: 100
-- LIBC_CONF_RWLOCK_DEFAULT_SPIN_COUNT: 100
-- LIBC_CONF_TIMEOUT_ENSURE_MONOTONICITY: ON
-- LIBC_CONF_QSORT_IMPL: LIBC_QSORT_QUICK_SORT
-- LIBC_CONF_SCANF_DISABLE_FLOAT: OFF
-- LIBC_CONF_SCANF_DISABLE_INDEX_MODE: OFF
-- LIBC_CONF_SETJMP_AARCH64_RESTORE_PLATFORM_REGISTER: ON
-- LIBC_CONF_MEMSET_X86_USE_SOFTWARE_PREFETCHING: OFF
-- LIBC_CONF_STRING_UNSAFE_WIDE_READ: OFF
-- LIBC_CONF_THREAD_MODE: LIBC_THREAD_MODE_PLATFORM
-- LIBC_CONF_TIME_64BIT: OFF
-- Writing config doc to /usr/local/google/home/prabhukr/llvm/llvm-project/libc/docs/configure.rst
-- Overriding - LIBC_CONF_ERRNO_MODE: LIBC_ERRNO_MODE_EXTERNAL (Previous value: LIBC_ERRNO_MODE_DEFAULT)
-- Overriding - LIBC_ADD_NULL_CHECKS: OFF (Previous value: ON)
-- Overriding - LIBC_CONF_MATH_OPTIMIZATIONS: (LIBC_MATH_SKIP_ACCURATE_PASS | LIBC_MATH_SMALL_TABLES | LIBC_MATH_NO_ERRNO | LIBC_MATH_INTERMEDIATE_COMP_IN_FLOAT) (Previous value: 0)
-- Overriding - LIBC_CONF_PRINTF_DISABLE_FIXED_POINT: ON (Previous value: OFF)
-- Overriding - LIBC_CONF_PRINTF_DISABLE_FLOAT: ON (Previous value: OFF)
-- Overriding - LIBC_CONF_PRINTF_DISABLE_INDEX_MODE: ON (Previous value: OFF)
-- Overriding - LIBC_CONF_PRINTF_DISABLE_STRERROR: ON (Previous value: OFF)
-- Overriding - LIBC_CONF_PRINTF_DISABLE_WRITE_INT: ON (Previous value: OFF)
-- Overriding - LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_MEGA_LONG_DOUBLE_TABLE: OFF (Previous value: OFF)
-- Overriding - LIBC_CONF_QSORT_IMPL: LIBC_QSORT_HEAP_SORT (Previous value: LIBC_QSORT_QUICK_SORT)
-- Overriding - LIBC_CONF_THREAD_MODE: LIBC_THREAD_MODE_SINGLE (Previous value: LIBC_THREAD_MODE_PLATFORM)
-- Set CPU features:
-- Compiler features available: builtin_ceil_floor_rint_trunc;builtin_fmax_fmin;builtin_fmaxf16_fminf16;builtin_round;builtin_roundeven;ext_vector_type;fixed_point
-- Integration test for hdrgen added.
-- Using libc++ testing configuration: /usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/test/configs/llvm-libc++-static.cfg.in
CMake Warning (dev) at /usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/CMakeLists.txt:176 (add_library):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done (2.2s)
-- Generating done (0.5s)
-- Build files have been written to: /usr/local/google/home/prabhukr/llvm-builds/build/runtimes/runtimes-armv8.1m.main-none-eabi-bins
[17/20] Performing build step for 'runtimes-armv8.1m.main-none-eabi'
[513/554] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/exception.cpp.obj
In file included from /usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/exception.cpp:36:
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_fallback.ipp:54:2: warning: uncaught_exception not yet implemented [-W#warnings]
54 | #warning uncaught_exception not yet implemented
| ^
In file included from /usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/exception.cpp:37:
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:15:2: warning: exception_ptr not yet implemented [-W#warnings]
15 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:20:2: warning: exception_ptr not yet implemented [-W#warnings]
20 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:25:2: warning: exception_ptr not yet implemented [-W#warnings]
25 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:30:2: warning: exception_ptr not yet implemented [-W#warnings]
30 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:43:2: warning: exception_ptr not yet implemented [-W#warnings]
43 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:53:2: warning: exception_ptr not yet implemented [-W#warnings]
53 | #warning exception_ptr not yet implemented
| ^
/usr/local/google/home/prabhukr/llvm/llvm-project/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp:58:2: warning: exception_ptr not yet implemented [-W#warnings]
58 | #warning exception_ptr not yet implemented
| ^
8 warnings generated.
```
https://github.com/llvm/llvm-project/pull/166677
More information about the libc-commits
mailing list