fix(build): normalize protobuf and ZED link paths

This commit is contained in:
2026-03-20 17:24:54 +08:00
parent ae19b881b0
commit 83171b415f
+18 -2
View File
@@ -53,6 +53,18 @@ find_package(rvl CONFIG QUIET)
set(ZED_DIR "/usr/local/zed" CACHE PATH "Path to the local ZED SDK") set(ZED_DIR "/usr/local/zed" CACHE PATH "Path to the local ZED SDK")
find_package(ZED REQUIRED) find_package(ZED REQUIRED)
find_package(CUDA ${ZED_CUDA_VERSION} REQUIRED) find_package(CUDA ${ZED_CUDA_VERSION} REQUIRED)
find_library(CVMMAP_STREAMER_LIBUSB_LIBRARY NAMES usb-1.0 libusb-1.0)
if (CVMMAP_STREAMER_LIBUSB_LIBRARY)
set(_CVMMAP_STREAMER_ZED_LIBRARIES "")
foreach(_zed_lib IN LISTS ZED_LIBRARIES)
if (_zed_lib STREQUAL "/usr/lib/x86_64-linux-gnu/libusb-1.0.so")
list(APPEND _CVMMAP_STREAMER_ZED_LIBRARIES "${CVMMAP_STREAMER_LIBUSB_LIBRARY}")
else()
list(APPEND _CVMMAP_STREAMER_ZED_LIBRARIES "${_zed_lib}")
endif()
endforeach()
set(ZED_LIBRARIES "${_CVMMAP_STREAMER_ZED_LIBRARIES}")
endif()
add_subdirectory(third_party) add_subdirectory(third_party)
@@ -97,10 +109,13 @@ if (NOT TARGET rvl::rvl)
endif() endif()
endif() endif()
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/proto")
add_library(cvmmap_streamer_foxglove_proto STATIC) add_library(cvmmap_streamer_foxglove_proto STATIC)
protobuf_generate( protobuf_generate(
TARGET cvmmap_streamer_foxglove_proto TARGET cvmmap_streamer_foxglove_proto
LANGUAGE cpp LANGUAGE cpp
PROTOC_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}"
PROTOS PROTOS
"${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/CompressedVideo.proto" "${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/CompressedVideo.proto"
"${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/CameraCalibration.proto" "${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/CameraCalibration.proto"
@@ -108,13 +123,14 @@ protobuf_generate(
"${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Pose.proto" "${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Pose.proto"
"${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Quaternion.proto" "${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Quaternion.proto"
"${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Vector3.proto" "${CMAKE_CURRENT_LIST_DIR}/proto/foxglove/Vector3.proto"
IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}/proto") IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}")
add_library(cvmmap_streamer_depth_proto STATIC) add_library(cvmmap_streamer_depth_proto STATIC)
protobuf_generate( protobuf_generate(
TARGET cvmmap_streamer_depth_proto TARGET cvmmap_streamer_depth_proto
LANGUAGE cpp LANGUAGE cpp
PROTOC_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}"
PROTOS "${CMAKE_CURRENT_LIST_DIR}/proto/cvmmap_streamer/DepthMap.proto" PROTOS "${CMAKE_CURRENT_LIST_DIR}/proto/cvmmap_streamer/DepthMap.proto"
IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}/proto") IMPORT_DIRS "${CMAKE_CURRENT_LIST_DIR}")
add_library(cvmmap_streamer_protobuf INTERFACE) add_library(cvmmap_streamer_protobuf INTERFACE)
target_include_directories(cvmmap_streamer_foxglove_proto target_include_directories(cvmmap_streamer_foxglove_proto
PUBLIC PUBLIC