aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakePresets.json21
-rw-r--r--arch/x86_64/CMakeLists.txt6
-rw-r--r--kapi/CMakeLists.txt6
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"
+)