Files
esp-idf/components/esp_libc/project_include.cmake
2026-06-17 17:24:25 +07:00

29 lines
1.0 KiB
CMake

if(CONFIG_IDF_TOOLCHAIN_GCC)
if(CONFIG_STDATOMIC_S32C1I_SPIRAM_WORKAROUND)
idf_toolchain_add_flags(COMPILE_OPTIONS "-mdisable-hardware-atomics")
else()
idf_toolchain_remove_flags(COMPILE_OPTIONS "-mdisable-hardware-atomics")
endif()
if(CONFIG_LIBC_PICOLIBC)
idf_toolchain_add_flags(COMPILE_OPTIONS "-specs=picolibc.specs")
if(LIBC_PICOLIBC_NEWLIB_COMPATIBILITY)
idf_toolchain_add_flags(COMPILE_OPTIONS "-D__STDC_WANT_LIB_EXT1__=0")
endif()
else()
idf_toolchain_remove_flags(COMPILE_OPTIONS "-specs=picolibc.specs")
endif()
if(CONFIG_LIBC_NEWLIB_NANO_FORMAT)
idf_toolchain_add_flags(LINK_OPTIONS "--specs=nano.specs")
else()
idf_toolchain_remove_flags(LINK_OPTIONS "--specs=nano.specs")
endif()
idf_toolchain_rerun_abi_detection()
else() # TODO IDF-14338
if(CONFIG_STDATOMIC_S32C1I_SPIRAM_WORKAROUND)
idf_build_set_property(COMPILE_OPTIONS "-mdisable-hardware-atomics" APPEND)
endif()
endif()