diff options
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 8657cab..35cfd65 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -116,11 +116,24 @@ add_library("_exception" OBJECT) add_library("teachos::exception" ALIAS "_exception") #[============================================================================[ -# The Shared Library +# The Context switching Library #]============================================================================] -add_library("_shared" OBJECT) -add_library("teachos::shared" ALIAS "_shared") +add_library("_context" OBJECT) +add_library("teachos::context_switching" ALIAS "_context") + +add_library("_interrupt_handling" OBJECT) +add_library("teachos::interrupt_handling" ALIAS "_interrupt_handling") +# https://forum.osdev.org/viewtopic.php?f=1&t=36712 +# https://gcc.gnu.org/onlinedocs/gcc/x86-Function-Attributes.html#index-interrupt-function-attribute_002c-x86 +target_compile_options("_interrupt_handling" PRIVATE "-mgeneral-regs-only") + +#[============================================================================[ +# The Stub Standard Library +#]============================================================================] + +add_library("_stl" OBJECT) +add_library("teachos::stl" ALIAS "_stl") #[============================================================================[ # The Kernel @@ -136,7 +149,9 @@ target_link_libraries("_kernel" PRIVATE "teachos::video" "teachos::memory" "teachos::exception" - "teachos::shared" + "teachos::stl" + "teachos::context_switching" + "teachos::interrupt_handling" ) #[============================================================================[ |
