summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt22
1 files changed, 21 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c9774c6..6e42490 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -70,9 +70,29 @@ function(add_stack_analysis arg_outfile arg_objlib_target)
)
endfunction()
+include(CTest)
+if (NOT DEFINED ENABLE_TESTS)
+ if (PICO_PLATFORM STREQUAL "host")
+ set(ENABLE_TESTS 1)
+ else()
+ set(ENABLE_TESTS 0)
+ endif()
+endif()
+
+function(add_lib_test arg_libname arg_testname)
+ if (ENABLE_TESTS)
+ add_executable("${arg_testname}" "tests/${arg_testname}.c")
+ target_link_libraries("${arg_testname}" "${arg_libname}")
+ add_test(
+ NAME "${arg_libname}/${arg_testname}"
+ COMMAND valgrind --error-exitcode=2 "./${arg_testname}"
+ )
+ endif()
+endfunction()
+
+add_subdirectory(libmisc)
add_subdirectory(libcr)
add_subdirectory(libcr_ipc)
-add_subdirectory(libmisc)
add_subdirectory(libhw)
add_subdirectory(libdhcp)
add_subdirectory(libusb)