From 62bf2eef72854750c7325d2e2c6e92562a522e16 Mon Sep 17 00:00:00 2001 From: Lukas Oesch Date: Mon, 2 Mar 2026 23:43:09 +0100 Subject: implement memcpy --- libs/kstd/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 1f140f6..77b12a9 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -5,6 +5,7 @@ set(KSTD_LIBC_SYMBOLS "abort" "strlen" "memcmp" + "memcpy" ) target_sources("kstd" PRIVATE @@ -33,6 +34,7 @@ target_sources("kstd" PUBLIC "include/kstd/os/print.hpp" "include/kstd/asm_ptr" + "include/kstd/cstring" "include/kstd/format" "include/kstd/memory" "include/kstd/mutex" -- cgit v1.2.3 From 8365a09e18ac043d2e0aa6a9d3e394a02fe7c6cb Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 20 Mar 2026 12:06:17 +0100 Subject: kstd: fix build system errors --- libs/kstd/CMakeLists.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 77b12a9..9b4976b 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -21,10 +21,13 @@ target_sources("kstd" PUBLIC FILE_SET HEADERS BASE_DIRS "include" FILES + "include/kstd/bits/format_args.hpp" "include/kstd/bits/format_context.hpp" - "include/kstd/bits/format_specs.hpp" + "include/kstd/bits/format_parse_context.hpp" + "include/kstd/bits/format_specifiers.hpp" "include/kstd/bits/format_string.hpp" "include/kstd/bits/formatter.hpp" + "include/kstd/bits/print_sink.hpp" "include/kstd/bits/shared_ptr.hpp" "include/kstd/bits/unique_ptr.hpp" -- cgit v1.2.3 From e92343922bc8dce0c5653b83789498d4c97ade62 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 20 Mar 2026 14:13:43 +0100 Subject: kstd: simplify header packaging --- libs/kstd/CMakeLists.txt | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 9b4976b..877a04e 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -17,32 +17,13 @@ target_sources("kstd" PRIVATE "src/mutex.cpp" ) +file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/**.hpp") + target_sources("kstd" PUBLIC FILE_SET HEADERS BASE_DIRS "include" FILES - "include/kstd/bits/format_args.hpp" - "include/kstd/bits/format_context.hpp" - "include/kstd/bits/format_parse_context.hpp" - "include/kstd/bits/format_specifiers.hpp" - "include/kstd/bits/format_string.hpp" - "include/kstd/bits/formatter.hpp" - "include/kstd/bits/print_sink.hpp" - "include/kstd/bits/shared_ptr.hpp" - "include/kstd/bits/unique_ptr.hpp" - - "include/kstd/ext/bitfield_enum" - - "include/kstd/os/error.hpp" - "include/kstd/os/print.hpp" - - "include/kstd/asm_ptr" - "include/kstd/cstring" - "include/kstd/format" - "include/kstd/memory" - "include/kstd/mutex" - "include/kstd/stack" - "include/kstd/vector" + ${KSTD_HEADERS} ) target_include_directories("kstd" PUBLIC -- cgit v1.2.3 From 52bc2d4105ac0d10d10831d470e9d0212dbb2b4d Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 20 Mar 2026 17:39:00 +0100 Subject: libs: fix header globs --- libs/kstd/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 877a04e..b0c9c63 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -17,7 +17,7 @@ target_sources("kstd" PRIVATE "src/mutex.cpp" ) -file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/**.hpp") +file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/kstd/*") target_sources("kstd" PUBLIC FILE_SET HEADERS -- cgit v1.2.3 From 754012dd458985a6a4953c99204c6651318892b2 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 23 Mar 2026 08:10:49 +0100 Subject: testing: enable build-host testing --- libs/kstd/CMakeLists.txt | 48 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 10 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index b0c9c63..2f360cd 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -1,16 +1,22 @@ add_library("kstd" STATIC) add_library("libs::kstd" ALIAS "kstd") -set(KSTD_LIBC_SYMBOLS - "abort" - "strlen" - "memcmp" - "memcpy" -) +if(CMAKE_CROSSCOMPILING) + set(KSTD_LIBC_SYMBOLS + "abort" + "strlen" + "memcmp" + "memcpy" + ) + + set(KSTD_LIBC_SOURCES + "src/libc/stdlib.cpp" + "src/libc/string.cpp" + ) +endif() target_sources("kstd" PRIVATE - "src/libc/stdlib.cpp" - "src/libc/string.cpp" + ${KSTD_LIBC_SOURCES} "src/os/error.cpp" @@ -30,6 +36,28 @@ target_include_directories("kstd" PUBLIC "include" ) -list(TRANSFORM KSTD_LIBC_SYMBOLS PREPEND "-Wl,--undefined=") +if(CMAKE_CROSSCOMPILING) + list(TRANSFORM KSTD_LIBC_SYMBOLS PREPEND "-Wl,--undefined=") + + target_link_options("kstd" INTERFACE ${KSTD_LIBC_SYMBOLS}) +endif() + +if(NOT CMAKE_CROSSCOMPILING) + add_executable("kstd_tests" + "tests/vector.cpp" + "tests/os_mock.cpp" + ) + + target_link_libraries("kstd_tests" PRIVATE + "Catch2::Catch2WithMain" + "libs::kstd" + ) + + set_target_properties("kstd_tests" PROPERTIES + C_CLANG_TIDY "" + CXX_CLANG_TIDY "" + EXCLUDE_FROM_ALL NO + ) -target_link_options("kstd" INTERFACE ${KSTD_LIBC_SYMBOLS}) \ No newline at end of file + catch_discover_tests("kstd_tests") +endif() \ No newline at end of file -- cgit v1.2.3 From 48a2c33d205397adeaad385aebc1d1e008915b3e Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 23 Mar 2026 10:32:15 +0100 Subject: ci: enable test builds --- libs/kstd/CMakeLists.txt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 2f360cd..06543ab 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -44,8 +44,12 @@ endif() if(NOT CMAKE_CROSSCOMPILING) add_executable("kstd_tests" - "tests/vector.cpp" - "tests/os_mock.cpp" + "tests/src/vector.cpp" + "tests/src/os_panic.cpp" + ) + + target_include_directories("kstd_tests" PRIVATE + "tests/include" ) target_link_libraries("kstd_tests" PRIVATE @@ -59,5 +63,8 @@ if(NOT CMAKE_CROSSCOMPILING) EXCLUDE_FROM_ALL NO ) + enable_coverage("kstd") + enable_coverage("kstd_tests") + catch_discover_tests("kstd_tests") endif() \ No newline at end of file -- cgit v1.2.3 From 3070bb45b9741165d786b2c5a018ee55c1a82db8 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 27 Mar 2026 07:05:05 +0100 Subject: kernel/interrupts: switch to flat_map for dispatch --- libs/kstd/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 06543ab..ff3c8cc 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -44,6 +44,7 @@ endif() if(NOT CMAKE_CROSSCOMPILING) add_executable("kstd_tests" + "tests/src/flat_map.cpp" "tests/src/vector.cpp" "tests/src/os_panic.cpp" ) -- cgit v1.2.3 From 610707e896504a33fa82db4905e57a4822d3bb9d Mon Sep 17 00:00:00 2001 From: Lukas Oesch Date: Fri, 27 Mar 2026 19:39:55 +0100 Subject: add string tests --- libs/kstd/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 06543ab..d4f415f 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -46,6 +46,7 @@ if(NOT CMAKE_CROSSCOMPILING) add_executable("kstd_tests" "tests/src/vector.cpp" "tests/src/os_panic.cpp" + "tests/src/string.cpp" ) target_include_directories("kstd_tests" PRIVATE -- cgit v1.2.3 From 5ae03c52fe33882416aa6044993d8422ccb33ab4 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Wed, 1 Apr 2026 08:49:21 +0200 Subject: kernel: begin basic bht implementation --- libs/kstd/CMakeLists.txt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 7169aa8..ec0f441 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -40,9 +40,7 @@ if(CMAKE_CROSSCOMPILING) list(TRANSFORM KSTD_LIBC_SYMBOLS PREPEND "-Wl,--undefined=") target_link_options("kstd" INTERFACE ${KSTD_LIBC_SYMBOLS}) -endif() - -if(NOT CMAKE_CROSSCOMPILING) +else() add_executable("kstd_tests" "tests/src/flat_map.cpp" "tests/src/vector.cpp" -- cgit v1.2.3 From 15b882d0416bb83a18e5437480c08419b2035e1f Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 31 Mar 2026 22:52:52 +0200 Subject: kstd: add some basic observer_ptr tests --- libs/kstd/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index ec0f441..240118e 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -44,6 +44,7 @@ else() add_executable("kstd_tests" "tests/src/flat_map.cpp" "tests/src/vector.cpp" + "tests/src/observer_ptr.cpp" "tests/src/os_panic.cpp" "tests/src/string.cpp" ) -- cgit v1.2.3 From 45091789eb9e49856ea6c2f3606639d43f4584e7 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 13 Apr 2026 14:56:39 +0200 Subject: kstd: move formatting implementation to kstd --- libs/kstd/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 240118e..f7c771b 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -21,6 +21,7 @@ target_sources("kstd" PRIVATE "src/os/error.cpp" "src/mutex.cpp" + "src/vformat.cpp" ) file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/kstd/*") -- cgit v1.2.3 From cd1dd2037cbe1d5f1362202d3127640406b468b8 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 13 Apr 2026 15:38:08 +0200 Subject: kstd: add basic format and format_to tests --- libs/kstd/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index f7c771b..ced3138 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -44,6 +44,7 @@ if(CMAKE_CROSSCOMPILING) else() add_executable("kstd_tests" "tests/src/flat_map.cpp" + "tests/src/format.cpp" "tests/src/vector.cpp" "tests/src/observer_ptr.cpp" "tests/src/os_panic.cpp" -- cgit v1.2.3 From 9b4cbc6ba3f8059278a20a4893780717851ce8e4 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 21 Apr 2026 13:06:35 +0200 Subject: build: clean up configuration --- libs/kstd/CMakeLists.txt | 97 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 73 insertions(+), 24 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index ced3138..ee84ff1 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -1,30 +1,52 @@ -add_library("kstd" STATIC) -add_library("libs::kstd" ALIAS "kstd") +cmake_minimum_required(VERSION "3.27.0") -if(CMAKE_CROSSCOMPILING) - set(KSTD_LIBC_SYMBOLS - "abort" - "strlen" - "memcmp" - "memcpy" - ) +project("kstd" + DESCRIPTION "A kernel STL implementation" + VERSION "0.0.1" + LANGUAGES CXX +) - set(KSTD_LIBC_SOURCES - "src/libc/stdlib.cpp" - "src/libc/string.cpp" - ) +include("CTest") + +#[============================================================================[ +# External Dependencies +#]============================================================================] + +include("FetchContent") + +if (BUILD_TESTING) + FetchContent_Declare( + "Catch2" + URL "https://github.com/catchorg/Catch2/archive/refs/tags/v3.7.1.tar.gz" + URL_HASH "SHA256=c991b247a1a0d7bb9c39aa35faf0fe9e19764213f28ffba3109388e62ee0269c" + EXCLUDE_FROM_ALL + FIND_PACKAGE_ARGS + ) + + FetchContent_MakeAvailable("Catch2") + + find_package("Catch2") + include("Catch") endif() -target_sources("kstd" PRIVATE - ${KSTD_LIBC_SOURCES} +#[============================================================================[ +# Library +#]============================================================================] - "src/os/error.cpp" +add_library("kstd" STATIC) +add_library("kstd::lib" ALIAS "kstd") +target_sources("kstd" PRIVATE + "src/os/error.cpp" "src/mutex.cpp" "src/vformat.cpp" ) -file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "include/kstd/*") +file(GLOB_RECURSE KSTD_HEADERS + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + CONFIGURE_DEPENDS + "include/kstd/*" +) target_sources("kstd" PUBLIC FILE_SET HEADERS @@ -37,12 +59,37 @@ target_include_directories("kstd" PUBLIC "include" ) -if(CMAKE_CROSSCOMPILING) +set_target_properties("kstd" PROPERTIES + VERIFY_INTERFACE_HEADER_SETS YES +) + +if(NOT BUILD_TESTING) + target_sources("kstd" PRIVATE + "src/libc/stdlib.cpp" + "src/libc/string.cpp" + ) + + set(KSTD_LIBC_SYMBOLS + "abort" + "strlen" + "memcmp" + "memcpy" + ) + list(TRANSFORM KSTD_LIBC_SYMBOLS PREPEND "-Wl,--undefined=") target_link_options("kstd" INTERFACE ${KSTD_LIBC_SYMBOLS}) -else() - add_executable("kstd_tests" +endif() + +#[============================================================================[ +# Tests +#]============================================================================] + +if(BUILD_TESTING) + add_executable("kstd_tests") + add_executable("kstd::tests" ALIAS "kstd_tests") + + target_sources("kstd_tests" PRIVATE "tests/src/flat_map.cpp" "tests/src/format.cpp" "tests/src/vector.cpp" @@ -57,7 +104,7 @@ else() target_link_libraries("kstd_tests" PRIVATE "Catch2::Catch2WithMain" - "libs::kstd" + "kstd::lib" ) set_target_properties("kstd_tests" PROPERTIES @@ -66,8 +113,10 @@ else() EXCLUDE_FROM_ALL NO ) - enable_coverage("kstd") - enable_coverage("kstd_tests") + if(COMMAND "enable_coverage") + enable_coverage("kstd") + enable_coverage("kstd_tests") + endif() - catch_discover_tests("kstd_tests") + catch_discover_tests("kstd::tests") endif() \ No newline at end of file -- cgit v1.2.3 From e8ce02d63f096147fc54824f0a45c23e3a3ced25 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 21 Apr 2026 14:44:01 +0200 Subject: libs: prepare for clang-tidy --- libs/kstd/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index ee84ff1..2b5ee12 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -108,8 +108,6 @@ if(BUILD_TESTING) ) set_target_properties("kstd_tests" PROPERTIES - C_CLANG_TIDY "" - CXX_CLANG_TIDY "" EXCLUDE_FROM_ALL NO ) -- cgit v1.2.3 From 3ab0a15fb6aba0ad9516da69589b9da8dbd63a8e Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Sat, 2 May 2026 17:12:21 +0200 Subject: libs: adopt p1204 layout for kstd --- libs/kstd/CMakeLists.txt | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 2b5ee12..6902891 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -37,26 +37,28 @@ add_library("kstd" STATIC) add_library("kstd::lib" ALIAS "kstd") target_sources("kstd" PRIVATE - "src/os/error.cpp" - "src/mutex.cpp" - "src/vformat.cpp" + "kstd/os/error.cpp" + "kstd/mutex.cpp" + "kstd/vformat.cpp" ) file(GLOB_RECURSE KSTD_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS - "include/kstd/*" + "kstd/*" ) +list(FILTER KSTD_HEADERS EXCLUDE REGEX ".*\.cpp") + target_sources("kstd" PUBLIC FILE_SET HEADERS - BASE_DIRS "include" + BASE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}" FILES ${KSTD_HEADERS} ) target_include_directories("kstd" PUBLIC - "include" + "${CMAKE_CURRENT_SOURCE_DIR}" ) set_target_properties("kstd" PROPERTIES @@ -65,8 +67,8 @@ set_target_properties("kstd" PROPERTIES if(NOT BUILD_TESTING) target_sources("kstd" PRIVATE - "src/libc/stdlib.cpp" - "src/libc/string.cpp" + "kstd/libc/stdlib.cpp" + "kstd/libc/string.cpp" ) set(KSTD_LIBC_SYMBOLS @@ -90,16 +92,12 @@ if(BUILD_TESTING) add_executable("kstd::tests" ALIAS "kstd_tests") target_sources("kstd_tests" PRIVATE - "tests/src/flat_map.cpp" - "tests/src/format.cpp" - "tests/src/vector.cpp" - "tests/src/observer_ptr.cpp" - "tests/src/os_panic.cpp" - "tests/src/string.cpp" - ) - - target_include_directories("kstd_tests" PRIVATE - "tests/include" + "kstd/flat_map.test.cpp" + "kstd/format.test.cpp" + "kstd/vector.test.cpp" + "kstd/bits/observer_ptr.test.cpp" + "kstd/test_support/os_panic.test.cpp" + "kstd/string.test.cpp" ) target_link_libraries("kstd_tests" PRIVATE -- cgit v1.2.3 From a50d6cfcea67b11f6689ec825afc2e2b33252714 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Mon, 18 May 2026 15:21:39 +0200 Subject: ci: enable jUnit style test reports --- libs/kstd/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 6902891..1cc75b7 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -114,5 +114,5 @@ if(BUILD_TESTING) enable_coverage("kstd_tests") endif() - catch_discover_tests("kstd::tests") + catch_discover_tests("kstd::tests" ${CATCH_TEST_ARGS}) endif() \ No newline at end of file -- cgit v1.2.3 From 033ecf6714089d2ce331152f5e120567f8d546cf Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 19 May 2026 12:48:08 +0200 Subject: build: clean up dependencies --- libs/kstd/CMakeLists.txt | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) (limited to 'libs/kstd/CMakeLists.txt') diff --git a/libs/kstd/CMakeLists.txt b/libs/kstd/CMakeLists.txt index 1cc75b7..0f64761 100644 --- a/libs/kstd/CMakeLists.txt +++ b/libs/kstd/CMakeLists.txt @@ -8,27 +8,6 @@ project("kstd" include("CTest") -#[============================================================================[ -# External Dependencies -#]============================================================================] - -include("FetchContent") - -if (BUILD_TESTING) - FetchContent_Declare( - "Catch2" - URL "https://github.com/catchorg/Catch2/archive/refs/tags/v3.7.1.tar.gz" - URL_HASH "SHA256=c991b247a1a0d7bb9c39aa35faf0fe9e19764213f28ffba3109388e62ee0269c" - EXCLUDE_FROM_ALL - FIND_PACKAGE_ARGS - ) - - FetchContent_MakeAvailable("Catch2") - - find_package("Catch2") - include("Catch") -endif() - #[============================================================================[ # Library #]============================================================================] @@ -88,6 +67,9 @@ endif() #]============================================================================] if(BUILD_TESTING) + find_package("Catch2") + include("Catch") + add_executable("kstd_tests") add_executable("kstd::tests" ALIAS "kstd_tests") -- cgit v1.2.3