aboutsummaryrefslogtreecommitdiff
path: root/kernel/tests/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/tests/CMakeLists.txt')
-rw-r--r--kernel/tests/CMakeLists.txt49
1 files changed, 49 insertions, 0 deletions
diff --git a/kernel/tests/CMakeLists.txt b/kernel/tests/CMakeLists.txt
new file mode 100644
index 0000000..96053f1
--- /dev/null
+++ b/kernel/tests/CMakeLists.txt
@@ -0,0 +1,49 @@
+#[============================================================================[
+# Kernel Test Support (Fakes, Stubs, Mocks, etc.)
+#]============================================================================]
+
+add_library("kernel_test_support"
+ "kapi/cpu.cpp"
+)
+
+target_include_directories("kernel_test_support" PUBLIC
+ "include"
+)
+
+target_link_libraries("kernel_test_support" PUBLIC
+ "os::kapi"
+)
+
+add_library("os::kernel_test_support" ALIAS "kernel_test_support")
+
+#[============================================================================[
+# Kernel Tests
+#]============================================================================]
+
+add_executable("kernel_tests"
+ "src/main.cpp"
+ "src/test_support.cpp"
+)
+
+target_include_directories("kernel_tests" PRIVATE
+ "include"
+)
+
+target_link_libraries("kernel_tests" PRIVATE
+ "os::kernel_test_support"
+ "os::kernel"
+ "libs::kstd"
+ "Catch2::Catch2"
+)
+
+set_target_properties("kernel_tests" PROPERTIES
+ C_CLANG_TIDY ""
+ CXX_CLANG_TIDY ""
+ EXCLUDE_FROM_ALL NO
+)
+
+enable_coverage("kernel_tests")
+
+add_executable("os::kernel_tests" ALIAS "kernel_tests")
+
+catch_discover_tests("os::kernel_tests") \ No newline at end of file