diff --git a/0-librealsense2-add-riscv-arch.patch b/0-librealsense2-add-riscv-arch.patch new file mode 100644 index 0000000000000000000000000000000000000000..7afc70fa111cd746b8d4bc05f8d87322ad2892fe --- /dev/null +++ b/0-librealsense2-add-riscv-arch.patch @@ -0,0 +1,21 @@ +--- + CMake/unix_config.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/CMake/unix_config.cmake b/CMake/unix_config.cmake +index 4ec81bb..ecb2c8c 100644 +--- a/CMake/unix_config.cmake ++++ b/CMake/unix_config.cmake +@@ -16,6 +16,9 @@ macro(os_set_flags) + elseif(${MACHINE} MATCHES "powerpc64(le)?-linux-gnu") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftree-vectorize") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftree-vectorize") ++ elseif(${MACHINE} MATCHES "riscv-*") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=rv64ifd") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=rv64ifd") + else() + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mssse3") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mssse3") +-- +2.43.0 + diff --git a/0-librealsense2-fix-threads-not-found.patch b/0-librealsense2-fix-threads-not-found.patch new file mode 100644 index 0000000000000000000000000000000000000000..e985607d210acef4655249903827ef44331af843 --- /dev/null +++ b/0-librealsense2-fix-threads-not-found.patch @@ -0,0 +1,23 @@ +--- + CMakeLists.txt | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8f80c78..0b11b78 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -4,6 +4,11 @@ project(librealsense2 LANGUAGES CXX C) + + # Allow librealsense2 and all of the nested project to include the main repo folder + set(REPO_ROOT ${CMAKE_CURRENT_SOURCE_DIR}) ++set(CMAKE_THREAD_LIBS_INIT "-lpthread") ++set(CMAKE_HAVE_THREADS_LIBRARY 1) ++set(CMAKE_USE_WIN32_THREADS_INIT 0) ++set(CMAKE_USE_PTHREADS_INIT 1) ++set(THREADS_PREFER_PTHREAD_FLAG ON) + include_directories(${REPO_ROOT}) + + include(CMake/lrs_options.cmake) +-- +2.43.0 + diff --git a/librealsense2.spec b/librealsense2.spec index 2fad837950206088c17cec42b140a6e7dc8da560..07f1c19bba68bd9bb6a271ebf860cee6c2d27424 100644 --- a/librealsense2.spec +++ b/librealsense2.spec @@ -9,13 +9,16 @@ Name: ros-%{ros_distro}-%{RosPkgName} Version: 2.51.1 -Release: 1%{?dist}%{?release_suffix} +Release: 2%{?dist}%{?release_suffix} Summary: ROS librealsense2 package Url: https://github.com/IntelRealSense/librealsense/ License: Apache License, Version 2.0 Source0: %{name}_%{version}.orig.tar.gz +Patch1: 0-librealsense2-fix-threads-not-found.patch +Patch2: 0-librealsense2-add-riscv-arch.patch + Requires: ros-%{ros_distro}-ros-workspace BuildRequires: pkgconfig @@ -61,6 +64,7 @@ mkdir -p .obj-%{_target_platform} && cd .obj-%{_target_platform} -DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \ -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \ -DSETUPTOOLS_DEB_LAYOUT=OFF \ + -DCMAKE_EXE_LINKER_FLAGS=-latomic \ %if !0%{?with_tests} -DBUILD_TESTING=OFF \ %endif @@ -99,5 +103,8 @@ else echo "RPM TESTS SKIPPED"; fi /opt/ros/%{ros_distro} %changelog +* Wed Jan 31 2024 zhtianyu zhangtianyu@iscas.ac.cn - 2.51.1-2 +- Add riscv arch + * Thu May 04 2023 LibRS ROS Team librs.ros@intel.com - 2.51.1-1 - Autogenerated by ros-porting-tools