diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2025-12-12 17:41:26 +0100 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2025-12-12 17:41:26 +0100 |
| commit | 2846867da7e88c3a665d0a8bed6ccec60e6476a1 (patch) | |
| tree | 3c0263e7471ee58707868e466d9f05ae58ce3b68 | |
| parent | 4bf9eded3a5d6b007ba79a5716143fa8b3a5aaf6 (diff) | |
| download | teachos-2846867da7e88c3a665d0a8bed6ccec60e6476a1.tar.xz teachos-2846867da7e88c3a665d0a8bed6ccec60e6476a1.zip | |
build: move platform configuration to preset
| -rw-r--r-- | CMakePresets.json | 21 | ||||
| -rw-r--r-- | arch/x86_64/CMakeLists.txt | 6 | ||||
| -rw-r--r-- | kapi/CMakeLists.txt | 6 |
3 files changed, 22 insertions, 11 deletions
diff --git a/CMakePresets.json b/CMakePresets.json index 3e8a3a8..26e02d1 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -2,7 +2,8 @@ "version": 6, "configurePresets": [ { - "name": "default", + "name": "base", + "hidden": true, "binaryDir": "${sourceDir}/build", "generator": "Ninja Multi-Config", "toolchainFile": "cmake/Platforms/x86_64.cmake", @@ -11,17 +12,27 @@ "CMAKE_EXPORT_COMPILE_COMMANDS": true, "CMAKE_VERIFY_INTERFACE_HEADER_SETS": true } + }, + { + "name": "x86_64", + "inherits": "base", + "toolchainFile": "cmake/Platforms/x86_64.cmake", + "cacheVariables": { + "TEACHOS_PLATFORM_FRAME_SIZE": "4096", + "TEACHOS_PLATFORM_PAGE_SIZE": "4096", + "TEACHOS_PLATFORM_PAGING_LEVELS": "4" + } } ], "buildPresets": [ { - "name": "debug", - "configurePreset": "default", + "name": "x86_64-dbg", + "configurePreset": "x86_64", "configuration": "Debug" }, { - "name": "release", - "configurePreset": "default", + "name": "x86_64-rel", + "configurePreset": "x86_64", "configuration": "MinSizeRel" } ] diff --git a/arch/x86_64/CMakeLists.txt b/arch/x86_64/CMakeLists.txt index 2a6c878..54f04cb 100644 --- a/arch/x86_64/CMakeLists.txt +++ b/arch/x86_64/CMakeLists.txt @@ -43,12 +43,6 @@ target_sources("x86_64" PUBLIC FILES ${ARCH_HEADERS} ) -target_compile_definitions("x86_64" PUBLIC - "PLATFORM_PAGE_SIZE=4096" - "PLATFORM_PAGING_LEVELS=4uz" - "PLATFORM_FRAME_SIZE=PLATFORM_PAGE_SIZE" -) - set(KERNEL_LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/scripts/kernel.ld" PARENT_SCOPE diff --git a/kapi/CMakeLists.txt b/kapi/CMakeLists.txt index e513dba..5e914bb 100644 --- a/kapi/CMakeLists.txt +++ b/kapi/CMakeLists.txt @@ -26,3 +26,9 @@ target_link_libraries("kapi" INTERFACE "gcc" "stdc++" ) + +target_compile_definitions("kapi" INTERFACE + "PLATFORM_PAGE_SIZE=${TEACHOS_PLATFORM_PAGE_SIZE}uz" + "PLATFORM_PAGING_LEVELS=${TEACHOS_PLATFORM_PAGING_LEVELS}uz" + "PLATFORM_FRAME_SIZE=${TEACHOS_PLATFORM_FRAME_SIZE}uz" +) |
