diff --git a/0-shard-queues-vendor-change-cmake-download.patch b/0-shard-queues-vendor-change-cmake-download.patch new file mode 100644 index 0000000000000000000000000000000000000000..c2749211beb376818ae12eb0618cbbeb70e6059b --- /dev/null +++ b/0-shard-queues-vendor-change-cmake-download.patch @@ -0,0 +1,21 @@ +diff -Naur ros-humble-shared-queues-vendor-0.15.4_org/CMakeLists.txt ros-humble-shared-queues-vendor-0.15.4/CMakeLists.txt +--- ros-humble-shared-queues-vendor-0.15.4_org/CMakeLists.txt 2023-04-24 09:48:32.602033696 +0800 ++++ ros-humble-shared-queues-vendor-0.15.4/CMakeLists.txt 2023-04-24 09:50:20.619616042 +0800 +@@ -13,7 +13,7 @@ + ExternalProject_Add(ext-singleproducerconsumer + PREFIX singleproducerconsumer + DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/download +- URL https://github.com/cameron314/readerwriterqueue/archive/ef7dfbf553288064347d51b8ac335f1ca489032a.zip ++ URL ${CMAKE_CURRENT_SOURCE_DIR}/ef7dfbf553288064347d51b8ac335f1ca489032a.zip + URL_MD5 64c673dd381b8fae9254053ad7b2be4d + TIMEOUT 60 + INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR} +@@ -26,7 +26,7 @@ + ExternalProject_Add(ext-concurrentqueue + PREFIX concurrentqueue + DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/download +- URL https://github.com/cameron314/concurrentqueue/archive/8f65a8734d77c3cc00d74c0532efca872931d3ce.zip ++ URL ${CMAKE_CURRENT_SOURCE_DIR}/8f65a8734d77c3cc00d74c0532efca872931d3ce.zip + URL_MD5 71a0d932cc89150c2ade85f0d9cac9dc + TIMEOUT 60 + INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR} diff --git a/8f65a8734d77c3cc00d74c0532efca872931d3ce.zip b/8f65a8734d77c3cc00d74c0532efca872931d3ce.zip new file mode 100644 index 0000000000000000000000000000000000000000..773687e5021abd219b05a1d81113458ebc1f4317 Binary files /dev/null and b/8f65a8734d77c3cc00d74c0532efca872931d3ce.zip differ diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000000000000000000000000000000000000..d0b8456cfde61baa2967783c2684ee2135645390 --- /dev/null +++ b/_multibuild @@ -0,0 +1,21 @@ + + mcap-vendor + ros2bag + rosbag2 + rosbag2-compression + rosbag2-compression-zstd + rosbag2-cpp + rosbag2-interfaces + rosbag2-performance-benchmarking + rosbag2-py + rosbag2-storage + rosbag2-storage-default-plugins + rosbag2-storage-mcap + rosbag2-storage-mcap-testdata + rosbag2-test-common + rosbag2-tests + rosbag2-transport + shared-queues-vendor + sqlite3-vendor + zstd-vendor + diff --git a/ef7dfbf553288064347d51b8ac335f1ca489032a.zip b/ef7dfbf553288064347d51b8ac335f1ca489032a.zip new file mode 100644 index 0000000000000000000000000000000000000000..5cfa677009cf1481a9e626aa95a1852adf0365a1 Binary files /dev/null and b/ef7dfbf553288064347d51b8ac335f1ca489032a.zip differ diff --git a/mcap-vendor.spec b/mcap-vendor.spec new file mode 100644 index 0000000000000000000000000000000000000000..396e76a509e8d2b2819cd844b23912d6b77c9730 --- /dev/null +++ b/mcap-vendor.spec @@ -0,0 +1,97 @@ +%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 mcap-vendor + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: mcap vendor package + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-zstd-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-zstd-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: git +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +mcap vendor package + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Foxglove ros-tooling@foxglove.dev - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/ros-humble-ros2bag_0.15.5.orig.tar.gz b/ros-humble-ros2bag_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..691858bb98b1b1dedb1f5353f4b88e9078cf5e23 Binary files /dev/null and b/ros-humble-ros2bag_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-compression-zstd_0.15.5.orig.tar.gz b/ros-humble-rosbag2-compression-zstd_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3178f6266748c36f57987d2e2985c79790973771 Binary files /dev/null and b/ros-humble-rosbag2-compression-zstd_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-compression_0.15.5.orig.tar.gz b/ros-humble-rosbag2-compression_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..56f403f879cb73e411a883eb06543dca618db455 Binary files /dev/null and b/ros-humble-rosbag2-compression_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-cpp_0.15.5.orig.tar.gz b/ros-humble-rosbag2-cpp_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..f2a056474eb7163d6622eb9b1121c4cb2cdfec21 Binary files /dev/null and b/ros-humble-rosbag2-cpp_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-interfaces_0.15.5.orig.tar.gz b/ros-humble-rosbag2-interfaces_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3e11e0a8b0c031547579d612d257919aff94bff0 Binary files /dev/null and b/ros-humble-rosbag2-interfaces_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-performance-benchmarking_0.15.5.orig.tar.gz b/ros-humble-rosbag2-performance-benchmarking_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9dfc52e197d046ec7f8fb189cc01eafb0b25d146 Binary files /dev/null and b/ros-humble-rosbag2-performance-benchmarking_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-py_0.15.5.orig.tar.gz b/ros-humble-rosbag2-py_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..01173042b46a3144e5955583085eb1ae5a933f6f Binary files /dev/null and b/ros-humble-rosbag2-py_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-storage-default-plugins_0.15.5.orig.tar.gz b/ros-humble-rosbag2-storage-default-plugins_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..aea00d2104492aa1bac70d7655719654db92ce54 Binary files /dev/null and b/ros-humble-rosbag2-storage-default-plugins_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-storage-mcap-testdata_0.15.5.orig.tar.gz b/ros-humble-rosbag2-storage-mcap-testdata_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..276f26168a11eb6821bbebffcb47e20bd0d9b126 Binary files /dev/null and b/ros-humble-rosbag2-storage-mcap-testdata_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-storage-mcap_0.15.5.orig.tar.gz b/ros-humble-rosbag2-storage-mcap_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..81b2283439a63f3da0d96933afa9973e3f911281 Binary files /dev/null and b/ros-humble-rosbag2-storage-mcap_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-storage_0.15.5.orig.tar.gz b/ros-humble-rosbag2-storage_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..a4170bdc8e68a381729165ddb0dd0947845f74c3 Binary files /dev/null and b/ros-humble-rosbag2-storage_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-test-common_0.15.5.orig.tar.gz b/ros-humble-rosbag2-test-common_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..add2da0a024e43038c350f615250613937fe4513 Binary files /dev/null and b/ros-humble-rosbag2-test-common_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-tests_0.15.5.orig.tar.gz b/ros-humble-rosbag2-tests_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..8dafe0d9567259fda30f4eaf570d05867e643eb6 Binary files /dev/null and b/ros-humble-rosbag2-tests_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2-transport_0.15.5.orig.tar.gz b/ros-humble-rosbag2-transport_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd49f40fd4e8a30e71480ed7085ec46eb2f41fa8 Binary files /dev/null and b/ros-humble-rosbag2-transport_0.15.5.orig.tar.gz differ diff --git a/ros-humble-rosbag2_0.15.5.orig.tar.gz b/ros-humble-rosbag2_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..2571a8c58595b6d3442053708560c7b37beb2ee0 Binary files /dev/null and b/ros-humble-rosbag2_0.15.5.orig.tar.gz differ diff --git a/ros-humble-shared-queues-vendor_0.15.5.orig.tar.gz b/ros-humble-shared-queues-vendor_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ca54eb89001a66f3cd6067452aa1e20de4a2ad6 Binary files /dev/null and b/ros-humble-shared-queues-vendor_0.15.5.orig.tar.gz differ diff --git a/ros-humble-sqlite3-vendor_0.15.4.orig.tar.gz b/ros-humble-sqlite3-vendor_0.15.4.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..83ea5a0dadd579e1405da8efaa753562fc2a3b0d Binary files /dev/null and b/ros-humble-sqlite3-vendor_0.15.4.orig.tar.gz differ diff --git a/ros-humble-sqlite3-vendor_0.15.5.orig.tar.gz b/ros-humble-sqlite3-vendor_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..c6a856b8a4529e2d8df25e4fd49e48b4cc1ca4b8 Binary files /dev/null and b/ros-humble-sqlite3-vendor_0.15.5.orig.tar.gz differ diff --git a/ros-humble-zstd-vendor_0.15.5.orig.tar.gz b/ros-humble-zstd-vendor_0.15.5.orig.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..99325260551b6e5d4ff0f3e143dbf9e70c068f4d Binary files /dev/null and b/ros-humble-zstd-vendor_0.15.5.orig.tar.gz differ diff --git a/ros2bag.spec b/ros2bag.spec new file mode 100644 index 0000000000000000000000000000000000000000..3c6d4c6d359dcc9d88560f67c571f8f4a3d0865b --- /dev/null +++ b/ros2bag.spec @@ -0,0 +1,81 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName ros2bag + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: ROS ros2bag package + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ament-index-python +Requires: ros-%{ros_distro}-rclpy +Requires: ros-%{ros_distro}-ros2cli +Requires: ros-%{ros_distro}-rosbag2-py +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-copyright +BuildRequires: ros-%{ros_distro}-ament-flake8 +BuildRequires: ros-%{ros_distro}-ament-pep257 +BuildRequires: ros-%{ros_distro}-launch-testing +BuildRequires: ros-%{ros_distro}-launch-testing-ros +BuildRequires: python3-pytest +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description + + Entry point for rosbag in ROS 2 + + +%prep +%autosetup -p1 + +%build + +# 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 +%py3_build + +%install +# 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 +%py3_install -- --prefix "/opt/ros/%{ros_distro}" + +%if 0%{?with_tests} +%check +# Look for a directory with a name indicating that it contains tests +TEST_TARGET=$(ls -d * | grep -m1 "\(test\|tests\)" ||:) +if [ -n "$TEST_TARGET" ] && %__python3 -m pytest --version; 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 +%__python3 -m pytest $TEST_TARGET || echo "RPM TESTS FAILED" +else echo "RPM TESTS SKIPPED"; fi +%endif + +%files +/opt/ros/%{ros_distro} + +%changelog +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-compression-zstd.spec b/rosbag2-compression-zstd.spec new file mode 100644 index 0000000000000000000000000000000000000000..ccaea27d80194b5462b3d32f038c5e2187fe5fda --- /dev/null +++ b/rosbag2-compression-zstd.spec @@ -0,0 +1,109 @@ +%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 rosbag2-compression-zstd + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Zstandard compression library implementation of rosbag2_compression + +License: Apache 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rcpputils +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-rosbag2-compression +Requires: ros-%{ros_distro}-zstd-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-rosbag2-compression +BuildRequires: ros-%{ros_distro}-zstd-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Zstandard compression library implementation of rosbag2_compression + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-compression.spec b/rosbag2-compression.spec new file mode 100644 index 0000000000000000000000000000000000000000..f7f61a602f1af13ac3cb4a65aa85e0ede1a527fd --- /dev/null +++ b/rosbag2-compression.spec @@ -0,0 +1,107 @@ +%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 rosbag2-compression + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Compression implementations for rosbag2 bags and messages. + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-rcpputils +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-rosbag2-cpp +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-rosbag2-cpp +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Compression implementations for rosbag2 bags and messages. + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-cpp.spec b/rosbag2-cpp.spec new file mode 100644 index 0000000000000000000000000000000000000000..92c12ff8879fc5854858f5d7f71ffca66944a66a --- /dev/null +++ b/rosbag2-cpp.spec @@ -0,0 +1,126 @@ +%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 rosbag2-cpp + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: C++ ROSBag2 client library + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ament-index-cpp +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-rcpputils +Requires: ros-%{ros_distro}-rmw +Requires: ros-%{ros_distro}-rmw-implementation +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-rosidl-runtime-c +Requires: ros-%{ros_distro}-rosidl-runtime-cpp +Requires: ros-%{ros_distro}-rosidl-typesupport-cpp +Requires: ros-%{ros_distro}-rosidl-typesupport-introspection-cpp +Requires: ros-%{ros_distro}-shared-queues-vendor +Requires: ros-%{ros_distro}-rosbag2-storage-default-plugins +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-index-cpp +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rmw +BuildRequires: ros-%{ros_distro}-rmw-implementation +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-rosidl-runtime-c +BuildRequires: ros-%{ros_distro}-rosidl-runtime-cpp +BuildRequires: ros-%{ros_distro}-rosidl-typesupport-cpp +BuildRequires: ros-%{ros_distro}-rosidl-typesupport-introspection-cpp +BuildRequires: ros-%{ros_distro}-shared-queues-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-test-msgs +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +C++ ROSBag2 client library + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-interfaces.spec b/rosbag2-interfaces.spec new file mode 100644 index 0000000000000000000000000000000000000000..3157482d559f876829ede0625c93349d23103f22 --- /dev/null +++ b/rosbag2-interfaces.spec @@ -0,0 +1,101 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2-interfaces + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Interface definitions for controlling rosbag2 + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-builtin-interfaces +Requires: ros-%{ros_distro}-rosidl-default-runtime +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-builtin-interfaces +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-rosidl-default-generators +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Interface definitions for controlling rosbag2 + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-performance-benchmarking.spec b/rosbag2-performance-benchmarking.spec new file mode 100644 index 0000000000000000000000000000000000000000..f2e2137308366a670b97f73c972f2f491a76d801 --- /dev/null +++ b/rosbag2-performance-benchmarking.spec @@ -0,0 +1,111 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2-performance-benchmarking + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Code to benchmark rosbag2 + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-rosbag2-compression +Requires: ros-%{ros_distro}-rosbag2-cpp +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-rmw +Requires: ros-%{ros_distro}-std-msgs +Requires: ros-%{ros_distro}-yaml-cpp-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rosbag2-compression +BuildRequires: ros-%{ros_distro}-rosbag2-cpp +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-rmw +BuildRequires: ros-%{ros_distro}-std-msgs +BuildRequires: ros-%{ros_distro}-yaml-cpp-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Code to benchmark rosbag2 + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-py.spec b/rosbag2-py.spec new file mode 100644 index 0000000000000000000000000000000000000000..ba93bc1fe25966c31250a5fce8c9eb618b68b443 --- /dev/null +++ b/rosbag2-py.spec @@ -0,0 +1,115 @@ +%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 rosbag2-py + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Python API for rosbag2 + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-pybind11-vendor +Requires: ros-%{ros_distro}-rosbag2-compression +Requires: ros-%{ros_distro}-rosbag2-cpp +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-rosbag2-transport +Requires: ros-%{ros_distro}-rpyutils +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-pybind11-vendor +BuildRequires: ros-%{ros_distro}-rosbag2-compression +BuildRequires: ros-%{ros_distro}-rosbag2-cpp +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-rosbag2-transport +BuildRequires: ros-%{ros_distro}-ament-cmake-ros +BuildRequires: ros-%{ros_distro}-ament-cmake-python +BuildRequires: ros-%{ros_distro}-python-cmake-module +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: python3-pytest +BuildRequires: ros-%{ros_distro}-rcl-interfaces +BuildRequires: ros-%{ros_distro}-rclpy +BuildRequires: ros-%{ros_distro}-rosbag2-storage-default-plugins +BuildRequires: ros-%{ros_distro}-rosidl-runtime-py +BuildRequires: ros-%{ros_distro}-std-msgs +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Python API for rosbag2 + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-storage-default-plugins.spec b/rosbag2-storage-default-plugins.spec new file mode 100644 index 0000000000000000000000000000000000000000..242e58fae37110fe2b93dfad7f8599fe8a9bf8e7 --- /dev/null +++ b/rosbag2-storage-default-plugins.spec @@ -0,0 +1,110 @@ +%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 rosbag2-storage-default-plugins + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: ROSBag2 SQLite3 storage plugin + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rcpputils +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-sqlite3-vendor +Requires: ros-%{ros_distro}-yaml-cpp-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-sqlite3-vendor +BuildRequires: ros-%{ros_distro}-yaml-cpp-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +ROSBag2 SQLite3 storage plugin + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-storage-mcap-testdata.spec b/rosbag2-storage-mcap-testdata.spec new file mode 100644 index 0000000000000000000000000000000000000000..d725dc9627cae062293f74bf70ef242fd62852ae --- /dev/null +++ b/rosbag2-storage-mcap-testdata.spec @@ -0,0 +1,98 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2-storage-mcap-testdata + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: message definition test fixtures for MCAP schema recording + +License: Apache-2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-rosidl-default-generators +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +message definition test fixtures for MCAP schema recording + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Foxglove ros-tooling@foxglove.dev - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-storage-mcap.spec b/rosbag2-storage-mcap.spec new file mode 100644 index 0000000000000000000000000000000000000000..00e8be180c249b4e0b7cbc8a6f3eaee402775ac9 --- /dev/null +++ b/rosbag2-storage-mcap.spec @@ -0,0 +1,112 @@ +%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 rosbag2-storage-mcap + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: rosbag2 storage plugin using the MCAP file format + +License: Apache-2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ament-index-cpp +Requires: ros-%{ros_distro}-mcap-vendor +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-index-cpp +BuildRequires: ros-%{ros_distro}-mcap-vendor +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-clang-format +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +BuildRequires: ros-%{ros_distro}-std-msgs +BuildRequires: ros-%{ros_distro}-rosbag2-storage-mcap-testdata +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +rosbag2 storage plugin using the MCAP file format + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Foxglove ros-tooling@foxglove.dev - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-storage.spec b/rosbag2-storage.spec new file mode 100644 index 0000000000000000000000000000000000000000..de173bca25159697c86c8ca9083c630d97300733 --- /dev/null +++ b/rosbag2-storage.spec @@ -0,0 +1,107 @@ +%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 rosbag2-storage + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: ROS2 independent storage format to store serialized ROS2 messages + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-pluginlib +Requires: ros-%{ros_distro}-rcpputils +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-yaml-cpp-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-pluginlib +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-yaml-cpp-vendor +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gtest +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +ROS2 independent storage format to store serialized ROS2 messages + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-test-common.spec b/rosbag2-test-common.spec new file mode 100644 index 0000000000000000000000000000000000000000..7b609a1d4f9f9513ac3def7af770f44b8b983121 --- /dev/null +++ b/rosbag2-test-common.spec @@ -0,0 +1,101 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2-test-common + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Commonly used test helper classes and fixtures for rosbag2 + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-rcutils +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rcutils +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Commonly used test helper classes and fixtures for rosbag2 + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-tests.spec b/rosbag2-tests.spec new file mode 100644 index 0000000000000000000000000000000000000000..b73f0eb70c21842d01cabdd8788a7be0e82fcd86 --- /dev/null +++ b/rosbag2-tests.spec @@ -0,0 +1,111 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2-tests + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Tests package for rosbag2 + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ament-index-cpp +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-index-cpp +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rcpputils +BuildRequires: ros-%{ros_distro}-ros2bag +BuildRequires: ros-%{ros_distro}-rosbag2-compression +BuildRequires: ros-%{ros_distro}-rosbag2-compression-zstd +BuildRequires: ros-%{ros_distro}-rosbag2-cpp +BuildRequires: ros-%{ros_distro}-rosbag2-storage-default-plugins +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +BuildRequires: ros-%{ros_distro}-std-msgs +BuildRequires: ros-%{ros_distro}-test-msgs +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Tests package for rosbag2 + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2-transport.spec b/rosbag2-transport.spec new file mode 100644 index 0000000000000000000000000000000000000000..cd8bcc4e3645a4f5a3a5d6dc0e06a4c0155cefc2 --- /dev/null +++ b/rosbag2-transport.spec @@ -0,0 +1,120 @@ +%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 rosbag2-transport + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Layer encapsulating ROS middleware to allow rosbag2 to be used with or without middleware + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-rclcpp +Requires: ros-%{ros_distro}-rosbag2-compression +Requires: ros-%{ros_distro}-rosbag2-cpp +Requires: ros-%{ros_distro}-rosbag2-interfaces +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-rmw +Requires: ros-%{ros_distro}-shared-queues-vendor +Requires: ros-%{ros_distro}-yaml-cpp-vendor +Requires: ros-%{ros_distro}-keyboard-handler +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-rclcpp +BuildRequires: ros-%{ros_distro}-rosbag2-compression +BuildRequires: ros-%{ros_distro}-rosbag2-cpp +BuildRequires: ros-%{ros_distro}-rosbag2-interfaces +BuildRequires: ros-%{ros_distro}-rosbag2-storage +BuildRequires: ros-%{ros_distro}-rmw +BuildRequires: ros-%{ros_distro}-shared-queues-vendor +BuildRequires: ros-%{ros_distro}-yaml-cpp-vendor +BuildRequires: ros-%{ros_distro}-keyboard-handler +BuildRequires: ros-%{ros_distro}-ament-cmake-ros +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-ament-cmake-gmock +BuildRequires: ros-%{ros_distro}-ament-index-cpp +BuildRequires: ros-%{ros_distro}-ament-lint-auto +BuildRequires: ros-%{ros_distro}-ament-lint-common +BuildRequires: ros-%{ros_distro}-rmw-implementation-cmake +BuildRequires: ros-%{ros_distro}-rosbag2-compression-zstd +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +BuildRequires: ros-%{ros_distro}-test-msgs +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Layer encapsulating ROS middleware to allow rosbag2 to be used with or without middleware + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/rosbag2.spec b/rosbag2.spec new file mode 100644 index 0000000000000000000000000000000000000000..705f8a41168dabe23ed5573438720f064e943563 --- /dev/null +++ b/rosbag2.spec @@ -0,0 +1,107 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName rosbag2 + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Meta package for rosbag2 related packages + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: ros-%{ros_distro}-ros2bag +Requires: ros-%{ros_distro}-rosbag2-compression +Requires: ros-%{ros_distro}-rosbag2-cpp +Requires: ros-%{ros_distro}-rosbag2-py +Requires: ros-%{ros_distro}-rosbag2-storage +Requires: ros-%{ros_distro}-rosbag2-transport +Requires: ros-%{ros_distro}-shared-queues-vendor +Requires: ros-%{ros_distro}-rosbag2-compression-zstd +Requires: ros-%{ros_distro}-rosbag2-storage-default-plugins +Requires: ros-%{ros_distro}-sqlite3-vendor +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +BuildRequires: ros-%{ros_distro}-rosbag2-test-common +BuildRequires: ros-%{ros_distro}-rosbag2-tests +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Meta package for rosbag2 related packages + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/shared-queues-vendor.spec b/shared-queues-vendor.spec new file mode 100644 index 0000000000000000000000000000000000000000..52d2eae68ca5a2fce96ecc28565f23a91c319e6a --- /dev/null +++ b/shared-queues-vendor.spec @@ -0,0 +1,101 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName shared-queues-vendor + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: Vendor package for concurrent queues from moodycamel + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz +Source1: 8f65a8734d77c3cc00d74c0532efca872931d3ce.zip +Source2: ef7dfbf553288064347d51b8ac335f1ca489032a.zip + +Patch0: 0-shard-queues-vendor-change-cmake-download.patch + +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +Vendor package for concurrent queues from moodycamel + +%prep +%autosetup -p1 +cp %{SOURCE1} . +cp %{SOURCE2} . + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools diff --git a/sqlite3-vendor.spec b/sqlite3-vendor.spec new file mode 100644 index 0000000000000000000000000000000000000000..b35ce1695b0cafbb74cfa2b30e45aa24ad5ad11b --- /dev/null +++ b/sqlite3-vendor.spec @@ -0,0 +1,97 @@ +%bcond_without tests +%bcond_without weak_deps + +%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}/.*$ + +%define RosPkgName sqlite3-vendor + +Name: ros-%{ros_distro}-%{RosPkgName} +Version: 0.15.5 +Release: 1%{?dist}%{?release_suffix} +Summary: SQLite 3 vendor package + +License: Apache License 2.0 +Source0: %{name}_%{version}.orig.tar.gz + +Requires: sqlite-devel +Requires: ros-%{ros_distro}-ros-workspace + +BuildRequires: sqlite-devel +BuildRequires: ros-%{ros_distro}-ament-cmake +BuildRequires: ros-%{ros_distro}-ros-workspace + +%if 0%{?with_tests} +%endif + +Provides: %{name}-devel = %{version}-%{release} +Provides: %{name}-doc = %{version}-%{release} +Provides: %{name}-runtime = %{version}-%{release} + +%description +SQLite 3 vendor package + +%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 + +# 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}" \ + -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 +* Thu May 04 2023 Michael Orlov michael.orlov@apex.ai - 0.15.5-1 +- Autogenerated by ros-porting-tools