blob: acae9c2366c7d365279244a8ea53d6ecf67beec6 (
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
|
%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/jazzy/.*$
%global __requires_exclude_from ^/opt/ros/jazzy/.*$
%global debug_package %{nil}
Name: ros-jazzy-rqt-graph
Version: 1.5.4
Release: 0%{?dist}%{?release_suffix}
Summary: ROS rqt_graph package
License: BSD
URL: http://wiki.ros.org/rqt_graph
Source0: %{name}-%{version}.tar.gz
BuildRequires: ros-jazzy-ament-package
Requires: ros-jazzy-ament-index-python
Requires: ros-jazzy-python-qt-binding
Requires: ros-jazzy-qt-dotgraph >= 1.1.2
Requires: ros-jazzy-rqt-gui
Requires: ros-jazzy-rqt-gui-py
BuildRequires: python%{python3_pkgversion}-devel
%if 0%{?with_tests}
BuildRequires: python3-pytest
BuildRequires: ros-jazzy-ament-package
%endif
%description
rqt_graph provides a GUI plugin for visualizing the ROS computation graph. Its
components are made generic so that other packages where you want to achieve
graph representation can depend upon this pkg (use rqt_dep to find out the pkgs
that depend. rqt_dep itself depends on rqt_graph too).
%prep
%autosetup -p1
%build
# 修复 PYTHONPATH 环境变量
export PYTHONPATH=/opt/ros/jazzy/lib/python3.11/site-packages:$PYTHONPATH
# 修复 CMAKE_PREFIX_PATH 和 PKG_CONFIG_PATH
export CMAKE_PREFIX_PATH=/opt/ros/jazzy
export PKG_CONFIG_PATH=/opt/ros/jazzy/lib/pkgconfig
export rcutils_DIR=/opt/ros/jazzy/opt/ros/jazzy/share/rcutils/cmake
# 输出环境变量以验证设置
echo "PYTHONPATH: $PYTHONPATH"
echo "CMAKE_PREFIX_PATH: $CMAKE_PREFIX_PATH"
echo "PKG_CONFIG_PATH: $PKG_CONFIG_PATH"
# 验证 ament_package 是否可用
python3 -c "import ament_package" || { echo "ament_package not found"; exit 1; }
# 创建构建目录并进入
mkdir -p .obj-%{_target_platform} && cd .obj-%{_target_platform}
%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/jazzy/setup.sh" ]; then . "/opt/ros/jazzy/setup.sh"; fi
%py3_install -- --prefix "/opt/ros/jazzy"
%if 0%{?with_tests}
%check
# 检查是否存在测试目录或文件
if [ -d "tests" ] || ls test_*.py *_test.py > /dev/null 2>&1; then
# 加载安装目录的 setup.sh 文件(如果存在)
if [ -f "/opt/ros/jazzy/setup.sh" ]; then
. "/opt/ros/jazzy/setup.sh"
fi
%__python3 -m pytest tests || echo "RPM TESTS FAILED"
else
echo "No tests to run, skipping."
fi
%endif
%files
/opt/ros/jazzy/*
%changelog
* Sun Dec 22 2024 Chris Lalancette <clalancette@gmail.com> - 1.5.4-0
- Autogenerated by Bloom
|