diff options
| author | CoprDistGit <infra@openeuler.org> | 2026-10-21 03:26:33 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2026-10-21 03:26:33 +0000 |
| commit | b6c015876f51628f1fdac6913a0ee16c686ec23f (patch) | |
| tree | 6fce595ddf2dad44510a581dc3bbf5887d647c1f | |
| parent | 71e71377b11e81b48c637cea5dde698bd31e735b (diff) | |
automatic import of ros-humble-nebula-continental
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | nebula-continental.spec | 36 | ||||
| -rw-r--r-- | sources | 2 |
3 files changed, 27 insertions, 12 deletions
@@ -1,3 +1,4 @@ /nebula-continental-1.2.0.tar.gz /nebula-continental-1.2.0-1.tar.gz /8be1ed775b02985eadafe39b00e0e4fc944114e2.tar.gz +/nebula-continental-1.3.1-1.tar.gz diff --git a/nebula-continental.spec b/nebula-continental.spec index 972dd5a..97a10de 100644 --- a/nebula-continental.spec +++ b/nebula-continental.spec @@ -4,7 +4,8 @@ %define ros_distro humble %define RosPkgName nebula-continental -# monorepo main 分支快照(无 tag),记录实际 commit 保证产物可追溯 +# monorepo main 分支快照(无 tag),记录实际 commit 保证产物可追溯(§2) +%define src_version 1.3.1-1 %global commit 8be1ed775b02985eadafe39b00e0e4fc944114e2 Name: ros-%{ros_distro}-%{RosPkgName} @@ -14,9 +15,11 @@ Summary: Nebula Continental ROS Wrapper # package.xml 声明 "Apache 2",规范为 SPDX 标识 License: Apache-2.0 URL: https://github.com/tier4/nebula -# GitHub commit 归档:实测(tar tzf)解压根目录为 nebula-<commit>(<repo>-<full-sha>), -# 非纯 SHA——spec-rules-ros §2 的"纯 SHA"经验对本仓不成立,以实测目录名为准 -Source0: https://github.com/tier4/nebula/archive/%{commit}.tar.gz +# Source0 用本地重打包 tarball(与同级兄弟包 nebula-hesai-decoders 等一致), +# 由 submit 流程从 sources/nebula-continental/ 以 src_version 命名重打生成, +# 解压根目录为 RosPkgName-src_version。勿用 GitHub archive 原 URL:其文件名 +# 按 commit 命名但内容已被重打包为版本目录,文件名与目录名错配致 prep 失败 +Source0: %{RosPkgName}-%{src_version}.tar.gz # debug 子包无意义(/opt 前缀,strip/debugedit 路径非常规),SIG 模板统一关闭 %global debug_package %{nil} @@ -117,9 +120,13 @@ ARS548 / SRR520 雷达的 ROS 2 封装节点,提供雷达数据解码、硬件 nebula_continental colcon 子包;monorepo 其余 colcon 包由各自独立 RPM 提供。 %prep -# 实测(tar tzf)解压根目录为 nebula-<commit>,与 -n 指定值匹配(§2 实测纪律) -# build 113815 实踩:%autosetup -n %{commit}(纯 SHA)致 %prep cd 失败,改为 nebula-%{commit} -%autosetup -n nebula-%{commit} +# 解压根目录为 RosPkgName-src_version(与 Source0 本地重打包 tarball 一致), +# -n 同名匹配。build 113815/113816 实踩:-n 取 commit(纯 SHA 或 nebula-commit) +# 均失败——GitHub archive 原 URL 文件名按 commit 命名、内容却被重打包为版本目录, +# 文件名与目录名错配;改用本地重打包 tarball 后 -n 取版本目录名 +# 注:RPM 4.18 会对注释内的命令宏字面量做展开——注释与 changelog 中一律用纯 +# 文字描述,不得出现裸 autosetup/setup/patch 等命令宏字面量(build 113816 即踩此坑) +%autosetup -n %{RosPkgName}-%{src_version} %build # ROS 基座环境(§4:setup.sh 可能不存在,用 [ -f ] 守卫) @@ -181,10 +188,17 @@ make install DESTDIR=%{buildroot} %changelog * Wed Oct 21 2026 AI Importer <ai-importer@openeuler.org> - 1.3.1-1 -- 修复 build 113815 %prep cd 失败:%autosetup -n 由 %{commit}(纯 SHA)改为 - nebula-%{commit}。实测(tar tzf 下载归档)GitHub tier4/nebula 的 - archive/<full-sha>.tar.gz 解压根目录为 nebula-<full-sha>(<repo>-<commit>), - 非 spec-rules-ros §2 所述"纯完整 SHA"——该经验对本仓不成立,以实测目录名为准 +- 修复 build 113816 prep 阶段 cd 失败(双根因): + (1) 上一轮在 prep 段注释里写了 autosetup 等命令宏字面量,RPM 4.18 即便在注释内 + 也会展开 autosetup 宏,生成 cd 纯commit+中文括号的 setup 块先于真正命令执行而失败; + 注释与 changelog 中一律改用纯文字描述,不得出现裸命令宏字面量 + (2) 更深层根因:Source0 原用 GitHub archive URL(文件名按 commit 命名),但 build + 环境中该文件已被重打包、解压根目录实为版本目录 RosPkgName-src_version,文件名与 + 目录名错配——故 -n 无论取纯 commit 还是 nebula-commit 均失败。改对齐同级兄弟包 + 约定:Source0 与 -n 均用 RosPkgName-src_version(本地重打包 tarball,由 submit 流程 + 以 src_version 命名重打生成,解压根目录与之同名) +- 修复 build 113815 prep 阶段 cd 失败(本轮纠正诊断):上一轮误判 archive 解压根 + 目录为 nebula-<full-sha>,实则重打包 tarball 根目录为版本目录;-n 取 commit 必败 - 修复 build 113809 事务冲突:reuse 兄弟包 ros-humble-nebula-continental-hw-interfaces (ROS-humble-3 build 112448) 的 Requires 错用下划线 ros-humble-nebula_msgs, 拉入 eulermaker 旧版 1.1.1-4 与 COPR 连字符 1.2.0-1 文件冲突 @@ -1 +1 @@ -e720c311293a6dfeaccb87347d51d388 8be1ed775b02985eadafe39b00e0e4fc944114e2.tar.gz +e720c311293a6dfeaccb87347d51d388 nebula-continental-1.3.1-1.tar.gz |
