# # spec file for package gnuradio # # Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: gnuradio Version: 3.7.4 %define soname 0 Release: 0 Summary: GNU software radio License: GPL-3.0+ Group: Productivity/Hamradio/Other Url: http://gnuradio.org Source: http://gnuradio.org/releases/gnuradio/gnuradio-%{version}.tar.gz Source1: %{name}-rpmlintrc # PATCH-FIX-UPSTREAM gnuradio-implicit-fortify-decl.patch Patch1: gnuradio-implicit-fortify-decl.patch BuildRequires: alsa-devel BuildRequires: boost-devel BuildRequires: cmake BuildRequires: cppunit-devel BuildRequires: doxygen BuildRequires: fdupes BuildRequires: fftw3-threads-devel BuildRequires: gcc-c++ BuildRequires: gsl-devel BuildRequires: libSDL-devel BuildRequires: libjack-devel BuildRequires: libxslt-python BuildRequires: orc BuildRequires: pkg-config BuildRequires: portaudio-devel BuildRequires: python-Cheetah BuildRequires: python-Sphinx BuildRequires: python-gtk BuildRequires: python-lxml BuildRequires: python-numpy BuildRequires: python-qt4-devel BuildRequires: python-wxWidgets BuildRequires: qwt6-devel BuildRequires: swig BuildRequires: texlive-latex # BuildRequires: uhd-devel BuildRequires: update-desktop-files BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libusb-1.0) Requires: python Requires: python-Cheetah Requires: python-gtk Requires: python-lxml Requires: python-numpy Requires: python-qt4 Requires: python-wxWidgets BuildRoot: %{_tmppath}/%{name}-%{version}-build %description GNU Radio is a collection of software that when combined with minimal hardware, allows the construction of radios where the actual waveforms transmitted and received are defined by software. What this means is that it turns the digital modulation schemes used in today's high performance wireless devices into software problems. %package -n libgnuradio%{soname} Summary: Libraries for GNU Radio Group: System/Libraries %description -n libgnuradio%{soname} GNU Radio is a collection of software that when combined with minimal hardware, allows the construction of radios where the actual waveforms transmitted and received are defined by software. What this means is that it turns the digital modulation schemes used in today's high performance wireless devices into software problems. This package contains the libraries for GNU Radio. %package devel Summary: Deveopment files for GNU Radio Group: Development/Libraries/Other Requires: %{name} = %{version} %description devel GNU Radio is a collection of software that when combined with minimal hardware, allows the construction of radios where the actual waveforms transmitted and received are defined by software. What this means is that it turns the digital modulation schemes used in today's high performance wireless devices into software problems. This package contains libraries and header files for developing applications that use GNU Radio. %package doc Summary: GNU Radio documentation Group: Documentation/Other Requires: %{name} = %{version} BuildArch: noarch %description doc GNU Radio is a collection of software that when combined with minimal hardware, allows the construction of radios where the actual waveforms transmitted and received are defined by software. What this means is that it turns the digital modulation schemes used in today's high performance wireless devices into software problems. This package contains documentation for GNU Radio. %package examples Summary: GNU Radio examples Group: Productivity/Hamradio/Other Requires: %{name} = %{version} %description examples GNU Radio is a collection of software that when combined with minimal hardware, allows the construction of radios where the actual waveforms transmitted and received are defined by software. What this means is that it turns the digital modulation schemes used in today's high performance wireless devices into software problems. This package contains some examples of using GNU Radio. %prep %setup -q %patch1 -p1 # remove buildtime from documentation sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.in sed -i 's|^HTML_TIMESTAMP = YES|HTML_TIMESTAMP = NO|' docs/doxygen/Doxyfile.swig_doc.in %build %cmake make %{?_smp_mflags} %install %cmake_install install -d %{buildroot}%{_docdir}/%{name} mv %{buildroot}/%{_datadir}/doc/%{name}-*/* %{buildroot}%{_docdir}/%{name}/ # recompile python modules to avoid timestamp problems %py_compile %{buildroot}%{python_sitearch} %py_compile -O %{buildroot}%{python_sitearch} # install icons and desktop file mkdir -p %{buildroot}%{_datadir}/icons/hicolor/32x32/apps cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/grc-icon-32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/gnuradio-grc.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/grc-icon-48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/gnuradio-grc.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/64x64/apps cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/grc-icon-64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/gnuradio-grc.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/128x128/apps cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/grc-icon-128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/gnuradio-grc.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/grc-icon-256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/gnuradio-grc.png mkdir -p %{buildroot}%{_datadir}/applications cp %{buildroot}%{_datadir}/gnuradio/grc/freedesktop/gnuradio-grc.desktop %{buildroot}%{_datadir}/applications %suse_update_desktop_file -r %{buildroot}%{_datadir}/applications/gnuradio-grc.desktop Network HamRadio #remove unneeded stuff rm -rf %{buildroot}%{_datadir}/%{name}/grc/freedesktop rm -rf %{buildroot}%{_prefix}/libexec %fdupes -s %{buildroot}%{_docdir} %fdupes -s %{buildroot}%{_includedir} %fdupes -s %{buildroot}%{_libdir} %post -n libgnuradio%{soname} -p /sbin/ldconfig %postun -n libgnuradio%{soname} -p /sbin/ldconfig %files %defattr(-,root,root,-) %doc COPYING %doc %{_docdir}/%{name}/README* %{_bindir}/* %dir %{_datadir}/gnuradio %{_datadir}/gnuradio/grc/ %{_datadir}/gnuradio/modtool/ %{_datadir}/icons/hicolor/*/apps/gnuradio-grc.png %{_datadir}/applications/gnuradio-grc.desktop %{python_sitearch}/* %dir %{_sysconfdir}/gnuradio %dir %{_sysconfdir}/gnuradio/conf.d %config(noreplace) %{_sysconfdir}/gnuradio/conf.d/*.conf # doc package %exclude %{_docdir}/%{name}/html/ %exclude %{_docdir}/%{name}/xml/ %exclude %{_docdir}/%{name}/*.py %exclude %{_docdir}/%{name}/*.grc %files -n libgnuradio%{soname} %defattr(-,root,root,-) %{_libdir}/lib*.so.* %files devel %defattr(-,root,root,-) %{_includedir}/%{name}/ %{_includedir}/pmt/ %{_includedir}/volk/ %{_libdir}/lib*.so %{_libdir}/pkgconfig/*.pc %{_libdir}/cmake/gnuradio/ %{_libdir}/cmake/volk/ %files doc %defattr(-,root,root,-) %dir %{_docdir}/%{name} %{_docdir}/%{name}/html/ %{_docdir}/%{name}/xml/ %{_docdir}/%{name}/*.py %{_docdir}/%{name}/*.grc %files examples %defattr(-,root,root,-) %{_datadir}/gnuradio/examples/ %changelog