diff options
Diffstat (limited to 'autoware-lanelet2-extension.spec')
| -rw-r--r-- | autoware-lanelet2-extension.spec | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/autoware-lanelet2-extension.spec b/autoware-lanelet2-extension.spec new file mode 100644 index 0000000..29b925d --- /dev/null +++ b/autoware-lanelet2-extension.spec @@ -0,0 +1,123 @@ +# topdir(in archive): autoware-lanelet2-extension-1.2.0 (repo root; the ROS +# package source lives in the autoware_lanelet2_extension/ sub-directory) +%define ros_distro humble +%define RosPkgName autoware-lanelet2-extension + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 1.2.0 +Release: 1%{?dist} +Summary: Libraries to handle Lanelet2 format data (Autoware extension) +License: Apache License 2.0 +URL: https://github.com/autowarefoundation/autoware_lanelet2_extension.git +Source0: %{RosPkgName}-%{version}.tar.gz + +%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}/.*$ + +# package.xml <depend>: geometry_msgs / lanelet2_core / lanelet2_io / +# lanelet2_maps / lanelet2_projection / lanelet2_routing / lanelet2_traffic_rules +# / lanelet2_validation / rclcpp / tf2 / tf2_geometry_msgs / visualization_msgs, +# plus the upstream-only autoware_msgs interfaces (autoware_map_msgs, +# autoware_planning_msgs) and autoware_cmake. <buildtool_depend> is +# ament_cmake_auto + autoware_cmake -> autoware_package()/autoware_auto_* +# scaffolding (ament_cmake / ament-cmake-auto below). +# System deps from the rosdep keys pugixml-dev / range-v3 -> the openEuler +# -devel package names produced by the pre-check analysis. +# geographiclib-devel: not a direct package.xml <depend>, but autoware_cmake's +# AutoDeps walks the exported package configs transitively +# (lanelet2_io -> lanelet2_projectionConfig.cmake -> +# lanelet2_projectionAutoDepsConfig.cmake -> find_package(GeographicLib)) and +# fails with "Could NOT find GeographicLib" unless the headers/libraries are in +# the build root; same BuildRequires as the sibling +# ros-humble-lanelet2-projection / ros-humble-lanelet2-validation specs. +# <test_depend> ament_cmake_ros is intentionally not listed (tests are gated off +# in %build via -DBUILD_TESTING=OFF). +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}-autoware-map-msgs +BuildRequires: ros-%{ros_distro}-autoware-planning-msgs +BuildRequires: ros-%{ros_distro}-geometry-msgs +BuildRequires: ros-%{ros_distro}-lanelet2-core +BuildRequires: ros-%{ros_distro}-lanelet2-io +BuildRequires: ros-%{ros_distro}-lanelet2-maps +BuildRequires: ros-%{ros_distro}-lanelet2-projection +BuildRequires: ros-%{ros_distro}-lanelet2-routing +BuildRequires: ros-%{ros_distro}-lanelet2-traffic-rules +BuildRequires: ros-%{ros_distro}-lanelet2-validation +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-tf2 +BuildRequires: ros-%{ros_distro}-tf2-geometry-msgs +BuildRequires: ros-%{ros_distro}-visualization-msgs +BuildRequires: pugixml-devel +BuildRequires: range-v3-devel +BuildRequires: geographiclib-devel + +Requires: ros-%{ros_distro}-ros-workspace +Requires: ros-%{ros_distro}-ament-cmake +Requires: ros-%{ros_distro}-ament-cmake-auto +Requires: ros-%{ros_distro}-autoware-cmake +Requires: ros-%{ros_distro}-autoware-map-msgs +Requires: ros-%{ros_distro}-autoware-planning-msgs +Requires: ros-%{ros_distro}-geometry-msgs +Requires: ros-%{ros_distro}-lanelet2-core +Requires: ros-%{ros_distro}-lanelet2-io +Requires: ros-%{ros_distro}-lanelet2-maps +Requires: ros-%{ros_distro}-lanelet2-projection +Requires: ros-%{ros_distro}-lanelet2-routing +Requires: ros-%{ros_distro}-lanelet2-traffic-rules +Requires: ros-%{ros_distro}-lanelet2-validation +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-tf2 +Requires: ros-%{ros_distro}-tf2-geometry-msgs +Requires: ros-%{ros_distro}-visualization-msgs +Requires: pugixml-devel +Requires: range-v3-devel +Requires: geographiclib-devel +Requires: geographiclib + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +The autoware_lanelet2_extension package contains libraries to handle Lanelet2 +format data (Autoware-specific lanelet2 extensions: regulatory elements, +projectors, query utilities and message conversion helpers). + +%prep +%autosetup -n %{RosPkgName}-%{version} + +%build +[ -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 autoware_lanelet2_extension +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 +[ -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 autoware_lanelet2_extension +cd .obj +make install DESTDIR=%{buildroot} + +%files +/opt/ros/%{ros_distro} + +%changelog +* Mon Sep 21 2026 ai-importer <ai-importer@openeuler.org> - 1.2.0-1 +- Initial import (ROS) |
