set(TEACHOS_KERNEL_LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/arch/${CMAKE_SYSTEM_PROCESSOR}/kern.ld") mark_as_advanced(TEACHOS_KERNEL_LINKER_SCRIPT) add_executable("kernel" "src/entry.cpp" ) target_compile_features("kernel" PRIVATE "cxx_std_20" ) target_compile_options("kernel" PRIVATE "$<$:-Wall>" "$<$:-Wextra>" "$<$:-Werror>" "$<$:-pedantic-errors>" ) target_link_options("kernel" PRIVATE "-T${TEACHOS_KERNEL_LINKER_SCRIPT}" ) target_link_libraries("kernel" PRIVATE "-Wl,--whole-archive" "teachos::boot" "-Wl,--no-whole-archive" ) set_target_properties("kernel" PROPERTIES CXX_EXTENSIONS OFF CXX_STANDARD_REQUIRED YES LINK_DEPENDS "${TEACHOS_KERNEL_LINKER_SCRIPT}" )