diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9d9b68e..fd5332d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -16,14 +16,6 @@ find_package(Boost REQUIRED)
# TODO(dhood): enable python support once ported to ROS 2
# catkin_python_setup()
-#
-#catkin_package(
-# INCLUDE_DIRS include
-# LIBRARIES laser_geometry
-# DEPENDS Boost Eigen
-#)
-#
-
include_directories(include
${angles_INCLUDE_DIRS}
${rclcpp_INCLUDE_DIRS}
@@ -42,9 +34,8 @@ target_link_libraries(laser_geometry
)
ament_export_include_directories(include)
-ament_export_dependencies(Eigen3)
ament_export_libraries(laser_geometry)
-ament_package()
+ament_package(CONFIG_EXTRAS laser_geometry-extras.cmake)
install(TARGETS laser_geometry
ARCHIVE DESTINATION lib
diff --git a/laser_geometry-extras.cmake b/laser_geometry-extras.cmake
new file mode 100644
index 0000000..aa495ef
--- /dev/null
+++ b/laser_geometry-extras.cmake
@@ -0,0 +1,31 @@
+# Copyright 2015 Open Source Robotics Foundation, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# copied from rclcpp/rclcpp-extras.cmake
+
+# register ament_package() hook for node plugins once
+
+find_package(Eigen3 REQUIRED)
+
+# Eigen3 uses non-standard variable for
+# include dirs (case and name): EIGEN3_INCLUDE_DIR.
+if(NOT Eigen3_INCLUDE_DIRS)
+ if (EIGEN3_INCLUDE_DIR)
+ message(STATUS "append ${EIGEN3_INCLUDE_DIR} to (${laser_geometry_INCLUDE_DIRS})")
+ list(APPEND laser_geometry_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR})
+ message(STATUS "laser_geometry_INCLUDE_DIRS=${laser_geometry_INCLUDE_DIRS}")
+ else()
+ message(FATAL_ERROR "Eigen3_INCLUDE_DIRS not found")
+ endif()
+endif()
diff --git a/package.xml b/package.xml
index e941388..fe0ecf5 100644
--- a/package.xml
+++ b/package.xml
@@ -21,13 +21,13 @@
ament_cmake
angles
- ecl_eigen
+ Eigen3
rclcpp
sensor_msgs
tf2
angles
- ecl_eigen
+ Eigen3
rclcpp
sensor_msgs
tf2