feat: setup gdt and idt and handle basic ISRs
This commit is contained in:
@@ -75,12 +75,26 @@ if (NOT IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/src/platform/${CMAKE_SYSTEM_PRO
|
||||
message(FATAL_ERROR "Unknown architecture ${CMAKE_CURRENT_SOURCE_DIR}/src/platform/${CMAKE_SYSTEM_PROCESSOR}")
|
||||
endif ()
|
||||
|
||||
file(GLOB PLATFORM_SPECIFIC_SOURCES src/platform/${CMAKE_SYSTEM_PROCESSOR}/*.c)
|
||||
file(GLOB PLATFORM_SPECIFIC_ASM_SOURCES src/platform/${CMAKE_SYSTEM_PROCESSOR}/*.asm)
|
||||
file(GLOB_RECURSE PLATFORM_SPECIFIC_SOURCES src/platform/${CMAKE_SYSTEM_PROCESSOR}/*.c)
|
||||
file(GLOB_RECURSE PLATFORM_SPECIFIC_ASM_SOURCES src/platform/${CMAKE_SYSTEM_PROCESSOR}/*.asm)
|
||||
|
||||
file(GLOB CRTI src/platform/generic/crt/crti.c)
|
||||
file(GLOB CRTN src/platform/generic/crt/crtn.c)
|
||||
|
||||
file(GLOB_RECURSE PYTHON_GENERATORS src/**/*.generator.py)
|
||||
|
||||
|
||||
foreach (GENERATOR IN LISTS PYTHON_GENERATORS)
|
||||
get_filename_component(GENERATED_BARE ${GENERATOR} NAME_WE)
|
||||
add_custom_command(
|
||||
COMMAND python3 ${GENERATOR}
|
||||
OUTPUT ${GENERATED_BARE}.c
|
||||
COMMENT "Generates ${GENERATED_BARE}.c"
|
||||
)
|
||||
list(APPEND GENERATED_SOURCES ${GENERATED_BARE}.c)
|
||||
endforeach ()
|
||||
|
||||
|
||||
# Define aggregate sources
|
||||
set(KERNEL_SOURCE_FILES
|
||||
${KERNEL_SOURCES}
|
||||
@@ -89,6 +103,7 @@ set(KERNEL_SOURCE_FILES
|
||||
${PLATFORM_GENERIC_SOURCES}
|
||||
${PLATFORM_SPECIFIC_SOURCES}
|
||||
${PLATFORM_SPECIFIC_ASM_SOURCES}
|
||||
${GENERATED_SOURCES}
|
||||
)
|
||||
|
||||
# Define executable
|
||||
|
||||
Reference in New Issue
Block a user