From 2e74cca72a79be3e003d92b527e1e732a03947e9 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Sat, 19 Sep 2026 12:14:26 +0000 Subject: automatic import of ros-humble-autoware-agnocast-wrapper --- .gitignore | 1 + autoware-agnocast-wrapper.spec | 102 +++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 104 insertions(+) create mode 100644 autoware-agnocast-wrapper.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..1e7a61d 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/3b60c6e7fc725c8a035d5fbd82abf839c63540a5.tar.gz diff --git a/autoware-agnocast-wrapper.spec b/autoware-agnocast-wrapper.spec new file mode 100644 index 0000000..d07bfd5 --- /dev/null +++ b/autoware-agnocast-wrapper.spec @@ -0,0 +1,102 @@ +%define ros_distro humble +%define RosPkgName autoware-agnocast-wrapper +%global commit 3b60c6e7fc725c8a035d5fbd82abf839c63540a5 + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 1.9.0^20260918git3b60c6e +Release: 1%{?dist} +Summary: Wrapper macros for Agnocast (true zero-copy communication library) +License: Apache-2.0 +URL: https://github.com/autowarefoundation/autoware_core +Source0: https://github.com/autowarefoundation/autoware_core/archive/%{commit}.tar.gz#/%{commit}.tar.gz + +# debug 子包无意义(/opt 前缀),统一关闭 +%global debug_package %{nil} +# 摘掉 brp-python-bytecompile(/opt 下字节码路径非常规) +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') +# /opt/ros 下 .so 不做自动依赖扫描 +%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}-ament-cmake-auto +BuildRequires: ros-%{ros_distro}-autoware-cmake +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-autoware-utils-rclcpp +BuildRequires: ros-%{ros_distro}-message-filters +BuildRequires: ros-%{ros_distro}-diagnostic-updater +BuildRequires: ros-%{ros_distro}-geometry-msgs +BuildRequires: ros-%{ros_distro}-tf2 +BuildRequires: ros-%{ros_distro}-tf2-ros +BuildRequires: ros-%{ros_distro}-class-loader +BuildRequires: ros-%{ros_distro}-rcl +BuildRequires: ros-%{ros_distro}-rcl-interfaces +BuildRequires: ros-%{ros_distro}-rclcpp-components +BuildRequires: glog-devel + +Requires: ros-%{ros_distro}-ros-workspace +Requires: ros-%{ros_distro}-ament-cmake +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-autoware-utils-rclcpp +Requires: ros-%{ros_distro}-message-filters +Requires: ros-%{ros_distro}-diagnostic-updater +Requires: ros-%{ros_distro}-geometry-msgs +Requires: ros-%{ros_distro}-tf2 +Requires: ros-%{ros_distro}-tf2-ros +Requires: ros-%{ros_distro}-class-loader +Requires: ros-%{ros_distro}-rcl-interfaces +Requires: ros-%{ros_distro}-rclcpp-components +Requires: ros-%{ros_distro}-launch +Requires: ros-%{ros_distro}-launch-ros +Requires: glog-devel + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Wrapper macros for Agnocast (true zero-copy communication library). +This package provides header-only wrapper macros that abstract over +Agnocast and standard rclcpp communication, allowing packages to +optionally use Agnocast zero-copy IPC when ENABLE_AGNOCAST=1. + +%prep +%autosetup -n %{commit} -p1 +# 单仓多包,切换到本包子目录后原地构建 +cd common/autoware_agnocast_wrapper + +%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} + +cd common/autoware_agnocast_wrapper +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} + +cd common/autoware_agnocast_wrapper/.obj +make install DESTDIR=%{buildroot} + +%files +/opt/ros/%{ros_distro}/ + +%changelog +* Sat Sep 19 2026 ros-sig-bot - 1.9.0^20260918git3b60c6e-1 +- Initial package for openEuler (snapshot commit 3b60c6e) diff --git a/sources b/sources new file mode 100644 index 0000000..6720f98 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +827b000ff42c508ca8bd46b169858cd8 3b60c6e7fc725c8a035d5fbd82abf839c63540a5.tar.gz -- cgit v1.2.3