summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nebula-hesai-decoders.spec19
1 files changed, 18 insertions, 1 deletions
diff --git a/nebula-hesai-decoders.spec b/nebula-hesai-decoders.spec
index be3a357..637d8a7 100644
--- a/nebula-hesai-decoders.spec
+++ b/nebula-hesai-decoders.spec
@@ -99,9 +99,17 @@ export PKG_CONFIG_PATH=/opt/ros/%{ros_distro}/lib/pkgconfig${PKG_CONFIG_PATH:+:$
# #include <png++/...> 解析
install -d %{_builddir}/pngpp-include/png++
install -p -m 0644 png++-0.2.10/*.hpp %{_builddir}/pngpp-include/png++/
+# png++ 上游 io_base.hpp 的 trace_io_transform(char const* fmt, ...) 在非 DEBUG
+# 构建时函数体被 #ifdef DEBUG_IO_TRANSFORM 清空,fmt 未使用触发 -Wunused-parameter;
+# ament_cmake blanket -Werror(构建日志 'cc1plus: all warnings being treated as
+# errors' 确认)将其升级为致命错误。插入 (void)fmt; 抑制该警告
+sed -i '/^trace_io_transform(char const\* fmt, \.\.\.)$/{n;s/^{$/{\n (void)fmt;/}' \
+ %{_builddir}/pngpp-include/png++/io_base.hpp
# patch-include:downsample_mask.hpp 修补影子目录(见 %prep),-I 优先于
# -isystem /opt/ros/humble/include 命中修补版,规避已装 sibling 头文件的 Eigen::MatrixX bug
-export CXXFLAGS="%{optflags} -I%{_builddir}/patch-include -I%{_builddir}/pngpp-include"
+# -Wno-error=unused-parameter:兜底防护 png++/vendored 头文件其他可能的未使用参数
+# (GCC 特定豁免优先于 ament blanket -Werror,不受 flag 顺序影响)
+export CXXFLAGS="%{optflags} -I%{_builddir}/patch-include -I%{_builddir}/pngpp-include -Wno-error=unused-parameter"
# monorepo 子包构建:进入目标 colcon 包目录(§5 ament_cmake 显式 out-of-source,规避 openEuler cmake 宏的默认位置参数)
cd src/nebula_hesai/nebula_hesai_decoders
@@ -138,6 +146,15 @@ make install DESTDIR=%{buildroot}
%changelog
* Wed Oct 21 2026 ai-importer <ai-importer@openeuler.org> - 1.3.1-1
+- 修复 build 阶段(round 5):png++ vendor 头文件 io_base.hpp 的
+ trace_io_transform(char const* fmt, ...) 在非 DEBUG 构建时函数体被
+ #ifdef DEBUG_IO_TRANSFORM 清空,fmt 参数未使用触发 -Wunused-parameter;
+ ament_cmake blanket -Werror(日志 'cc1plus: all warnings being treated as
+ errors')将其升级为致命错误。sed 在已安装的头文件副本中插入 (void)fmt;
+ 抑制该特定警告;CXXFLAGS 追加 -Wno-error=unused-parameter 兜底防护
+ png++ 其他可能的未使用参数(GCC 特定豁免优先于 blanket -Werror)
+
+* Wed Oct 21 2026 ai-importer <ai-importer@openeuler.org> - 1.3.1-1
- 修复 build 阶段(round 4):downsample_mask.hpp 上游误用 Eigen::MatrixX<uint8_t>
(Eigen 无 MatrixX 模板,仅 MatrixXf/MatrixXi 等具体 typedef),sed 改为
Eigen::Matrix<uint8_t, Dynamic, Dynamic>;sibling 包 nebula-core-decoders 的该