cmake_minimum_required(VERSION 2.8.3) project(aws_ros1_common) ## Compile as C++11, supported in ROS Kinetic and newer set(CMAKE_CXX_STANDARD 11) ## Find catkin macros and libraries find_package(catkin REQUIRED COMPONENTS aws_common roscpp ) if(AWSSDK_FOUND) set(SERVICE core) AWSSDK_DETERMINE_LIBS_TO_LINK(SERVICE AWSSDK_LIBS) link_directories("${AWSSDK_LIB_DIR}") endif() ################################### ## catkin specific configuration ## ################################### catkin_package( INCLUDE_DIRS include LIBRARIES ${PROJECT_NAME} ) ########### ## Build ## ########### ## Specify additional locations of header files include_directories(include ${catkin_INCLUDE_DIRS}) ## Declare a C++ executable add_library(${PROJECT_NAME} SHARED src/sdk_utils/ros1_node_parameter_reader.cpp src/sdk_utils/logging/aws_ros_logger.cpp) ## Specify libraries to link a library or executable target against target_link_libraries(${PROJECT_NAME} ${AWSSDK_LIBS} ${catkin_LIBRARIES}) target_include_directories(${PROJECT_NAME} PRIVATE ${AWSSDK_INCLUDE_DIR}) ############# ## Install ## ############# ## Mark executables and/or libraries for installation install(TARGETS ${PROJECT_NAME} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} ) ## Mark cpp header files for installation install( DIRECTORY include/ DESTINATION include/ ) ############# ## Testing ## ############# if(CATKIN_ENABLE_TESTING) find_package(rostest REQUIRED) add_rostest_gtest(test_client_configuration_provider test/test_client_configuration_provider.test test/client_configuration_provider_test.cpp ) target_link_libraries(test_client_configuration_provider ${PROJECT_NAME} ${aws_common_LIBRARIES} ${catkin_LIBRARIES} ) add_rostest_gtest(test_aws_ros_logger test/sdk_utils/logging/test_aws_ros_logger.test test/sdk_utils/logging/aws_ros_logger_test.cpp ) target_link_libraries(test_aws_ros_logger ${PROJECT_NAME} ${aws_common_LIBRARIES} ${catkin_LIBRARIES} ) add_rostest_gtest(test_parameter_reader test/test_parameter_reader.test test/parameter_reader_test.cpp ) target_link_libraries(test_parameter_reader ${PROJECT_NAME} ${aws_common_LIBRARIES} ${catkin_LIBRARIES} ) endif()