34 lines
1.2 KiB
CMake
34 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.6)
|
|
|
|
project(uvoscam)
|
|
|
|
set(SRC_FILES uvoscam.cpp)
|
|
|
|
find_package(PkgConfig REQUIRED)
|
|
find_package(OpenCV REQUIRED)
|
|
pkg_check_modules(GLIB REQUIRED glib-2.0)
|
|
pkg_check_modules(ARAVIS REQUIRED aravis-0.8)
|
|
|
|
add_definitions("-std=c++17 -Wall -O2")
|
|
|
|
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
|
|
target_link_libraries( ${PROJECT_NAME} ${GLIB_LDFLAGS} ${ARAVIS_LDFLAGS} ${OpenCV_LIBS} -pthread)
|
|
target_include_directories(${PROJECT_NAME} PRIVATE ${GLIB_INCLUDE_DIRS} ${ARAVIS_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS})
|
|
install(TARGETS ${PROJECT_NAME} DESTINATION lib)
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s")
|
|
|
|
link_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
add_executable(${PROJECT_NAME}_cli main.cpp)
|
|
add_dependencies(${PROJECT_NAME}_cli ${PROJECT_NAME})
|
|
target_include_directories(${PROJECT_NAME}_cli PRIVATE ${ARAVIS_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS})
|
|
target_link_libraries( ${PROJECT_NAME}_cli -l${PROJECT_NAME} ${OpenCV_LIBS})
|
|
target_link_libraries( ${PROJECT_NAME}_cli)
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s")
|
|
|
|
|
|
set(CMAKE_INSTALL_PREFIX "/usr")
|
|
install(TARGETS ${PROJECT_NAME}_cli RUNTIME DESTINATION bin)
|
|
install(TARGETS ${PROJECT_NAME} DESTINATION lib)
|
|
install(FILES ./uvoscam.h DESTINATION include)
|