# Don't build with LTO since it breaks sdrangel %define _lto_cflags %{nil} %ifarch %{ix86} %{arm} %bcond_with fec %else %bcond_without fec %endif %bcond_without freedv Name: sdrangel Version: 7.22.5 Release: 1%{?dist} Summary: SDR/Analyzer frontend for Airspy, BladeRF, HackRF, RTL-SDR and FunCube License: GPL-3.0-or-later Group: Productivity/Hamradio/Other URL: https://github.com/f4exb/sdrangel Source: https://github.com/f4exb/sdrangel/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: cmake BuildRequires: dsdcc-devel BuildRequires: mbelib-devel BuildRequires: gcc-c++ BuildRequires: hicolor-icon-theme BuildRequires: boost-devel BuildRequires: doxygen BuildRequires: LimeSuite-devel BuildRequires: serialDV-devel BuildRequires: airspyone_host-devel BuildRequires: ffmpeg-devel BuildRequires: libxtrxll-devel BuildRequires: rpmfusion-free-release BuildRequires: libsigmf-devel BuildRequires: sgp4-devel BuildRequires: aptdec-devel BuildRequires: pkgconfig BuildRequires: faad2-devel BuildRequires: libmirisdr-devel BuildRequires: libperseus-sdr-devel BuildRequires: libdab-devel BuildRequires: hidapi-devel BuildRequires: sdrplayapi BuildRequires: hamlib-devel BuildRequires: flac-devel BuildRequires: qt6-qtwebengine-devel BuildRequires: pkgconfig(Qt6Core) BuildRequires: pkgconfig(Qt6Multimedia) BuildRequires: pkgconfig(Qt6OpenGL) BuildRequires: pkgconfig(Qt6Widgets) BuildRequires: qt6-qt5compat-devel BuildRequires: qt6-qtwebsockets-devel BuildRequires: qt6-qtlocation-devel BuildRequires: qt6-qtcharts-devel BuildRequires: qt6-qtserialport-devel BuildRequires: qt6-qtspeech-devel BuildRequires: qt6-qtbase-private-devel BuildRequires: qt5-qtgamepad-devel BuildRequires: qt6-qtwebchannel-devel BuildRequires: qt6-qtsvg-devel BuildRequires: qt6-qtscxml-devel BuildRequires: libxtrx-devel BuildRequires: uhd-devel BuildRequires: pkgconfig(SoapySDR) BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(codec2) BuildRequires: pkgconfig(fftw3f) BuildRequires: pkgconfig(libairspyhf) BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(libbladeRF) BuildRequires: pkgconfig(libhackrf) BuildRequires: pkgconfig(libiio) BuildRequires: pkgconfig(liblz4) BuildRequires: pkgconfig(librtlsdr) BuildRequires: pkgconfig(libpostproc) # It does not build with libmirisdr from upstream # https://github.com/f4exb/libmirisdr-4 is needed #BuildRequires: pkgconfig(libmirisdr) BuildRequires: pkgconfig(libusb-1.0) BuildRequires: pkgconfig(opus) BuildRequires: pkgconfig(opencv) BuildRequires: pkgconfig(libswscale) Requires: python3-requests %if 0%{with fec} BuildRequires: pkgconfig(libcm256cc) BuildRequires: pkgconfig(nanomsg) %endif %if 0%{with freedv} BuildRequires: pkgconfig(codec2) %endif %description SDRangel is an Open Source Qt5/OpenGL SDR and signal analyzer frontend to various hardware. %package doc Summary: Documentation for SDRangel %description doc Documentation for SDRangel %prep %autosetup sed -i 's/\r$//' Readme.md sed -i 's|#!%{_bindir}/env python|#!%{_bindir}/python3|g' swagger/sdrangel/examples/*.py %build export CXXFLAGS="%{optflags} -Wno-return-type -fpermissive -flto=auto -fpermissive -mno-avx512f" %cmake \ -DCMAKE_SHARED_LINKER_FLAGS="" \ -DCMAKE_SKIP_RPATH:BOOL=OFF \ -DCMAKE_BUILD_TYPE=Release \ -DENABLE_DISTRIBUTION=ON \ -DSGP4_DIR=/usr/lib64 \ -DXTRX_DIR=/usr/lib64 \ -DAPT_DIR=/usr/lib64 \ -DSOAPYSDR_DIR=/usr/lib64 \ %ifarch %{ix86} -DFORCE_SSE41=ON \ -DARCH_OPT=x86-64-v2 \ %endif -DRX_SAMPLE_24BIT=ON \ --preset default-qt6 %cmake_build %install %cmake_install rm -f %{buildroot}%{_datadir}/sdrangel/Readme.md %files %license LICENSE %{_bindir}/sdrangel %{_bindir}/sdrangelbench %{_bindir}/sdrangelsrv %{_bindir}/ldpctool %dir %{_prefix}/lib64/sdrangel %{_prefix}/lib64/sdrangel/lib* %{_prefix}/lib64/sdrangel/plugins %{_prefix}/lib64/sdrangel/pluginssrv %{_datadir}/applications/sdrangel.desktop %{_datadir}/icons/hicolor/scalable/apps/sdrangel_icon.svg %files doc %doc Readme.md %doc swagger/sdrangel/examples/ %changelog * Mon Feb 07 2022 lu3vea@gmail.com - 6.19.0 - Completed package