%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 wiimote Name: ros-%{ros_distro}-%{RosPkgName} Version: 3.1.0 Release: 1%{?dist}%{?release_suffix} Summary: ROS wiimote package Url: http://www.ros.org/wiki/wiimote License: GPL Source0: %{name}_%{version}.orig.tar.gz Requires: ros-%{ros_distro}-geometry-msgs Requires: ros-%{ros_distro}-rclcpp Requires: ros-%{ros_distro}-rclcpp-components Requires: ros-%{ros_distro}-rclcpp-lifecycle Requires: ros-%{ros_distro}-sensor-msgs Requires: ros-%{ros_distro}-std-msgs Requires: ros-%{ros_distro}-std-srvs Requires: ros-%{ros_distro}-wiimote-msgs Requires: libbluetooth Requires: cwiid Requires: ros-%{ros_distro}-ros-workspace BuildRequires: ros-%{ros_distro}-geometry-msgs BuildRequires: ros-%{ros_distro}-rclcpp BuildRequires: ros-%{ros_distro}-rclcpp-components BuildRequires: ros-%{ros_distro}-rclcpp-lifecycle BuildRequires: ros-%{ros_distro}-sensor-msgs BuildRequires: ros-%{ros_distro}-std-msgs BuildRequires: ros-%{ros_distro}-std-srvs BuildRequires: ros-%{ros_distro}-wiimote-msgs BuildRequires: bluez-devel BuildRequires: cwiid-dev BuildRequires: ros-%{ros_distro}-ament-cmake BuildRequires: ros-%{ros_distro}-ament-cmake-auto BuildRequires: ros-%{ros_distro}-ros-workspace %if 0%{?with_tests} BuildRequires: ros-%{ros_distro}-ament-cmake-gtest 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 The wiimote package allows ROS nodes to communicate with a Nintendo Wiimote and its related peripherals, including the Nunchuk, Motion Plus, and (experimentally) the Classic. The package implements a ROS node that uses Bluetooth to communicate with the Wiimote device, obtaining accelerometer and gyro data, the state of LEDs, the IR camera, rumble (vibrator), buttons, joystick, and battery state. The node additionally enables ROS nodes to control the Wiimote's LEDs and vibration for feedback to the human Wiimote operator. LEDs and vibration may be switched on and off, or made to operate according to a timed pattern. %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 Jonathan Bohren jbo@jhu.edu - 3.1.0-1 - Autogenerated by ros-porting-tools