CMakeLists.txt Template
cmake_minimum_required(VERSION 2.8.3)
project(Template)
set(CMAKE_BUILD_TYPE "Release")
set(CMAKE_CXX_STANDARD 11)
find_package(OpenCV 3 REQUIRED)
find_package(Pangolin REQUIRED)
find_package(catkin REQUIRED COMPONENTS roscpp std_msgs)
catkin_package(CATKIN_DEPENDS roscpp std_msgs)
include_directories(
"/usr/include/eigen3"
${OpenCV_INCLUDE_DIRS}
${Pangolin_INCLUDE_DIRS}
${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/include
${PROJECT_SOURCE_DIR}/thirdpartys/file
${catkin_INCLUDE_DIRS}
)
file(GLOB_RECURSE TEMPLATE_SRCS "${PROJECT_SOURCE_DIR}/file1/*.cc"
"${PROJECT_SOURCE_DIR}/file2/*.cc")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib)
add_library(TEMPLATE SHARED ${TEMPLATE_SRCS})
target_link_libraries(TEMPLATE glog gflags ${OpenCV_LIBS} ${Pangolin_LIBRARIES})
add_executable(Template app/template.cc)
target_link_libraries(Template
glog gflags ${OpenCV_LIBS} ${catkin_LIBRARIES} TEMPLATE)