diff options
| author | CoprDistGit <infra@openeuler.org> | 2026-09-18 04:20:56 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2026-09-18 04:20:56 +0000 |
| commit | de22ce54cc21eb586d75994ccf551905c3287b8c (patch) | |
| tree | d418555444fe5682d6d5c7b0fad80fbb859a0567 /opennav-docking.spec | |
| parent | ea4dbeb63b3092b91cbba1f822dafe5e507a18a7 (diff) | |
automatic import of ros-humble-opennav-dockingopeneuler24.03_LTS_SP3
Diffstat (limited to 'opennav-docking.spec')
| -rw-r--r-- | opennav-docking.spec | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/opennav-docking.spec b/opennav-docking.spec new file mode 100644 index 0000000..8838484 --- /dev/null +++ b/opennav-docking.spec @@ -0,0 +1,103 @@ +%define ros_distro humble +%define RosPkgName opennav-docking +# 上游 monorepo 归档根目录用下划线,与 RPM 名(连字符)解耦 +%define src_name opennav_docking +%define src_version 0.0.2 + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.0.2 +Release: 1%{?dist} +Summary: A Task Server for robot charger docking +License: Apache-2.0 +URL: https://github.com/open-navigation/opennav_docking +Source0: https://github.com/open-navigation/opennav_docking/archive/refs/tags/%{src_version}.tar.gz#/%{src_name}-%{src_version}.tar.gz + +%global debug_package %{nil} +%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/%{ros_distro}/.*$ +%global __requires_exclude_from ^/opt/ros/%{ros_distro}/.*$ + +BuildRequires: cmake +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-angles +BuildRequires: ros-%{ros_distro}-builtin-interfaces +BuildRequires: ros-%{ros_distro}-geometry-msgs +BuildRequires: ros-%{ros_distro}-nav-2d-utils +BuildRequires: ros-%{ros_distro}-nav-msgs +BuildRequires: ros-%{ros_distro}-nav2-costmap-2d +BuildRequires: ros-%{ros_distro}-nav2-msgs +BuildRequires: ros-%{ros_distro}-nav2-util +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rclcpp-action +BuildRequires: ros-%{ros_distro}-rclcpp-lifecycle +BuildRequires: ros-%{ros_distro}-sensor-msgs +BuildRequires: ros-%{ros_distro}-tf2-ros +BuildRequires: ros-%{ros_distro}-yaml-cpp-vendor +BuildRequires: ros-%{ros_distro}-nav2-graceful-controller +BuildRequires: ros-%{ros_distro}-opennav-docking-core +BuildRequires: ros-%{ros_distro}-opennav-docking-msgs + +Requires: ros-%{ros_distro}-ros-workspace +Requires: ros-%{ros_distro}-ament-cmake +Requires: ros-%{ros_distro}-angles +Requires: ros-%{ros_distro}-builtin-interfaces +Requires: ros-%{ros_distro}-geometry-msgs +Requires: ros-%{ros_distro}-nav-2d-utils +Requires: ros-%{ros_distro}-nav-msgs +Requires: ros-%{ros_distro}-nav2-costmap-2d +Requires: ros-%{ros_distro}-nav2-msgs +Requires: ros-%{ros_distro}-nav2-util +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-rclcpp-action +Requires: ros-%{ros_distro}-rclcpp-lifecycle +Requires: ros-%{ros_distro}-sensor-msgs +Requires: ros-%{ros_distro}-tf2-ros +Requires: ros-%{ros_distro}-yaml-cpp-vendor +Requires: ros-%{ros_distro}-nav2-graceful-controller +Requires: ros-%{ros_distro}-opennav-docking-core +Requires: ros-%{ros_distro}-opennav-docking-msgs + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +A Task Server for robot charger docking + +%prep +# 归档根目录为 opennav_docking-0.0.2(下划线,monorepo tag 归档实测) +%autosetup -n %{src_name}-%{src_version} + +%build +source /opt/ros/%{ros_distro}/setup.sh 2>/dev/null || true +export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages${PYTHONPATH:+:$PYTHONPATH} +export PKG_CONFIG_PATH=/opt/ros/%{ros_distro}/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH} +# monorepo:进入 opennav_docking 子包目录构建 +cd %{src_name} +mkdir -p .obj && cd .obj +%cmake3 \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \ + -DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR \ + -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ + -DBUILD_TESTING=OFF -DTESTING=OFF -DCMAKE_SUPPRESS_REGENERATION=ON \ + .. +make %{?_smp_mflags} + +%install +source /opt/ros/%{ros_distro}/setup.sh 2>/dev/null || true +export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages${PYTHONPATH:+:$PYTHONPATH} +export PKG_CONFIG_PATH=/opt/ros/%{ros_distro}/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH} +cd %{src_name}/.obj +make install DESTDIR=%{buildroot} + +%files +/opt/ros/%{ros_distro} + +%changelog +* Fri Sep 18 2026 ai-importer <ai-importer@openeuler.org> - 0.0.2-1 +- Initial import (ROS batch) |
