cmake_minimum_required(VERSION 2.8.3) project(sm_common) find_package(catkin REQUIRED) include_directories(${catkin_INCLUDE_DIRS}) find_package(Boost REQUIRED COMPONENTS system) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++0x -D__STRICT_ANSI__") include_directories(include ${Boost_INCLUDE_DIRS}) catkin_package( INCLUDE_DIRS include ${catkin_INCLUDE_DIRS} LIBRARIES ${PROJECT_NAME} CATKIN_DEPENDS DEPENDS CFG_EXTRAS export_flags.cmake ) add_library(${PROJECT_NAME} src/progress_info.cpp ) target_link_libraries(${PROJECT_NAME} ${catkin_LIBRARIES} ${Boost_LIBRARIES}) ################## ## 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/${PROJECT_NAME}/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} FILES_MATCHING PATTERN "*.hpp" PATTERN ".svn" EXCLUDE ) ############# ## Testing ## ############# if(CATKIN_ENABLE_TESTING) # Avoid clash with tr1::tuple: https://code.google.com/p/googletest/source/browse/trunk/README?r=589#257 add_definitions(-DGTEST_USE_OWN_TR1_TUPLE=0) catkin_add_gtest(${PROJECT_NAME}-test test/test_main.cpp test/maths.cpp test/serialization_macros.cpp test/numerical_comparisons.cpp test/hash_id.cpp ) target_link_libraries(${PROJECT_NAME}-test pthread) endif()