add_library("kstd" STATIC) add_library("libs::kstd" ALIAS "kstd") set(KSTD_LIBC_SYMBOLS "abort" "strlen" "memcmp" "memcpy" ) target_sources("kstd" PRIVATE "src/libc/stdlib.cpp" "src/libc/string.cpp" "src/os/error.cpp" "src/mutex.cpp" ) file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/kstd/*") target_sources("kstd" PUBLIC FILE_SET HEADERS BASE_DIRS "include" FILES ${KSTD_HEADERS} ) target_include_directories("kstd" PUBLIC "include" ) list(TRANSFORM KSTD_LIBC_SYMBOLS PREPEND "-Wl,--undefined=") target_link_options("kstd" INTERFACE ${KSTD_LIBC_SYMBOLS})