From fd6ef932a9fac2b6a39fd470ca1b034c8862642a Mon Sep 17 00:00:00 2001 From: I-am-a-robot Date: Fri, 25 Jul 2025 06:32:35 +0000 Subject: [PATCH] apply new package message_tf_frame_transformer --- files_in_srpm.txt | 2 + message_tf_frame_transformer.spec | 114 ++++++++++++++++++ message_tf_frame_transformer.src.rpm | Bin 0 -> 20883 bytes ...age-tf-frame-transformer_1.1.1.orig.tar.gz | Bin 0 -> 11882 bytes 4 files changed, 116 insertions(+) create mode 100644 files_in_srpm.txt create mode 100644 message_tf_frame_transformer.spec create mode 100644 message_tf_frame_transformer.src.rpm create mode 100644 ros-humble-message-tf-frame-transformer_1.1.1.orig.tar.gz diff --git a/files_in_srpm.txt b/files_in_srpm.txt new file mode 100644 index 0000000..3ed343a --- /dev/null +++ b/files_in_srpm.txt @@ -0,0 +1,2 @@ +message-tf-frame-transformer.spec +ros-humble-message-tf-frame-transformer_1.1.1.orig.tar.gz diff --git a/message_tf_frame_transformer.spec b/message_tf_frame_transformer.spec new file mode 100644 index 0000000..737db6f --- /dev/null +++ b/message_tf_frame_transformer.spec @@ -0,0 +1,114 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName message-tf-frame-transformer +%define ros_distro humble +%define with_tests 0 + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 1.1.1 +Release: 1%{?dist}%{?release_suffix} +Summary: Transforms messages of arbitrary type to a different frame using tf2::doTransform + +License: MIT +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-geometry-msgs +Requires: ros-%{ros_distro}-ros-environment +Requires: ros-%{ros_distro}-sensor-msgs +Requires: ros-%{ros_distro}-tf2-geometry-msgs +Requires: ros-%{ros_distro}-tf2-ros +Requires: ros-%{ros_distro}-tf2-sensor-msgs +Requires: ros-%{ros_distro}-tf2 +Requires: ros-%{ros_distro}-rclcpp + +BuildRequires: ros-%{ros_distro}-geometry-msgs +BuildRequires: ros-%{ros_distro}-ros-environment +BuildRequires: ros-%{ros_distro}-sensor-msgs +BuildRequires: ros-%{ros_distro}-tf2-geometry-msgs +BuildRequires: ros-%{ros_distro}-tf2-ros +BuildRequires: ros-%{ros_distro}-tf2-sensor-msgs +BuildRequires: ros-%{ros_distro}-tf2 +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-ament-cmake + +%if 0%{?with_tests} +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Transforms messages of arbitrary type to a different frame using tf2::doTransform + +%prep +%autosetup -p1 + +%build +# Needed to bootstrap since the ros_workspace package does not yet exist. +export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages + +export ROS_DISTRO=%{ros_distro} +export ROS_PYTHON_VERSION=%{python3_version} + +# In case we're installing to a non-standard location, look for a setup.sh +# in the install tree and source it. It will set things like +# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. +if [ -f "/opt/ros/%{ros_distro}/setup.sh" ]; then . "/opt/ros/%{ros_distro}/setup.sh"; fi +mkdir -p .obj-%{_target_platform} && cd .obj-%{_target_platform} +%cmake3 \ + -UINCLUDE_INSTALL_DIR \ + -ULIB_INSTALL_DIR \ + -USYSCONF_INSTALL_DIR \ + -USHARE_INSTALL_PREFIX \ + -ULIB_SUFFIX \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \ + -DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \ + -DCMAKE_INSTALL_LIBDIR="/opt/ros/%{ros_distro}/lib" \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ +%if !0%{?with_tests} + -DBUILD_TESTING=OFF \ +%endif + .. + +%make_build + +%install +# Needed to bootstrap since the ros_workspace package does not yet exist. +export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages + +# In case we're installing to a non-standard location, look for a setup.sh +# in the install tree and source it. It will set things like +# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. +if [ -f "/opt/ros/%{ros_distro}/setup.sh" ]; then . "/opt/ros/%{ros_distro}/setup.sh"; fi +%make_install -C .obj-%{_target_platform} + +%if 0%{?with_tests} +%check +# Needed to bootstrap since the ros_workspace package does not yet exist. +export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages + +# Look for a Makefile target with a name indicating that it runs tests +TEST_TARGET=$(%__make -qp -C .obj-%{_target_platform} | sed "s/^\(test\|check\):.*/\\1/;t f;d;:f;q0") +if [ -n "$TEST_TARGET" ]; then +# In case we're installing to a non-standard location, look for a setup.sh +# in the install tree and source it. It will set things like +# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. +if [ -f "/opt/ros/%{ros_distro}/setup.sh" ]; then . "/opt/ros/%{ros_distro}/setup.sh"; fi +CTEST_OUTPUT_ON_FAILURE=1 \ + %make_build -C .obj-%{_target_platform} $TEST_TARGET || echo "RPM TESTS FAILED" +else echo "RPM TESTS SKIPPED"; fi +%endif + +%files +/opt/ros/%{ros_distro} + +%changelog +* Fri May 23 2025 Lennart Reiher lennart.reiher@rwth-aachen.de - 1.1.1-1 +- Autogenerated by ros-porting-tools diff --git a/message_tf_frame_transformer.src.rpm b/message_tf_frame_transformer.src.rpm new file mode 100644 index 0000000000000000000000000000000000000000..e69ffd9dd1a65f485682968e0a76eb07cefebfd4 GIT binary patch literal 20883 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 literal 0 HcmV?d00001 -- Gitee