Name: hackrf
Version: 2024.02.1
Release: 1%{?dist}
Summary: HackRF Utilities
License: GPL-2.0-or-later AND BSD-3-Clause
URL: https://greatscottgadgets.com/%{name}/
Source0: https://github.com/greatscottgadgets/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz
Patch0: shebang.patch
Patch1: static.patch
BuildRequires: cmake
BuildRequires: fftw3-devel
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: libusbx-devel
BuildRequires: systemd
# When the host software changes, we generally will also have to update the firmware.
Recommends: %{name}-firmware = %{version}-%{release}
%description
Hardware designs and software for HackRF, a project to produce a low cost, open
source software radio platform.
NOTE: To upgrade to this release, you must update libhackrf and hackrf-tools on
your host computer. You must also update firmware on your HackRF device.
%package devel
Summary: Development files for %{name}
License: BSD-3-Clause
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: libusbx-devel
%description devel
Files needed to develop software against libhackrf.
%package doc
Summary: Supplemental documentation for HackRF
License: GPL-2.0-only
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
%description doc
Supplemental documentation for HackRF. For more information, visit the project at
https://greatscottgadgets.com/hackrf
%package firmware
Summary: Firmware for HackRF
License: GPL-2.0-or-later
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
%description firmware
Firmware for HackRF.
%package hardware
Summary: Hardware schematics / pcb layout for HackRF.
License: CERN-OHL-P-2.0 AND GPL-2.0-only
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
%description hardware
Hardware schematics / pcb layout for HackRF.
%prep
%autosetup -p1
# Fix "plugdev" nonsense
sed -i -e 's/GROUP="@HACKRF_GROUP@"/ENV{ID_SOFTWARE_RADIO}="1"/g' host/libhackrf/53-hackrf.rules.in
sed -i -e 's/GROUP="plugdev"/ENV{ID_SOFTWARE_RADIO}="1"/g' host/libhackrf/53-hackrf.rules
%build
pushd host
%cmake \
-DINSTALL_UDEV_RULES=on \
-DUDEV_RULES_PATH:PATH=%{_udevrulesdir} \
-DUDEV_RULES_GROUP=plugdev
%cmake_build
popd
%install
pushd host
%cmake_install
popd
# Docs, schematics, and firmware don't have any "make install", so do that manually.
mkdir -p %{buildroot}%{_docdir}/%{name} %{buildroot}%{_datadir}/%{name}
cp -a doc/* %{buildroot}%{_docdir}/%{name}
cp -a firmware-bin %{buildroot}%{_datadir}/%{name}
cp -a hardware %{buildroot}%{_datadir}/%{name}
(
echo "Please see https://hackrf.readthedocs.io/en/latest/updating_firmware.html for"
echo "instructions regarding updating the firmware on your HackRF device."
) > %{buildroot}%{_datadir}/%{name}/README-Fedora
%post
%{?ldconfig}
%udev_rules_update
%postun
%{?ldconfig}
%udev_rules_update
%files
%license COPYING
%doc Readme.md RELEASENOTES
%{_bindir}/hackrf_*
%{_libdir}/libhackrf.so.*
%{_udevrulesdir}/53-hackrf.rules
%files devel
%{_includedir}/libhackrf/hackrf.h
%{_libdir}/pkgconfig/libhackrf.pc
%{_libdir}/libhackrf.so
%files firmware
%{_datadir}/%{name}/README-Fedora
%{_datadir}/%{name}/firmware-bin
%files hardware
%{_datadir}/%{name}/hardware
%files doc
%{_docdir}/%{name}/*
%changelog
* Sat Feb 24 2024 Steven A. Falco <stevenfalco@gmail.com> - 2024.02.1-1
- Update to 2024.02.1
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2023.01.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2023.01.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2023.01.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Feb 21 2023 Steven A. Falco <stevenfalco@gmail.com> - 2023.01.1-4
- Do not build static subpackage
* Wed Feb 15 2023 Steven A. Falco <stevenfalco@gmail.com> - 2023.01.1-3
- HW and FW should be noarch
* Wed Feb 01 2023 Steven A. Falco <stevenfalco@gmail.com> - 2023.01.1-2
- Need new sources for 2023.01.1
* Wed Feb 01 2023 Fedora Release Monitoring <release-monitoring@fedoraproject.org> - 2023.01.1-1
- Update to 2023.01.1 (#2166397)
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2022.09.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Dec 02 2022 Steven A. Falco <stevenfalco@gmail.com> - 2022.09.1-6
- Update License
* Fri Dec 02 2022 Steven A. Falco <stevenfalco@gmail.com> - 2022.09.1-5
- Correct URLs
- Include fw / hw sub-packages
* Wed Nov 23 2022 Steven A. Falco <stevenfalco@gmail.com> - 2022.09.1-4
- Doc requires theme to bring in fonts, etc.
* Wed Nov 23 2022 Steven A. Falco <stevenfalco@gmail.com> - 2022.09.1-3
- Build doc package
* Tue Nov 22 2022 Steven A. Falco <stevenfalco@gmail.com> - 2022.09.1-2
- Remove F19 (and older) support
- Push/pop dirs for cmake
* Thu Nov 17 2022 Richard Shaw <hobbes1069@gmail.com> - 2022.09.1-1
- Update to 2022.09.1.
- Update license tag to SPDX format.
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Aug 03 2020 Scott K Logan <logans@cottsay.net> - 2018.01.1-8
- Resolve build issues due to CMake out-of-source build changes
- Re-arranged spec to better align to modern patterns
- Fix %%{_isa} in static subpackage dependency
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-7
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.01.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon May 7 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 2018.01.1-1
- Update package to 2018.01.1
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2017.02.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Jan 16 2018 Scott K Logan <logans@cottsay.net> - 2017.02.1-2
- Fix noarch dependency in doc package
* Thu Dec 14 2017 Sergey Avseyev <sergey.avseyev@gmail.com> - 2017.02.1-1
- Update package to 2017.02.1
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2015.07.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2015.07.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2015.07.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2015.07.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Aug 24 2015 Scott K Logan <logans@cottsay.net> - 2015.07.2-1
- Update to 2015.07.2
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2014.08.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue Sep 23 2014 Scott K Logan <logans@cottsay.net> - 2014.08.1-1
- Initial package