summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nebula-continental.spec39
1 files changed, 20 insertions, 19 deletions
diff --git a/nebula-continental.spec b/nebula-continental.spec
index 71824e3..8b2510c 100644
--- a/nebula-continental.spec
+++ b/nebula-continental.spec
@@ -20,7 +20,7 @@
Name: ros-%{ros_distro}-%{RosPkgName}
Version: 1.2.0
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: Nebula Continental ROS Wrapper
License: Apache-2.0
URL: https://github.com/tier4/nebula
@@ -149,84 +149,78 @@ export PKG_CONFIG_PATH="${_STAGED}/lib/pkgconfig:${PKG_CONFIG_PATH}"
# 1. nebula_continental_common(header-only INTERFACE,依赖 nebula_core_common)
mkdir -p src/nebula_continental/nebula_continental_common/.obj
cd src/nebula_continental/nebula_continental_common/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
make install DESTDIR=%{buildroot}
cd - >/dev/null
# 2. nebula_core_hw_interfaces(header-only INTERFACE,依赖 nebula_core_common)
mkdir -p src/nebula_core/nebula_core_hw_interfaces/.obj
cd src/nebula_core/nebula_core_hw_interfaces/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
make install DESTDIR=%{buildroot}
cd - >/dev/null
# 3. nebula_continental_decoders(SHARED lib,依赖 #1 nebula_continental_common)
mkdir -p src/nebula_continental/nebula_continental_decoders/.obj
cd src/nebula_continental/nebula_continental_decoders/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
make install DESTDIR=%{buildroot}
cd - >/dev/null
# 4. nebula_continental_hw_interfaces(SHARED lib,依赖 #1 + #2)
mkdir -p src/nebula_continental/nebula_continental_hw_interfaces/.obj
cd src/nebula_continental/nebula_continental_hw_interfaces/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
make install DESTDIR=%{buildroot}
cd - >/dev/null
# 5. nebula_core_ros(SHARED lib,依赖 nebula_core_common + rosbag2_storage)
mkdir -p src/nebula_core/nebula_core_ros/.obj
cd src/nebula_core/nebula_core_ros/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
make install DESTDIR=%{buildroot}
cd - >/dev/null
# 6. nebula_continental(主包,依赖 #1 #3 #4 #5 + 外部 ROS 包)
mkdir -p src/nebula_continental/nebula_continental/.obj
cd src/nebula_continental/nebula_continental/.obj
-%cmake3 .. \
+cmake .. \
-DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \
-DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
-DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro};${_STAGED}" \
- -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \
-DSETUPTOOLS_DEB_LAYOUT=OFF \
-DBUILD_TESTING=OFF
-%cmake_build
+%make_build
%install
# 所有 sibling 包在 %build 阶段已 make install DESTDIR=%{buildroot},
@@ -240,6 +234,13 @@ make install DESTDIR=%{buildroot}
/opt/ros/%{ros_distro}
%changelog
+* Thu Oct 08 2026 AI Importer <ai-importer@openeuler.org> - 1.2.0-4
+- 修复 %build 失败:%cmake3 在 .obj 当前目录配置 cmake,但 %cmake_build
+ 展开为 cmake --build %{_vpath_builddir}(aarch64-openEuler-linux-gnu),
+ 该子目录从未创建导致 "is not a directory" 错误。改用 raw cmake + %make_build
+ 替代 RPM cmake 宏,完全掌控 out-of-source 构建目录;同时移除仅用于
+ 抵消 %cmake3 默认 -D flags 的 -UINCLUDE_INSTALL_DIR 等
+
* Thu Oct 08 2026 AI Importer <ai-importer@openeuler.org> - 1.2.0-3
- 修复 prep 失败:autosetup -n 用 version(1.2.0)但 tarball 内部目录
为 nebula-continental-1.2.0-1(_ensure_tarball 按 gate_result.version 重打),