wip: IPC and Runtime

This commit is contained in:
karina
2026-05-03 21:57:20 +04:00
parent 5f343c991b
commit 39b2af7626
25 changed files with 371 additions and 66 deletions
+4
View File
@@ -56,3 +56,7 @@ find_program(LLVM_OBJCOPY NAMES llvm-objcopy objcopy
/opt/homebrew/bin
REQUIRED
)
set(CMAKE_C_FLAGS_INIT "-ffreestanding -mgeneral-regs-only -std=c23")
set(CMAKE_EXE_LINKER_FLAGS_INIT "-nostdlib -static -no-pie -z max-page-size=0x1000 --no-dynamic-linker -T ${CMAKE_CURRENT_LIST_DIR}/linker.ld -Ttext=0x400000")
+29
View File
@@ -0,0 +1,29 @@
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright (c) 2026 0xKSor
set(KSOS_SYSROOT_SRC "${CMAKE_CURRENT_LIST_DIR}/..")
set(BUILD_DIR $ENV{BUILD_DIR})
if(NOT BUILD_DIR)
set(BUILD_DIR "${CMAKE_CURRENT_LIST_DIR}/../../.build")
endif()
set(KSOS_LIB_DIR "${BUILD_DIR}/Runtime/System/libksOS")
function(add_ksos_executable TARGET_NAME)
add_executable(${TARGET_NAME}
"${KSOS_SYSROOT_SRC}/System/libksOS/Source/crt0.S"
${ARGN}
)
target_include_directories(${TARGET_NAME} PRIVATE
"${KSOS_SYSROOT_SRC}/System/libksOS/Include"
)
target_link_directories(${TARGET_NAME} PRIVATE
"${KSOS_LIB_DIR}"
)
target_link_libraries(${TARGET_NAME} PRIVATE
ksOS
)
endfunction()