Add ROS 2 Jazzy and Rolling support with Dockerfiles and repository configurations

- Created ros_jazzy.repos for ROS 2 Jazzy with necessary repositories.
- Added ros_rolling.Dockerfile for building ROS 2 Rolling with a multi-stage build process.
- Introduced ros_rolling.repos for ROS 2 Rolling with updated repository versions.
- Updated CMakeLists.txt in ceres_vendor to use version 2.1.0 and modified build options.
- Adjusted package.xml in ceres_vendor to comment out unnecessary dependencies.
- Created vendor_packages.Dockerfile to build various vendor packages including Ceres, OpenCV, and PCL with optimizations for cross-compilation.
This commit is contained in:
EricX-Zhao
2026-04-20 18:04:41 +03:00
parent 514803969d
commit ec215fc2ab
11 changed files with 572 additions and 18 deletions
@@ -14,16 +14,17 @@ endif()
include(FetchContent)
FetchContent_Declare(
ceres_vendor
GIT_REPOSITORY https://github.com/EricX-Zhao/ceres-solver.git
GIT_TAG suitesparse # 锁定 2.0.0 标签
GIT_SHALLOW TRUE
URL https://github.com/ceres-solver/ceres-solver/archive/refs/tags/2.1.0.tar.gz
# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/ext/
)
# set(SUITESPARSE OFF CACHE BOOL "" FORCE)
set(BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE)
set(MINIGLOG ON CACHE BOOL "Use a stripped down version of glog." FORCE)
set(GFLAGS OFF CACHE BOOL "Enable Google Flags." FORCE)
set(BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Library" FORCE)
set(BUILD_EXAMPLES OFF CACHE BOOL "BUILD_EXAMPLES" FORCE)
set(BUILD_TESTING OFF CACHE BOOL "BUILD_TESTING" FORCE)
set(BUILD_BENCHMARKS OFF CACHE BOOL "BUILD_BENCHMARKS" FORCE)
set(CMAKE_BUILD_TYPE Release)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMAX_LOG_LEVEL=-1")
FetchContent_MakeAvailable(ceres_vendor)
@@ -8,8 +8,8 @@
<license>TODO: License declaration</license>
<depend>eigen3_vendor</depend>
<depend>glog_vendor</depend>
<depend>suitesparse_vendor</depend>
<!-- <depend>glog_vendor</depend> -->
<!-- <depend>suitesparse_vendor</depend> -->
<export>
<build_type>cmake</build_type>
@@ -20,10 +20,10 @@ RUN cd workspace \
FROM ${CC_PLATFORM_IMAGE} AS ceres_vendor
COPY vendor_packages/eigen3_vendor workspace/src/eigen3_vendor
COPY vendor_packages/gflags_vendor workspace/src/gflags_vendor
COPY vendor_packages/glog_vendor workspace/src/glog_vendor
COPY vendor_packages/openblas_vendor workspace/src/openblas_vendor
COPY vendor_packages/suitesparse_vendor workspace/src/suitesparse_vendor
# COPY vendor_packages/gflags_vendor workspace/src/gflags_vendor
# COPY vendor_packages/glog_vendor workspace/src/glog_vendor
# COPY vendor_packages/openblas_vendor workspace/src/openblas_vendor
# COPY vendor_packages/suitesparse_vendor workspace/src/suitesparse_vendor
COPY vendor_packages/ceres_vendor workspace/src/ceres_vendor
RUN cd workspace \