diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ade442..4171dab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,6 +8,11 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON) include(GNUInstallDirs) +option( + CVMMAP_BUILD_ZED_SVO_GRID_TO_MP4 + "Build the OpenCV-based zed_svo_grid_to_mp4 tool" + ON) + find_package(Threads REQUIRED) find_package(cppzmq QUIET) if (DEFINED CVMMAP_STREAMER_USE_SYSTEM_CNATS) @@ -51,7 +56,9 @@ find_package(ZeroMQ QUIET) find_package(spdlog REQUIRED) find_package(Protobuf REQUIRED) find_package(PkgConfig REQUIRED) -find_package(OpenCV REQUIRED COMPONENTS core imgproc) +if (CVMMAP_BUILD_ZED_SVO_GRID_TO_MP4) + find_package(OpenCV REQUIRED COMPONENTS core imgproc) +endif() find_package(rvl CONFIG QUIET) set(ZED_DIR "/usr/local/zed" CACHE PATH "Path to the local ZED SDK") find_package(ZED REQUIRED) @@ -412,41 +419,49 @@ set_target_properties(zed_svo_to_mp4 PROPERTIES OUTPUT_NAME "zed_svo_to_mp4" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin") -add_executable( - zed_svo_grid_to_mp4 - src/tools/zed_svo_grid_to_mp4.cpp) -target_include_directories(zed_svo_grid_to_mp4 - PRIVATE - "${CMAKE_CURRENT_LIST_DIR}/include" - "${CMAKE_CURRENT_BINARY_DIR}" - ${ZED_INCLUDE_DIRS} - ${CUDA_INCLUDE_DIRS} - ${OpenCV_INCLUDE_DIRS}) -target_link_directories(zed_svo_grid_to_mp4 - PRIVATE - ${ZED_LIBRARY_DIR} - ${CUDA_LIBRARY_DIRS}) -target_link_libraries(zed_svo_grid_to_mp4 - PRIVATE - CLI11::CLI11 - cvmmap_streamer_zed_svo_mp4_support - ${ZED_LIBRARIES} - ${CUDA_CUDA_LIBRARY} - ${CUDA_CUDART_LIBRARY} - ${OpenCV_LIBS}) -if (TARGET spdlog::spdlog) - target_link_libraries(zed_svo_grid_to_mp4 PRIVATE spdlog::spdlog) -elseif (TARGET spdlog) - target_link_libraries(zed_svo_grid_to_mp4 PRIVATE spdlog) +if (CVMMAP_BUILD_ZED_SVO_GRID_TO_MP4) + add_executable( + zed_svo_grid_to_mp4 + src/tools/zed_svo_grid_to_mp4.cpp) + target_include_directories(zed_svo_grid_to_mp4 + PRIVATE + "${CMAKE_CURRENT_LIST_DIR}/include" + "${CMAKE_CURRENT_BINARY_DIR}" + ${ZED_INCLUDE_DIRS} + ${CUDA_INCLUDE_DIRS} + ${OpenCV_INCLUDE_DIRS}) + target_link_directories(zed_svo_grid_to_mp4 + PRIVATE + ${ZED_LIBRARY_DIR} + ${CUDA_LIBRARY_DIRS}) + target_link_libraries(zed_svo_grid_to_mp4 + PRIVATE + CLI11::CLI11 + cvmmap_streamer_zed_svo_mp4_support + ${ZED_LIBRARIES} + ${CUDA_CUDA_LIBRARY} + ${CUDA_CUDART_LIBRARY} + ${OpenCV_LIBS}) + if (TARGET spdlog::spdlog) + target_link_libraries(zed_svo_grid_to_mp4 PRIVATE spdlog::spdlog) + elseif (TARGET spdlog) + target_link_libraries(zed_svo_grid_to_mp4 PRIVATE spdlog) + endif() + set_target_properties(zed_svo_grid_to_mp4 PROPERTIES + OUTPUT_NAME "zed_svo_grid_to_mp4" + RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin") endif() -set_target_properties(zed_svo_grid_to_mp4 PROPERTIES - OUTPUT_NAME "zed_svo_grid_to_mp4" - RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin") install( TARGETS cvmmap_streamer zed_svo_to_mcap zed_svo_to_mp4 - zed_svo_grid_to_mp4 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") + +if (CVMMAP_BUILD_ZED_SVO_GRID_TO_MP4) + install( + TARGETS + zed_svo_grid_to_mp4 + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") +endif()