From 5c7d04076f3b59237c14f71cab47894d5a34fa71 Mon Sep 17 00:00:00 2001 From: openhands Date: Tue, 22 Sep 2026 11:30:02 +0100 Subject: [PATCH] fix: expose compat headers through the sas_core INTERFACE target The INTERFACE target forwarded to marinholab::sas::core + Eigen but never declared its own include directories, so the compat headers (include/sas_core/*.hpp) were not on the include path of downstream packages linking sas_core::sas_core. Downstream packages doing #include failed with: fatal error: sas_core/eigen3_std_conversions.hpp: No such file or directory. Add BUILD_INTERFACE/INSTALL_INTERFACE include dirs so they propagate in both workspace and installed use. Co-authored-by: openhands --- CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 27e92ca..7d07657 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,6 +32,13 @@ find_package(Eigen3 REQUIRED) # INTERFACE alias forwarding downstream packages to the core target installed # by the libmarinholab-sas-core .deb. add_library(sas_core INTERFACE) +# Expose the compatibility headers (include/sas_core/*.hpp) through the +# target's interface so downstream packages that link sas_core::sas_core +# can #include in both workspace and installed use. +target_include_directories(sas_core INTERFACE + $ + $ +) target_link_libraries(sas_core INTERFACE marinholab::sas::core Eigen3::Eigen) ament_export_targets(export_${PROJECT_NAME} HAS_LIBRARY_TARGET)