From e0d3c4f64ec51e1affd20f23f405745890be9689 Mon Sep 17 00:00:00 2001 From: Ken Tossell <ken@tossell.net> Date: Thu, 27 Jun 2013 14:56:03 -0400 Subject: [PATCH] fixed dependencies and nodelet export --- libuvc_camera/CMakeLists.txt | 35 ++++++++++++++++++++++----------- libuvc_camera/cfg/UVCCamera.cfg | 2 +- libuvc_camera/package.xml | 19 ++++++++++++++++-- 3 files changed, 41 insertions(+), 15 deletions(-) diff --git a/libuvc_camera/CMakeLists.txt b/libuvc_camera/CMakeLists.txt index dcabded..d8f2b88 100644 --- a/libuvc_camera/CMakeLists.txt +++ b/libuvc_camera/CMakeLists.txt @@ -2,27 +2,38 @@ cmake_minimum_required(VERSION 2.8.3) project(libuvc_camera) # Load catkin and all dependencies required for this package -find_package(catkin REQUIRED COMPONENTS libuvc) +find_package(catkin REQUIRED COMPONENTS roscpp camera_info_manager driver_base dynamic_reconfigure image_transport nodelet sensor_msgs) + +generate_dynamic_reconfigure_options(cfg/UVCCamera.cfg) #find_package(libuvc REQUIRED) -catkin_package(DEPENDS roscpp camera_info_manager driver_base dynamic_reconfigure image_transport nodelet sensor_msgs libuvc - INCLUDE_DIRS include - LIBRARIES ${PROJECT_NAME}) +catkin_package( + CATKIN_DEPENDS + roscpp + camera_info_manager + driver_base + dynamic_reconfigure + image_transport + nodelet + sensor_msgs + LIBRARIES libuvc_camera_nodelet + ) include_directories(include ${Boost_INCLUDE_DIR} ${catkin_INCLUDE_DIRS}) link_directories(${catkin_LINK_DIRS}) -find_package(catkin REQUIRED dynamic_reconfigure) -generate_dynamic_reconfigure_options(cfg/UVCCamera.cfg) - find_package(Boost REQUIRED COMPONENTS thread) include_directories(${Boost_INCLUDE_DIRS}) -#find_package(libuvc REQUIRED) -include_directories(${libuvc_INCLUDE_DIRS}) - add_executable(camera_node src/main.cpp src/camera_driver.cpp) -target_link_libraries(camera_node uvc ${Boost_LIBRARIES}) +target_link_libraries(camera_node uvc ${Boost_LIBRARIES} ${catkin_LIBRARIES}) add_library(libuvc_camera_nodelet src/nodelet.cpp src/camera_driver.cpp) -target_link_libraries(libuvc_camera_nodelet uvc ${Boost_LIBRARIES}) +add_dependencies(libuvc_camera_nodelet ${libuvc_camera_EXPORTED_TARGETS}) +target_link_libraries(libuvc_camera_nodelet uvc ${Boost_LIBRARIES} ${catkin_LIBRARIES}) + +install(TARGETS camera_node libuvc_camera_nodelet + ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION} + ) \ No newline at end of file diff --git a/libuvc_camera/cfg/UVCCamera.cfg b/libuvc_camera/cfg/UVCCamera.cfg index d0a7518..31271bd 100755 --- a/libuvc_camera/cfg/UVCCamera.cfg +++ b/libuvc_camera/cfg/UVCCamera.cfg @@ -4,7 +4,7 @@ PACKAGE='libuvc_camera' import roslib; roslib.load_manifest(PACKAGE) -from dynamic_reconfigure.parameter_generator import * +from dynamic_reconfigure.parameter_generator_catkin import * from driver_base.msg import SensorLevels gen = ParameterGenerator() diff --git a/libuvc_camera/package.xml b/libuvc_camera/package.xml index ddde2eb..85713ed 100644 --- a/libuvc_camera/package.xml +++ b/libuvc_camera/package.xml @@ -33,16 +33,30 @@ <!-- Examples: --> <!-- Use build_depend for packages you need at compile time: --> <!-- <build_depend>message_generation</build_depend> --> + <build_depend>roscpp</build_depend> + <build_depend>camera_info_manager</build_depend> + <build_depend>driver_base</build_depend> + <build_depend>dynamic_reconfigure</build_depend> <build_depend>image_transport</build_depend> + <build_depend>libuvc</build_depend> + <build_depend>nodelet</build_depend> + <build_depend>sensor_msgs</build_depend> <!-- Use buildtool_depend for build tool packages: --> <!-- <buildtool_depend>catkin</buildtool_depend> --> + <buildtool_depend>catkin</buildtool_depend> <!-- Use run_depend for packages you need at runtime: --> <!-- <run_depend>message_runtime</run_depend> --> - <run_depend>libuvc</run_depend> + <run_depend>roscpp</run_depend> + <run_depend>camera_info_manager</run_depend> + <run_depend>driver_base</run_depend> + <run_depend>dynamic_reconfigure</run_depend> <run_depend>image_transport</run_depend> + <run_depend>libuvc</run_depend> + <run_depend>nodelet</run_depend> + <run_depend>sensor_msgs</run_depend> <!-- Use test_depend for packages you need only for testing: --> <!-- <test_depend>gtest</test_depend> --> - <buildtool_depend>catkin</buildtool_depend> + <!-- The export tag contains other, unspecified, tags --> @@ -51,6 +65,7 @@ <!-- <metapackage/> --> <!-- Other tools can request additional information be placed here --> + <nodelet plugin="${prefix}/libuvc_camera_nodelet.xml" /> </export> </package> -- GitLab