summaryrefslogtreecommitdiff
path: root/resource-retriever.spec
blob: aedfa911438f6bb7d2136c03ba8db353a7c10993 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
%bcond_with tests
%bcond_without weak_deps

%define ros_distro      humble

%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      resource-retriever

Name:           ros-%{ros_distro}-%{RosPkgName}
Version:        3.1.3
Release:        1%{?dist}%{?release_suffix}
Summary:        ROS resource-retriever package

Url:            http://ros.org/wiki/resource_retriever
License:        BSD
Source0:        %{RosPkgName}-%{version}.tar.gz

Requires: ros-%{ros_distro}-ament-index-cpp
Requires: ros-%{ros_distro}-ament-index-python
Requires: ros-%{ros_distro}-libcurl-vendor
Requires: ros-%{ros_distro}-ros-workspace

BuildRequires: ros-%{ros_distro}-ament-index-cpp
BuildRequires: ros-%{ros_distro}-ament-index-python
BuildRequires: ros-%{ros_distro}-libcurl-vendor
BuildRequires: ros-%{ros_distro}-ament-cmake-ros
BuildRequires: ros-%{ros_distro}-ros-workspace

%if 0%{?with_tests}
BuildRequires: ros-%{ros_distro}-ament-cmake-gtest
BuildRequires: ros-%{ros_distro}-ament-cmake-pytest
BuildRequires: ros-%{ros_distro}-ament-lint-auto
BuildRequires: ros-%{ros_distro}-ament-lint-common
BuildRequires: python3-pytest
BuildRequires: ros-%{ros_distro}-python-cmake-module
%endif

Provides:       %{name}-devel = %{version}-%{release}
Provides:       %{name}-doc = %{version}-%{release}
Provides:       %{name}-runtime = %{version}-%{release}

%description
This package retrieves data from url-format files such as http://,
   ftp://, package:// file://, etc., and loads the data into memory.
   The package:// url for ros packages is translated into a local
   file:// url.  The resourse retriever was initially designed to load
   mesh files into memory, but it can be used for any type of
   data. The resource retriever is based on the the libcurl library.

%prep
%autosetup -c -n resource-retriever-3.1.3

%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
    ../%{RosPkgName}-%{version}

%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
* Sat Oct 17 2026 kuyan_kubuds <kuyan@kubuds.cn> - 3.1.3-1
- Sync resource-retriever 3.1.3 from humble branch to master

* Mon Sep 21 2026 Wanming Hu <huwanming@huawei.com> - 3.1.3-1
- Upgrade resource-retriever from 3.1.1 to 3.1.3 for ROS 2 Humble.

* Thu May 04 2023 Alejandro Hernandez Cordero <alejandro@openrobotics.org> - 3.1.1-1
- Autogenerated by ros-porting-tools

* Wed Jan 10 2024 Chris Lalancette clalancette@osrfoundation.org - 1.12.7-1
- Autogenerated by ros-porting-tools