xo-kalmanfilter: build: update to latest xo-cmake macros

This commit is contained in:
Roland Conybeare 2024-09-14 19:15:11 -05:00
commit e140c6d285
3 changed files with 30 additions and 59 deletions

View file

@ -6,11 +6,7 @@ set(SELF_SRCS
KalmanFilter.test.cpp
filter_utest_main.cpp)
add_executable(${SELF_EXE} ${SELF_SRCS})
xo_include_options2(${SELF_EXE})
add_test(NAME ${SELF_EXE} COMMAND ${SELF_EXE})
target_code_coverage(${SELF_EXE} AUTO ALL)
xo_add_utest_executable(${SELF_EXE} ${SELF_SRCS})
# ----------------------------------------------------------------
# create convenience symlink from build dir back to canned data.
@ -20,38 +16,8 @@ target_code_coverage(${SELF_EXE} AUTO ALL)
file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/utest/utestdata)
file(CREATE_LINK ${PROJECT_SOURCE_DIR}/utest/utestdata/filter ${PROJECT_BINARY_DIR}/utest/utestdata/filter SYMBOLIC)
# ----------------------------------------------------------------
# generic project dependency
# PROJECT_SOURCE_DIR:
# so we can for example write
# #include "logutil/scope.hpp"
# from anywhere in the project
# PROJECT_BINARY_DIR:
# since version file will be in build directory, need that directory
# to also be included in compiler's include path
#
xo_self_dependency(${SELF_EXE} xo_kalmanfilter)
# ----------------------------------------------------------------
# internal dependencies: logutil, ...
xo_dependency(${SELF_EXE} xo_statistics)
# ----------------------------------------------------------------
# external dependencies: catch2..
xo_external_target_dependency(${SELF_EXE} Catch2 Catch2::Catch2)
# ----------------------------------------------------------------
# make standard directories for std:: includes explicit
# so that
# (1) they appear in compile_commands.json.
# (2) clangd (run from emacs lsp-mode) can find them
#
if(CMAKE_EXPORT_COMPILE_COMMANDS)
set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES
${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES})
endif()
# end CMakeLists.txt