diff options
| author | CoprDistGit <infra@openeuler.org> | 2026-10-12 08:14:27 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2026-10-12 08:14:27 +0000 |
| commit | f00cf4451d42dc36feca12eb00416c962e101eea (patch) | |
| tree | 32056dacf6cb50f4db2374f6315de418d9ddd4e8 | |
| parent | 0b5d7f04b81c129f94160fa376d99727c9f9af12 (diff) | |
automatic import of ros-humble-autoware-utils-debugopeneuler24.03_LTS_SP3
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | autoware-utils-debug.spec | 106 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 108 insertions, 0 deletions
@@ -0,0 +1 @@ +/autoware-utils-debug-1.9.0.tar.gz diff --git a/autoware-utils-debug.spec b/autoware-utils-debug.spec new file mode 100644 index 0000000..5d75e38 --- /dev/null +++ b/autoware-utils-debug.spec @@ -0,0 +1,106 @@ +%define src_version 1.9.0 + +%define ros_distro humble +%define RosPkgName autoware-utils-debug + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 1.9.0 +Release: 1%{?dist} +Summary: Utilities for debug in Autoware (ROS 2 Humble) + +License: Apache-2.0 +URL: https://github.com/autowarefoundation/autoware_utils +Source0: %{RosPkgName}-%{src_version}.tar.gz + +# 上游源码: https://github.com/autowarefoundation/autoware_utils/archive/refs/tags/v1.11.0.tar.gz +# (submit_fix 按 --transform 规则重打成下行 Source0 的本地文件名,COPR 构建不联网取源) +# 归档解压根目录名(实测)为 autoware-utils-debug-1.11.0,与 Name: 解耦: +# 解压参数只认实测目录名;子包源码在归档内的 autoware_utils_debug/ 目录。 +# 注:注释里不要写带百分号的宏名——rpm 会展开注释中的宏,解压宏展开成 setup 标签会直接解析失败 + +# ROS 包统一:关闭 debug 子包、摘掉 brp-python-bytecompile、/opt 前缀不进 autodeps +%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: gcc-c++ +BuildRequires: fmt-devel +BuildRequires: ros-%{ros_distro}-ament-cmake-auto +# ament_cmake 的 package_templates 需要 ament_package python 模块,显式固化 +BuildRequires: ros-%{ros_distro}-ament-package +BuildRequires: ros-%{ros_distro}-autoware-cmake +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-diagnostic-msgs +BuildRequires: ros-%{ros_distro}-autoware-internal-debug-msgs +BuildRequires: ros-%{ros_distro}-autoware-internal-msgs +BuildRequires: ros-%{ros_distro}-autoware-utils-system + +Requires: ros-%{ros_distro}-ros-workspace +Requires: fmt +Requires: fmt-devel +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-diagnostic-msgs +Requires: ros-%{ros_distro}-autoware-internal-debug-msgs +Requires: ros-%{ros_distro}-autoware-internal-msgs +Requires: ros-%{ros_distro}-autoware-utils-system + +# 单包策略(spec-rules-ros §7):ROS 包不拆实体子包,虚拟别名兼容 -devel 消费者 +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +The autoware_utils_debug package provides essential utilities for debug +in Autoware autonomous driving applications built on ROS 2 Humble. +It includes helpers for publishing debug messages with timestamps, +tracking processing times, and reporting diagnostic information. + +%prep +# 解压目录名跟实测归档根目录走,不随 Name/RosPkgName 联动改写 +%autosetup -n autoware-utils-debug-%{version} + +%build +# ROS 基座环境 bootstrap(spec-rules-ros §4):ament_package 等 python 模块装在 +# /opt/ros/<distro>/lib/pythonX.Y/site-packages,不在 /usr/bin/python3 的默认 +# sys.path 里——不导出 PYTHONPATH 时 ament_cmake 的 package_templates 必失败 +# (ModuleNotFoundError: No module named 'ament_package')。 +# 无 setup.sh 的 buildroot 不能直接 source(严格 sh 下会中止),故加 [ -f ] 守卫。 +[ -f /opt/ros/%{ros_distro}/setup.sh ] && source /opt/ros/%{ros_distro}/setup.sh || 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} +mkdir -p build_pkg +cd build_pkg +cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \ + -DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -DBUILD_TESTING=OFF \ + ../autoware_utils_debug +%make_build + +%install +# 同上:install 阶段 ament 的 install 钩子与 ament_index 注册同样需要 ROS 环境 +[ -f /opt/ros/%{ros_distro}/setup.sh ] && source /opt/ros/%{ros_distro}/setup.sh || 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 build_pkg +%make_install + +%files +# 整树拥有(spec-rules-ros §7):装了没打包类错误免疫,且不与子包路径重叠 +/opt/ros/%{ros_distro} +%license LICENSE +%doc autoware_utils_debug/README.md + +%changelog +* Mon Oct 12 2026 ai-importer <ai-importer@openeuler.org> - 1.9.0-1 +- Rebase to 1.9.0 (ROS batch import) +* Mon Sep 21 2026 openEuler Builder <builder@openeuler.org> - 1.11.0-1 +- Fix build/install: export ROS bootstrap PYTHONPATH so ament_cmake package + templates can import ament_package (ModuleNotFoundError) +- Rename to ros-humble-autoware-utils-debug; single-package files list, + /opt prefix excluded from autodeps (spec-rules-ros) +- Initial package of autoware_utils_debug 1.11.0
\ No newline at end of file @@ -0,0 +1 @@ +a1edc9d963d65d1d29b661e1a663fd70 autoware-utils-debug-1.9.0.tar.gz |
