diff options
author | CoprDistGit <infra@openeuler.org> | 2025-01-16 10:52:30 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2025-01-16 10:52:30 +0000 |
commit | 88ff9db24f3c5de2862823bb35f40156c6747d16 (patch) | |
tree | ac0f1b8db0f2115f6a67c3a6946a4477da2a9a8a /ros-jazzy-rc-dynamics-api.spec | |
parent | e711c2c739047f91f15fa5d6e7e9e4cd1c0beeb3 (diff) |
automatic import of Ros-jazzy-rc_dynamics_apiopeneuler24.03_LTS
Diffstat (limited to 'ros-jazzy-rc-dynamics-api.spec')
-rw-r--r-- | ros-jazzy-rc-dynamics-api.spec | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/ros-jazzy-rc-dynamics-api.spec b/ros-jazzy-rc-dynamics-api.spec new file mode 100644 index 0000000..e18b360 --- /dev/null +++ b/ros-jazzy-rc-dynamics-api.spec @@ -0,0 +1,99 @@ +%bcond_without tests +%bcond_without weak_deps + +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') +%global __provides_exclude_from ^/opt/ros/jazzy/.*$ +%global __requires_exclude_from ^/opt/ros/jazzy/.*$ +%global debug_package %{nil} + +Name: ros-jazzy-rc-dynamics-api +Version: 0.10.5 +Release: 0%{?dist}%{?release_suffix} +Summary: ROS rc_dynamics_api package + +License: BSD +URL: http://rc-visard.com +Source0: %{name}-%{version}.tar.gz + +BuildRequires: ros-jazzy-ament-package +Requires: curl +Requires: libcurl-devel +Requires: protobuf +BuildRequires: cmake +BuildRequires: curl +BuildRequires: libcurl-devel +BuildRequires: protobuf-devel + +%description +The rc_dynamics_api provides an API for easy handling of the dynamic-state data +streams provided by Roboception's stereo camera with self-localization. See +http://rc-visard.com Dynamic-state estimates of the rc_visard relate to its +self-localization and ego-motion estimation. These states refer to rc_visard's +current pose, velocity, or acceleration and are published on demand via several +data streams. For a complete list and descriptions of these dynamics states and +the respective data streams please refer to rc_visard's user manual. + +%prep +%autosetup -p1 + +%build +# 修复 PYTHONPATH 环境变量 +export PYTHONPATH=/opt/ros/jazzy/lib/python3.11/site-packages:$PYTHONPATH +export rcutils_DIR=/opt/ros/jazzy/opt/ros/jazzy/share/rcutils/cmake + +# 修复 CMAKE_PREFIX_PATH 和 PKG_CONFIG_PATH +export CMAKE_PREFIX_PATH=/opt/ros/jazzy +export PKG_CONFIG_PATH=/opt/ros/jazzy/lib/pkgconfig + +# 输出环境变量以验证设置 +echo "PYTHONPATH: $PYTHONPATH" +echo "CMAKE_PREFIX_PATH: $CMAKE_PREFIX_PATH" +echo "PKG_CONFIG_PATH: $PKG_CONFIG_PATH" + +# 验证 ament_package 是否可用 +python3 -c "import ament_package" || { echo "ament_package not found"; exit 1; } + +# 创建构建目录并进入 +mkdir -p .obj-%{_target_platform} && cd .obj-%{_target_platform} +%cmake3 \ + -UINCLUDE_INSTALL_DIR \ + -ULIB_INSTALL_DIR \ + -USYSCONF_INSTALL_DIR \ + -USHARE_INSTALL_PREFIX \ + -ULIB_SUFFIX \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/jazzy" \ + -DCMAKE_PREFIX_PATH="/opt/ros/jazzy" \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ +%if !0%{?with_tests} + -DBUILD_TESTING=OFF \ +%endif + .. + +%make_build + +%install +# In case we're installing to a non-standard location, look for a setup.sh +# in the install tree and source it. It will set things like +# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. +if [ -f "/usr/setup.sh" ]; then . "/usr/setup.sh"; fi +%make_install -C .obj-%{_target_platform} + +%if 0%{?with_tests} +%check +# 检查是否存在测试目标 +TEST_TARGET=$(%__make -qp -C .obj-%{_target_platform} | sed "s/^\(test\|check\):.*/\\1/;t f;d;:f;q0") +if [ -n "$TEST_TARGET" ]; then + if [ -f "/opt/ros/jazzy/setup.sh" ]; then . "/opt/ros/jazzy/setup.sh"; fi + CTEST_OUTPUT_ON_FAILURE=1 \ + %make_build -C .obj-%{_target_platform} $TEST_TARGET || echo "Tests failed but ignored" +else + echo "No tests to run" +fi +%endif + +%files +/opt/ros/jazzy/* + +%changelog +* Mon Jan 06 2025 Felix Ruess <felix.ruess@roboception.de> - 0.10.5-0 +- Autogenerated by Bloom |