mirror of
https://github.com/Leonmmcoset/cleonos.git
synced 2026-04-24 11:14:01 +00:00
继续拆分
This commit is contained in:
263
CMakeLists.txt
263
CMakeLists.txt
@@ -138,7 +138,6 @@ set(LIMINE_SETUP_STAMP "${LIMINE_DIR_ABS}/.cleonos-limine-setup.stamp")
|
||||
set(LIMINE_BUILD_STAMP "${LIMINE_DIR_ABS}/.cleonos-limine-build.stamp")
|
||||
|
||||
set(CLKS_ARCH "x86_64" CACHE STRING "Target CLKS arch")
|
||||
set(LINKER_SCRIPT "${CMAKE_SOURCE_DIR}/clks/arch/${CLKS_ARCH}/linker.ld")
|
||||
set(USER_LINKER_SCRIPT "${CMAKE_SOURCE_DIR}/cleonos/c/user.ld")
|
||||
set(KELF_LINKER_SCRIPT "${CMAKE_SOURCE_DIR}/cleonos/c/kelf.ld")
|
||||
set(CLEONOS_MENUCONFIG_CMAKE "${CMAKE_SOURCE_DIR}/configs/menuconfig/config.cmake" CACHE FILEPATH "menuconfig generated CMake config")
|
||||
@@ -148,231 +147,7 @@ if(EXISTS "${CLEONOS_MENUCONFIG_CMAKE}")
|
||||
cl_log_info("menuconfig loaded from ${CLEONOS_MENUCONFIG_CMAKE}")
|
||||
endif()
|
||||
|
||||
function(cl_set_bool_cache VAR_NAME DEFAULT_VALUE DOC_TEXT)
|
||||
set(_raw_value "")
|
||||
set(_has_value OFF)
|
||||
|
||||
if(DEFINED ${VAR_NAME})
|
||||
set(_raw_value "${${VAR_NAME}}")
|
||||
set(_has_value ON)
|
||||
elseif(DEFINED ${VAR_NAME}_IS_ENABLED)
|
||||
set(_raw_value "${${VAR_NAME}_IS_ENABLED}")
|
||||
set(_has_value ON)
|
||||
endif()
|
||||
|
||||
if(NOT _has_value)
|
||||
set(${VAR_NAME} ${DEFAULT_VALUE} CACHE BOOL "${DOC_TEXT}")
|
||||
else()
|
||||
string(TOUPPER "${_raw_value}" _raw_upper)
|
||||
if(_raw_upper STREQUAL "Y" OR _raw_upper STREQUAL "M" OR _raw_upper STREQUAL "ON" OR _raw_upper STREQUAL "TRUE" OR _raw_upper STREQUAL "1")
|
||||
set(_bool_value ON)
|
||||
else()
|
||||
set(_bool_value OFF)
|
||||
endif()
|
||||
set(${VAR_NAME} ${_bool_value} CACHE BOOL "${DOC_TEXT}" FORCE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(cl_bool_to_int BOOL_VAR OUT_VAR)
|
||||
if(${BOOL_VAR})
|
||||
set(${OUT_VAR} 1 PARENT_SCOPE)
|
||||
else()
|
||||
set(${OUT_VAR} 0 PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_AUDIO ON "Initialize kernel audio subsystem")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_MOUSE ON "Initialize kernel mouse subsystem")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_DESKTOP ON "Initialize desktop compositor subsystem")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_DRIVER_MANAGER ON "Initialize kernel driver manager")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KELF ON "Enable KELF app dispatcher")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USERLAND_AUTO_EXEC ON "Auto exec /shell/shell.elf on boot")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_HEAP_SELFTEST ON "Run heap selftest at boot")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_EXTERNAL_PSF ON "Load /system/tty.psf external font")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KEYBOARD ON "Initialize keyboard input subsystem")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_ELFRUNNER_PROBE ON "Run ELFRUNNER kernel ELF probe")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KLOGD_TASK ON "Enable scheduler klogd task")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KWORKER_TASK ON "Enable scheduler kworker task")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USRD_TASK ON "Enable scheduler usrd task")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_BOOT_VIDEO_LOG ON "Print boot framebuffer geometry logs")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_PMM_STATS_LOG ON "Print PMM stats logs")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_HEAP_STATS_LOG ON "Print heap stats logs")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_FS_ROOT_LOG ON "Print root children FS log")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_SYSTEM_DIR_CHECK ON "Require /system directory sanity check")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_ELFRUNNER_INIT ON "Initialize ELFRUNNER framework")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_SYSCALL_TICK_QUERY ON "Query syscall timer ticks at boot")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_TTY_READY_LOG ON "Print TTY ready logs")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_IDLE_DEBUG_LOG ON "Print idle loop debug log")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_PROCFS ON "Enable virtual /proc procfs syscall layer")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_EXEC_SERIAL_LOG ON "Enable EXEC info logs on serial output")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC ON "Enable UserSafeController dangerous syscall confirmations")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_FS_MKDIR ON "USC intercept policy: FS_MKDIR")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_FS_WRITE ON "USC intercept policy: FS_WRITE")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_FS_APPEND ON "USC intercept policy: FS_APPEND")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_FS_REMOVE ON "USC intercept policy: FS_REMOVE")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATH ON "USC intercept policy: EXEC_PATH")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV ON "USC intercept policy: EXEC_PATHV")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV_IO ON "USC intercept policy: EXEC_PATHV_IO")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATH ON "USC intercept policy: SPAWN_PATH")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATHV ON "USC intercept policy: SPAWN_PATHV")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_PROC_KILL ON "USC intercept policy: PROC_KILL")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_SHUTDOWN ON "USC intercept policy: SHUTDOWN")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USC_SC_RESTART ON "USC intercept policy: RESTART")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KBD_TTY_SWITCH_HOTKEY ON "Enable ALT+F1..F4 TTY switch hotkey")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KBD_CTRL_SHORTCUTS ON "Enable Ctrl+A/C/V keyboard shortcuts")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_KBD_FORCE_STOP_HOTKEY ON "Enable Ctrl+Alt+C force-stop hotkey")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USER_INIT_SCRIPT_PROBE ON "Probe /shell/init.cmd during userland init")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_USER_SYSTEM_APP_PROBE ON "Probe /system apps (elfrunner/memc) during userland init")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_SCHED_TASK_COUNT_LOG ON "Print scheduler task count during boot")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_INTERRUPT_READY_LOG ON "Print interrupt ready log after IDT/PIC init")
|
||||
cl_set_bool_cache(CLEONOS_CLKS_ENABLE_SHELL_MODE_LOG ON "Print default shell mode log during boot")
|
||||
|
||||
if(NOT CLEONOS_ENABLE)
|
||||
set(CLEONOS_CLKS_ENABLE_KELF OFF CACHE BOOL "Enable KELF app dispatcher" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USERLAND_AUTO_EXEC OFF CACHE BOOL "Auto exec /shell/shell.elf on boot" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USER_INIT_SCRIPT_PROBE OFF CACHE BOOL "Probe /shell/init.cmd during userland init" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USER_SYSTEM_APP_PROBE OFF CACHE BOOL "Probe /system apps (elfrunner/memc) during userland init" FORCE)
|
||||
endif()
|
||||
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_AUDIO CLKS_CFG_AUDIO_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_MOUSE CLKS_CFG_MOUSE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_DESKTOP CLKS_CFG_DESKTOP_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_DRIVER_MANAGER CLKS_CFG_DRIVER_MANAGER_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KELF CLKS_CFG_KELF_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USERLAND_AUTO_EXEC CLKS_CFG_USERLAND_AUTO_EXEC_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_HEAP_SELFTEST CLKS_CFG_HEAP_SELFTEST_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_EXTERNAL_PSF CLKS_CFG_EXTERNAL_PSF_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KEYBOARD CLKS_CFG_KEYBOARD_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_ELFRUNNER_PROBE CLKS_CFG_ELFRUNNER_PROBE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KLOGD_TASK CLKS_CFG_KLOGD_TASK_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KWORKER_TASK CLKS_CFG_KWORKER_TASK_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USRD_TASK CLKS_CFG_USRD_TASK_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_BOOT_VIDEO_LOG CLKS_CFG_BOOT_VIDEO_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_PMM_STATS_LOG CLKS_CFG_PMM_STATS_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_HEAP_STATS_LOG CLKS_CFG_HEAP_STATS_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_FS_ROOT_LOG CLKS_CFG_FS_ROOT_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_SYSTEM_DIR_CHECK CLKS_CFG_SYSTEM_DIR_CHECK_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_ELFRUNNER_INIT CLKS_CFG_ELFRUNNER_INIT_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_SYSCALL_TICK_QUERY CLKS_CFG_SYSCALL_TICK_QUERY_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_TTY_READY_LOG CLKS_CFG_TTY_READY_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_IDLE_DEBUG_LOG CLKS_CFG_IDLE_DEBUG_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_PROCFS CLKS_CFG_PROCFS_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_EXEC_SERIAL_LOG CLKS_CFG_EXEC_SERIAL_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC CLKS_CFG_USC_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_FS_MKDIR CLKS_CFG_USC_SC_FS_MKDIR_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_FS_WRITE CLKS_CFG_USC_SC_FS_WRITE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_FS_APPEND CLKS_CFG_USC_SC_FS_APPEND_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_FS_REMOVE CLKS_CFG_USC_SC_FS_REMOVE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATH CLKS_CFG_USC_SC_EXEC_PATH_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV CLKS_CFG_USC_SC_EXEC_PATHV_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV_IO CLKS_CFG_USC_SC_EXEC_PATHV_IO_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATH CLKS_CFG_USC_SC_SPAWN_PATH_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATHV CLKS_CFG_USC_SC_SPAWN_PATHV_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_PROC_KILL CLKS_CFG_USC_SC_PROC_KILL_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_SHUTDOWN CLKS_CFG_USC_SC_SHUTDOWN_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USC_SC_RESTART CLKS_CFG_USC_SC_RESTART_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KBD_TTY_SWITCH_HOTKEY CLKS_CFG_KBD_TTY_SWITCH_HOTKEY_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KBD_CTRL_SHORTCUTS CLKS_CFG_KBD_CTRL_SHORTCUTS_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_KBD_FORCE_STOP_HOTKEY CLKS_CFG_KBD_FORCE_STOP_HOTKEY_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USER_INIT_SCRIPT_PROBE CLKS_CFG_USER_INIT_SCRIPT_PROBE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_USER_SYSTEM_APP_PROBE CLKS_CFG_USER_SYSTEM_APP_PROBE_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_SCHED_TASK_COUNT_LOG CLKS_CFG_SCHED_TASK_COUNT_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_INTERRUPT_READY_LOG CLKS_CFG_INTERRUPT_READY_LOG_INT)
|
||||
cl_bool_to_int(CLEONOS_CLKS_ENABLE_SHELL_MODE_LOG CLKS_CFG_SHELL_MODE_LOG_INT)
|
||||
|
||||
set(CFLAGS_COMMON
|
||||
-std=c11
|
||||
-ffreestanding
|
||||
-fno-stack-protector
|
||||
-fno-builtin
|
||||
-g
|
||||
-Wall
|
||||
-Wextra
|
||||
-Werror
|
||||
"-I${CMAKE_SOURCE_DIR}/clks/include"
|
||||
)
|
||||
|
||||
set(CXXFLAGS_COMMON
|
||||
-std=c++17
|
||||
-ffreestanding
|
||||
-fno-stack-protector
|
||||
-fno-builtin
|
||||
-fno-exceptions
|
||||
-fno-rtti
|
||||
-fno-threadsafe-statics
|
||||
-fno-use-cxa-atexit
|
||||
-g
|
||||
-Wall
|
||||
-Wextra
|
||||
-Werror
|
||||
"-I${CMAKE_SOURCE_DIR}/clks/include"
|
||||
)
|
||||
|
||||
set(ARCH_CFLAGS
|
||||
-DCLKS_ARCH_X86_64=1
|
||||
"-DCLKS_CFG_AUDIO=${CLKS_CFG_AUDIO_INT}"
|
||||
"-DCLKS_CFG_MOUSE=${CLKS_CFG_MOUSE_INT}"
|
||||
"-DCLKS_CFG_DESKTOP=${CLKS_CFG_DESKTOP_INT}"
|
||||
"-DCLKS_CFG_DRIVER_MANAGER=${CLKS_CFG_DRIVER_MANAGER_INT}"
|
||||
"-DCLKS_CFG_KELF=${CLKS_CFG_KELF_INT}"
|
||||
"-DCLKS_CFG_USERLAND_AUTO_EXEC=${CLKS_CFG_USERLAND_AUTO_EXEC_INT}"
|
||||
"-DCLKS_CFG_HEAP_SELFTEST=${CLKS_CFG_HEAP_SELFTEST_INT}"
|
||||
"-DCLKS_CFG_EXTERNAL_PSF=${CLKS_CFG_EXTERNAL_PSF_INT}"
|
||||
"-DCLKS_CFG_KEYBOARD=${CLKS_CFG_KEYBOARD_INT}"
|
||||
"-DCLKS_CFG_ELFRUNNER_PROBE=${CLKS_CFG_ELFRUNNER_PROBE_INT}"
|
||||
"-DCLKS_CFG_KLOGD_TASK=${CLKS_CFG_KLOGD_TASK_INT}"
|
||||
"-DCLKS_CFG_KWORKER_TASK=${CLKS_CFG_KWORKER_TASK_INT}"
|
||||
"-DCLKS_CFG_USRD_TASK=${CLKS_CFG_USRD_TASK_INT}"
|
||||
"-DCLKS_CFG_BOOT_VIDEO_LOG=${CLKS_CFG_BOOT_VIDEO_LOG_INT}"
|
||||
"-DCLKS_CFG_PMM_STATS_LOG=${CLKS_CFG_PMM_STATS_LOG_INT}"
|
||||
"-DCLKS_CFG_HEAP_STATS_LOG=${CLKS_CFG_HEAP_STATS_LOG_INT}"
|
||||
"-DCLKS_CFG_FS_ROOT_LOG=${CLKS_CFG_FS_ROOT_LOG_INT}"
|
||||
"-DCLKS_CFG_SYSTEM_DIR_CHECK=${CLKS_CFG_SYSTEM_DIR_CHECK_INT}"
|
||||
"-DCLKS_CFG_ELFRUNNER_INIT=${CLKS_CFG_ELFRUNNER_INIT_INT}"
|
||||
"-DCLKS_CFG_SYSCALL_TICK_QUERY=${CLKS_CFG_SYSCALL_TICK_QUERY_INT}"
|
||||
"-DCLKS_CFG_TTY_READY_LOG=${CLKS_CFG_TTY_READY_LOG_INT}"
|
||||
"-DCLKS_CFG_IDLE_DEBUG_LOG=${CLKS_CFG_IDLE_DEBUG_LOG_INT}"
|
||||
"-DCLKS_CFG_PROCFS=${CLKS_CFG_PROCFS_INT}"
|
||||
"-DCLKS_CFG_EXEC_SERIAL_LOG=${CLKS_CFG_EXEC_SERIAL_LOG_INT}"
|
||||
"-DCLKS_CFG_USC=${CLKS_CFG_USC_INT}"
|
||||
"-DCLKS_CFG_USC_SC_FS_MKDIR=${CLKS_CFG_USC_SC_FS_MKDIR_INT}"
|
||||
"-DCLKS_CFG_USC_SC_FS_WRITE=${CLKS_CFG_USC_SC_FS_WRITE_INT}"
|
||||
"-DCLKS_CFG_USC_SC_FS_APPEND=${CLKS_CFG_USC_SC_FS_APPEND_INT}"
|
||||
"-DCLKS_CFG_USC_SC_FS_REMOVE=${CLKS_CFG_USC_SC_FS_REMOVE_INT}"
|
||||
"-DCLKS_CFG_USC_SC_EXEC_PATH=${CLKS_CFG_USC_SC_EXEC_PATH_INT}"
|
||||
"-DCLKS_CFG_USC_SC_EXEC_PATHV=${CLKS_CFG_USC_SC_EXEC_PATHV_INT}"
|
||||
"-DCLKS_CFG_USC_SC_EXEC_PATHV_IO=${CLKS_CFG_USC_SC_EXEC_PATHV_IO_INT}"
|
||||
"-DCLKS_CFG_USC_SC_SPAWN_PATH=${CLKS_CFG_USC_SC_SPAWN_PATH_INT}"
|
||||
"-DCLKS_CFG_USC_SC_SPAWN_PATHV=${CLKS_CFG_USC_SC_SPAWN_PATHV_INT}"
|
||||
"-DCLKS_CFG_USC_SC_PROC_KILL=${CLKS_CFG_USC_SC_PROC_KILL_INT}"
|
||||
"-DCLKS_CFG_USC_SC_SHUTDOWN=${CLKS_CFG_USC_SC_SHUTDOWN_INT}"
|
||||
"-DCLKS_CFG_USC_SC_RESTART=${CLKS_CFG_USC_SC_RESTART_INT}"
|
||||
"-DCLKS_CFG_KBD_TTY_SWITCH_HOTKEY=${CLKS_CFG_KBD_TTY_SWITCH_HOTKEY_INT}"
|
||||
"-DCLKS_CFG_KBD_CTRL_SHORTCUTS=${CLKS_CFG_KBD_CTRL_SHORTCUTS_INT}"
|
||||
"-DCLKS_CFG_KBD_FORCE_STOP_HOTKEY=${CLKS_CFG_KBD_FORCE_STOP_HOTKEY_INT}"
|
||||
"-DCLKS_CFG_USER_INIT_SCRIPT_PROBE=${CLKS_CFG_USER_INIT_SCRIPT_PROBE_INT}"
|
||||
"-DCLKS_CFG_USER_SYSTEM_APP_PROBE=${CLKS_CFG_USER_SYSTEM_APP_PROBE_INT}"
|
||||
"-DCLKS_CFG_SCHED_TASK_COUNT_LOG=${CLKS_CFG_SCHED_TASK_COUNT_LOG_INT}"
|
||||
"-DCLKS_CFG_INTERRUPT_READY_LOG=${CLKS_CFG_INTERRUPT_READY_LOG_INT}"
|
||||
"-DCLKS_CFG_SHELL_MODE_LOG=${CLKS_CFG_SHELL_MODE_LOG_INT}"
|
||||
-m64
|
||||
-mno-red-zone
|
||||
-mcmodel=kernel
|
||||
-fno-pic
|
||||
-fno-pie
|
||||
)
|
||||
|
||||
set(ASFLAGS_COMMON
|
||||
-ffreestanding
|
||||
"-I${CMAKE_SOURCE_DIR}/clks/include"
|
||||
)
|
||||
|
||||
set(LDFLAGS_COMMON
|
||||
-nostdlib
|
||||
-z
|
||||
max-page-size=0x1000
|
||||
)
|
||||
|
||||
# CLKS compile flags and feature-to-macro expansion now live in the CLKS submodule build system.
|
||||
set(USER_CFLAGS
|
||||
-std=c11
|
||||
-ffreestanding
|
||||
@@ -422,7 +197,41 @@ if(NOT CLKS_ARCH STREQUAL "x86_64")
|
||||
cl_log_error("CLKS_ARCH=${CLKS_ARCH} is not supported by this CMake build yet; use x86_64")
|
||||
endif()
|
||||
|
||||
include("${CMAKE_SOURCE_DIR}/clks/CMakeLists.txt")
|
||||
set(CLKS_SOURCE_DIR "${CMAKE_SOURCE_DIR}/clks")
|
||||
set(CLKS_CMAKE_BUILD_DIR "${CMAKE_BINARY_DIR}/clks-cmake")
|
||||
if(NOT EXISTS "${CLKS_SOURCE_DIR}/CMakeLists.txt")
|
||||
cl_log_error("missing CLKS submodule CMakeLists: ${CLKS_SOURCE_DIR}/CMakeLists.txt")
|
||||
endif()
|
||||
|
||||
set(CLKS_SUBMODULE_CMAKE_ARGS
|
||||
"-DNO_COLOR=${NO_COLOR}"
|
||||
"-DCLKS_ARCH=${CLKS_ARCH}"
|
||||
"-DCLKS_BUILD_ROOT=${BUILD_ROOT}"
|
||||
"-DCLKS_MENUCONFIG_CMAKE=${CMAKE_SOURCE_DIR}/configs/menuconfig/config.cmake"
|
||||
"-DCC=${CC}"
|
||||
"-DKERNEL_CXX=${KERNEL_CXX}"
|
||||
"-DLD=${LD}"
|
||||
"-DRUSTC=${RUSTC}"
|
||||
"-DNM=${NM}"
|
||||
"-DADDR2LINE=${ADDR2LINE}"
|
||||
"-DOBJCOPY_FOR_TARGET=${OBJCOPY_FOR_TARGET}"
|
||||
"-DOBJDUMP_FOR_TARGET=${OBJDUMP_FOR_TARGET}"
|
||||
"-DREADELF_FOR_TARGET=${READELF_FOR_TARGET}"
|
||||
)
|
||||
|
||||
add_custom_target(kernel
|
||||
COMMAND ${CMAKE_COMMAND} -S "${CLKS_SOURCE_DIR}" -B "${CLKS_CMAKE_BUILD_DIR}" ${CLKS_SUBMODULE_CMAKE_ARGS}
|
||||
COMMAND ${CMAKE_COMMAND} --build "${CLKS_CMAKE_BUILD_DIR}" --target kernel
|
||||
USES_TERMINAL
|
||||
)
|
||||
|
||||
add_custom_target(kernel-symbols
|
||||
COMMAND ${CMAKE_COMMAND} -S "${CLKS_SOURCE_DIR}" -B "${CLKS_CMAKE_BUILD_DIR}" ${CLKS_SUBMODULE_CMAKE_ARGS}
|
||||
COMMAND ${CMAKE_COMMAND} --build "${CLKS_CMAKE_BUILD_DIR}" --target kernel-symbols
|
||||
USES_TERMINAL
|
||||
)
|
||||
add_dependencies(kernel-symbols kernel)
|
||||
|
||||
if(CLEONOS_ENABLE)
|
||||
include("${CMAKE_SOURCE_DIR}/cleonos/CMakeLists.txt")
|
||||
endif()
|
||||
|
||||
@@ -20,7 +20,7 @@ Experimental x86_64 operating system project with a C kernel, Rust-assisted runt
|
||||
|
||||
```text
|
||||
.
|
||||
|- clks/ # Kernel sources (arch, drivers, scheduler, tty, syscall, ...)
|
||||
|- clks/ # CLKS kernel submodule (standalone kernel repository)
|
||||
|- cleonos/ # Userland runtime, libc-like layer, user apps, Rust user library
|
||||
|- ramdisk/ # Static files copied into runtime ramdisk
|
||||
|- configs/ # Boot configuration (Limine)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
```text
|
||||
.
|
||||
|- clks/ # 内核源码(架构、驱动、调度、TTY、syscall 等)
|
||||
|- clks/ # CLKS 内核子模块(独立内核仓库)
|
||||
|- cleonos/ # 用户态运行时、基础库、用户应用、Rust 用户库
|
||||
|- ramdisk/ # 运行时 ramdisk 的静态文件
|
||||
|- configs/ # 启动配置(Limine)
|
||||
|
||||
@@ -311,12 +311,13 @@ add_custom_command(
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${KERNEL_SYMBOLS_FILE}" "${RAMDISK_ROOT}/system/kernel.sym"
|
||||
${RAMDISK_COPY_COMMANDS}
|
||||
COMMAND ${CMAKE_COMMAND} -E touch "${RAMDISK_ROOT_STAMP}"
|
||||
DEPENDS ${RAMDISK_FILES} ${USER_APP_OUTPUTS} "${KERNEL_SYMBOLS_FILE}"
|
||||
DEPENDS ${RAMDISK_FILES} ${USER_APP_OUTPUTS} kernel-symbols
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
add_custom_target(ramdisk-root DEPENDS "${RAMDISK_ROOT_STAMP}")
|
||||
add_dependencies(ramdisk-root userapps)
|
||||
add_dependencies(ramdisk-root kernel-symbols)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${RAMDISK_IMAGE}"
|
||||
|
||||
2
clks
2
clks
Submodule clks updated: 6a7f0cbdef...6bc15d6aba
70
configs/menuconfig/.config.cleonos.json
Normal file
70
configs/menuconfig/.config.cleonos.json
Normal file
@@ -0,0 +1,70 @@
|
||||
{
|
||||
"CLEONOS_USER_APP_ANSI": true,
|
||||
"CLEONOS_USER_APP_ANSITEST": true,
|
||||
"CLEONOS_USER_APP_APPEND": true,
|
||||
"CLEONOS_USER_APP_ARGS": true,
|
||||
"CLEONOS_USER_APP_BG": true,
|
||||
"CLEONOS_USER_APP_BMPVIEW": true,
|
||||
"CLEONOS_USER_APP_CAT": true,
|
||||
"CLEONOS_USER_APP_CD": true,
|
||||
"CLEONOS_USER_APP_CLEAR": true,
|
||||
"CLEONOS_USER_APP_CP": true,
|
||||
"CLEONOS_USER_APP_CUT": true,
|
||||
"CLEONOS_USER_APP_DISKINFO": true,
|
||||
"CLEONOS_USER_APP_DLTEST": true,
|
||||
"CLEONOS_USER_APP_DMESG": true,
|
||||
"CLEONOS_USER_APP_DOOM": true,
|
||||
"CLEONOS_USER_APP_ELFRUNNER": true,
|
||||
"CLEONOS_USER_APP_EXEC": true,
|
||||
"CLEONOS_USER_APP_EXIT": true,
|
||||
"CLEONOS_USER_APP_FASTFETCH": true,
|
||||
"CLEONOS_USER_APP_FG": true,
|
||||
"CLEONOS_USER_APP_FSSTAT": true,
|
||||
"CLEONOS_USER_APP_GREP": true,
|
||||
"CLEONOS_USER_APP_HEAD": true,
|
||||
"CLEONOS_USER_APP_HELLO": true,
|
||||
"CLEONOS_USER_APP_HELP": true,
|
||||
"CLEONOS_USER_APP_JOBS": true,
|
||||
"CLEONOS_USER_APP_KBDSTAT": true,
|
||||
"CLEONOS_USER_APP_KDBG": true,
|
||||
"CLEONOS_USER_APP_KILL": true,
|
||||
"CLEONOS_USER_APP_LIBCTEST": true,
|
||||
"CLEONOS_USER_APP_LIBDEMO": true,
|
||||
"CLEONOS_USER_APP_LS": true,
|
||||
"CLEONOS_USER_APP_MEMC": true,
|
||||
"CLEONOS_USER_APP_MEMSTAT": true,
|
||||
"CLEONOS_USER_APP_MKDIR": true,
|
||||
"CLEONOS_USER_APP_MKFSFAT32": true,
|
||||
"CLEONOS_USER_APP_MOUNT": true,
|
||||
"CLEONOS_USER_APP_MV": true,
|
||||
"CLEONOS_USER_APP_PARTCTL": true,
|
||||
"CLEONOS_USER_APP_PID": true,
|
||||
"CLEONOS_USER_APP_PROCSTAT": true,
|
||||
"CLEONOS_USER_APP_PS": true,
|
||||
"CLEONOS_USER_APP_PWD": true,
|
||||
"CLEONOS_USER_APP_QRCODE": true,
|
||||
"CLEONOS_USER_APP_RESTART": true,
|
||||
"CLEONOS_USER_APP_RM": true,
|
||||
"CLEONOS_USER_APP_SHELL": true,
|
||||
"CLEONOS_USER_APP_SHSTAT": true,
|
||||
"CLEONOS_USER_APP_SHUTDOWN": true,
|
||||
"CLEONOS_USER_APP_SLEEP": true,
|
||||
"CLEONOS_USER_APP_SORT": true,
|
||||
"CLEONOS_USER_APP_SPAWN": true,
|
||||
"CLEONOS_USER_APP_SPIN": true,
|
||||
"CLEONOS_USER_APP_STATS": true,
|
||||
"CLEONOS_USER_APP_SYSSTAT": true,
|
||||
"CLEONOS_USER_APP_TAIL": true,
|
||||
"CLEONOS_USER_APP_TASKSTAT": true,
|
||||
"CLEONOS_USER_APP_TOP": true,
|
||||
"CLEONOS_USER_APP_TOUCH": true,
|
||||
"CLEONOS_USER_APP_TTY": true,
|
||||
"CLEONOS_USER_APP_TTYDRV": true,
|
||||
"CLEONOS_USER_APP_UNIQ": true,
|
||||
"CLEONOS_USER_APP_USERSTAT": true,
|
||||
"CLEONOS_USER_APP_WAIT": true,
|
||||
"CLEONOS_USER_APP_WAVPLAY": true,
|
||||
"CLEONOS_USER_APP_WC": true,
|
||||
"CLEONOS_USER_APP_WRITE": true,
|
||||
"CLEONOS_USER_APP_YIELD": true
|
||||
}
|
||||
47
configs/menuconfig/.config.clks.json
Normal file
47
configs/menuconfig/.config.clks.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"CLEONOS_CLKS_ENABLE_AUDIO": true,
|
||||
"CLEONOS_CLKS_ENABLE_BOOT_VIDEO_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_DESKTOP": true,
|
||||
"CLEONOS_CLKS_ENABLE_DRIVER_MANAGER": true,
|
||||
"CLEONOS_CLKS_ENABLE_ELFRUNNER_INIT": true,
|
||||
"CLEONOS_CLKS_ENABLE_ELFRUNNER_PROBE": true,
|
||||
"CLEONOS_CLKS_ENABLE_EXEC_SERIAL_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_EXTERNAL_PSF": true,
|
||||
"CLEONOS_CLKS_ENABLE_FS_ROOT_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_HEAP_SELFTEST": true,
|
||||
"CLEONOS_CLKS_ENABLE_HEAP_STATS_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_IDLE_DEBUG_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_INTERRUPT_READY_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_KBD_CTRL_SHORTCUTS": true,
|
||||
"CLEONOS_CLKS_ENABLE_KBD_FORCE_STOP_HOTKEY": true,
|
||||
"CLEONOS_CLKS_ENABLE_KBD_TTY_SWITCH_HOTKEY": true,
|
||||
"CLEONOS_CLKS_ENABLE_KELF": true,
|
||||
"CLEONOS_CLKS_ENABLE_KEYBOARD": true,
|
||||
"CLEONOS_CLKS_ENABLE_KLOGD_TASK": true,
|
||||
"CLEONOS_CLKS_ENABLE_KWORKER_TASK": true,
|
||||
"CLEONOS_CLKS_ENABLE_MOUSE": true,
|
||||
"CLEONOS_CLKS_ENABLE_PMM_STATS_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_PROCFS": true,
|
||||
"CLEONOS_CLKS_ENABLE_SCHED_TASK_COUNT_LOG": "y",
|
||||
"CLEONOS_CLKS_ENABLE_SHELL_MODE_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_SYSCALL_TICK_QUERY": true,
|
||||
"CLEONOS_CLKS_ENABLE_SYSTEM_DIR_CHECK": true,
|
||||
"CLEONOS_CLKS_ENABLE_TTY_READY_LOG": "m",
|
||||
"CLEONOS_CLKS_ENABLE_USC": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATH": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV_IO": false,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_FS_APPEND": false,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_FS_MKDIR": false,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_FS_REMOVE": false,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_FS_WRITE": false,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_PROC_KILL": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_RESTART": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_SHUTDOWN": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATH": true,
|
||||
"CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATHV": true,
|
||||
"CLEONOS_CLKS_ENABLE_USERLAND_AUTO_EXEC": true,
|
||||
"CLEONOS_CLKS_ENABLE_USER_INIT_SCRIPT_PROBE": true,
|
||||
"CLEONOS_CLKS_ENABLE_USER_SYSTEM_APP_PROBE": true,
|
||||
"CLEONOS_CLKS_ENABLE_USRD_TASK": true
|
||||
}
|
||||
71
configs/menuconfig/config.cleonos.cmake
Normal file
71
configs/menuconfig/config.cleonos.cmake
Normal file
@@ -0,0 +1,71 @@
|
||||
# Auto-generated by scripts/menuconfig.py
|
||||
# Do not edit manually unless you know what you are doing.
|
||||
set(CLEONOS_MENUCONFIG_CLEONOS_LOADED ON CACHE BOOL "CLeonOS menuconfig loaded" FORCE)
|
||||
set(CLEONOS_USER_APP_TTYDRV ON CACHE BOOL "ttydrv.elf [driver]" FORCE)
|
||||
set(CLEONOS_USER_APP_HELLO ON CACHE BOOL "hello.elf [root]" FORCE)
|
||||
set(CLEONOS_USER_APP_ANSI ON CACHE BOOL "ansi.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_ANSITEST ON CACHE BOOL "ansitest.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_APPEND ON CACHE BOOL "append.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_ARGS ON CACHE BOOL "args.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_BG ON CACHE BOOL "bg.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_BMPVIEW ON CACHE BOOL "bmpview.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_CAT ON CACHE BOOL "cat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_CD ON CACHE BOOL "cd.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_CLEAR ON CACHE BOOL "clear.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_CP ON CACHE BOOL "cp.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_CUT ON CACHE BOOL "cut.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_DISKINFO ON CACHE BOOL "diskinfo.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_DLTEST ON CACHE BOOL "dltest.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_DMESG ON CACHE BOOL "dmesg.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_DOOM ON CACHE BOOL "doom.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_EXEC ON CACHE BOOL "exec.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_EXIT ON CACHE BOOL "exit.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_FASTFETCH ON CACHE BOOL "fastfetch.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_FG ON CACHE BOOL "fg.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_FSSTAT ON CACHE BOOL "fsstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_GREP ON CACHE BOOL "grep.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_HEAD ON CACHE BOOL "head.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_HELP ON CACHE BOOL "help.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_JOBS ON CACHE BOOL "jobs.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_KBDSTAT ON CACHE BOOL "kbdstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_KDBG ON CACHE BOOL "kdbg.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_KILL ON CACHE BOOL "kill.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_LIBCTEST ON CACHE BOOL "libctest.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_LIBDEMO ON CACHE BOOL "libdemo.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_LS ON CACHE BOOL "ls.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_MEMSTAT ON CACHE BOOL "memstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_MKDIR ON CACHE BOOL "mkdir.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_MKFSFAT32 ON CACHE BOOL "mkfsfat32.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_MOUNT ON CACHE BOOL "mount.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_MV ON CACHE BOOL "mv.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_PARTCTL ON CACHE BOOL "partctl.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_PID ON CACHE BOOL "pid.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_PROCSTAT ON CACHE BOOL "procstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_PS ON CACHE BOOL "ps.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_PWD ON CACHE BOOL "pwd.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_QRCODE ON CACHE BOOL "qrcode.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_RESTART ON CACHE BOOL "restart.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_RM ON CACHE BOOL "rm.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SHELL ON CACHE BOOL "shell.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SHSTAT ON CACHE BOOL "shstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SHUTDOWN ON CACHE BOOL "shutdown.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SLEEP ON CACHE BOOL "sleep.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SORT ON CACHE BOOL "sort.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SPAWN ON CACHE BOOL "spawn.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SPIN ON CACHE BOOL "spin.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_STATS ON CACHE BOOL "stats.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_SYSSTAT ON CACHE BOOL "sysstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_TAIL ON CACHE BOOL "tail.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_TASKSTAT ON CACHE BOOL "taskstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_TOP ON CACHE BOOL "top.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_TOUCH ON CACHE BOOL "touch.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_TTY ON CACHE BOOL "tty.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_UNIQ ON CACHE BOOL "uniq.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_USERSTAT ON CACHE BOOL "userstat.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_WAIT ON CACHE BOOL "wait.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_WAVPLAY ON CACHE BOOL "wavplay.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_WC ON CACHE BOOL "wc.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_WRITE ON CACHE BOOL "write.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_YIELD ON CACHE BOOL "yield.elf [shell]" FORCE)
|
||||
set(CLEONOS_USER_APP_ELFRUNNER ON CACHE BOOL "elfrunner.elf [system]" FORCE)
|
||||
set(CLEONOS_USER_APP_MEMC ON CACHE BOOL "memc.elf [system]" FORCE)
|
||||
58
configs/menuconfig/config.clks.cmake
Normal file
58
configs/menuconfig/config.clks.cmake
Normal file
@@ -0,0 +1,58 @@
|
||||
# Auto-generated by scripts/menuconfig.py
|
||||
# Do not edit manually unless you know what you are doing.
|
||||
set(CLEONOS_MENUCONFIG_CLKS_LOADED ON CACHE BOOL "CLeonOS menuconfig loaded" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_AUDIO ON CACHE BOOL "Audio Driver Init" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_MOUSE ON CACHE BOOL "PS/2 Mouse Input" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_DESKTOP ON CACHE BOOL "TTY2 Desktop" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_DRIVER_MANAGER ON CACHE BOOL "Driver Manager" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KELF ON CACHE BOOL "KELF Executor" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USERLAND_AUTO_EXEC ON CACHE BOOL "Auto Enter User Shell" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_HEAP_SELFTEST ON CACHE BOOL "Heap Selftest" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_EXTERNAL_PSF ON CACHE BOOL "Load External PSF Font" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KEYBOARD ON CACHE BOOL "PS/2 Keyboard Input" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_ELFRUNNER_PROBE ON CACHE BOOL "ELFRUNNER Probe" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KLOGD_TASK ON CACHE BOOL "Scheduler Task: klogd" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KWORKER_TASK ON CACHE BOOL "Scheduler Task: kworker" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USRD_TASK ON CACHE BOOL "Scheduler Task: usrd" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_BOOT_VIDEO_LOG "M" CACHE STRING "Boot Video Geometry Logs" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_BOOT_VIDEO_LOG_IS_ENABLED ON CACHE BOOL "Boot Video Geometry Logs enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_PMM_STATS_LOG "M" CACHE STRING "PMM Stats Logs" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_PMM_STATS_LOG_IS_ENABLED ON CACHE BOOL "PMM Stats Logs enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_HEAP_STATS_LOG "M" CACHE STRING "Heap Stats Logs" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_HEAP_STATS_LOG_IS_ENABLED ON CACHE BOOL "Heap Stats Logs enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_FS_ROOT_LOG "M" CACHE STRING "FS Root Children Log" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_FS_ROOT_LOG_IS_ENABLED ON CACHE BOOL "FS Root Children Log enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SYSTEM_DIR_CHECK ON CACHE BOOL "FS /SYSTEM Sanity Check" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_ELFRUNNER_INIT ON CACHE BOOL "ELFRUNNER Init" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SYSCALL_TICK_QUERY ON CACHE BOOL "SYSCALL Tick Query" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_TTY_READY_LOG "M" CACHE STRING "TTY Ready Logs" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_TTY_READY_LOG_IS_ENABLED ON CACHE BOOL "TTY Ready Logs enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_IDLE_DEBUG_LOG "M" CACHE STRING "Idle Loop Debug Log" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_IDLE_DEBUG_LOG_IS_ENABLED ON CACHE BOOL "Idle Loop Debug Log enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_PROCFS ON CACHE BOOL "Virtual /proc" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_EXEC_SERIAL_LOG "M" CACHE STRING "EXEC Serial Logs" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_EXEC_SERIAL_LOG_IS_ENABLED ON CACHE BOOL "EXEC Serial Logs enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC ON CACHE BOOL "UserSafeController (USC)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_FS_MKDIR OFF CACHE BOOL "Intercept FS_MKDIR" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_FS_WRITE OFF CACHE BOOL "Intercept FS_WRITE" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_FS_APPEND OFF CACHE BOOL "Intercept FS_APPEND" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_FS_REMOVE OFF CACHE BOOL "Intercept FS_REMOVE" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATH ON CACHE BOOL "Intercept EXEC_PATH" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV ON CACHE BOOL "Intercept EXEC_PATHV" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_EXEC_PATHV_IO OFF CACHE BOOL "Intercept EXEC_PATHV_IO" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATH ON CACHE BOOL "Intercept SPAWN_PATH" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_SPAWN_PATHV ON CACHE BOOL "Intercept SPAWN_PATHV" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_PROC_KILL ON CACHE BOOL "Intercept PROC_KILL" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_SHUTDOWN ON CACHE BOOL "Intercept SHUTDOWN" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USC_SC_RESTART ON CACHE BOOL "Intercept RESTART" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KBD_TTY_SWITCH_HOTKEY ON CACHE BOOL "Keyboard TTY Switch Hotkey" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KBD_CTRL_SHORTCUTS ON CACHE BOOL "Keyboard Ctrl Shortcuts" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_KBD_FORCE_STOP_HOTKEY ON CACHE BOOL "Keyboard Force-Stop Hotkey" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USER_INIT_SCRIPT_PROBE ON CACHE BOOL "User Init Script Probe" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_USER_SYSTEM_APP_PROBE ON CACHE BOOL "User System App Probe" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SCHED_TASK_COUNT_LOG "Y" CACHE STRING "Scheduler Task Count Log" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SCHED_TASK_COUNT_LOG_IS_ENABLED ON CACHE BOOL "Scheduler Task Count Log enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_INTERRUPT_READY_LOG "M" CACHE STRING "Interrupt Ready Log" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_INTERRUPT_READY_LOG_IS_ENABLED ON CACHE BOOL "Interrupt Ready Log enabled(y|m)" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SHELL_MODE_LOG "M" CACHE STRING "Shell Mode Log" FORCE)
|
||||
set(CLEONOS_CLKS_ENABLE_SHELL_MODE_LOG_IS_ENABLED ON CACHE BOOL "Shell Mode Log enabled(y|m)" FORCE)
|
||||
Reference in New Issue
Block a user