]> git.pld-linux.org Git - packages/gnuradio.git/blame - gnuradio.spec
- release 3 (boost 1.73)
[packages/gnuradio.git] / gnuradio.spec
CommitLineData
bd978e6e 1# TODO:
f7595bf5
AM
2# - fix uhd build (create uhd.spec first)
3# - GUIs split/subpackages?
bd978e6e 4%bcond_with uhd
79e30fd3 5
bd978e6e
AM
6Summary: Software defined radio framework
7Name: gnuradio
7961c90e 8Version: 3.8.0.0
65618ced 9Release: 3
bd978e6e
AM
10License: GPL v3
11Group: Applications/Engineering
9bfaf30a 12Source0: http://gnuradio.org/releases/gnuradio/%{name}-%{version}.tar.gz
7961c90e 13# Source0-md5: 85e1ed4b18c46227731d83f8c3fbe45a
d6476722 14Patch0: link.patch
7961c90e 15Patch1: python-libdir.patch
8621df22 16Patch2: %{name}-boost.patch
5da91619 17URL: http://www.gnuradio.org/
65618ced
JB
18BuildRequires: Qt5Core-devel >= 5
19BuildRequires: Qt5DBus-devel >= 5
20BuildRequires: Qt5Declarative-devel >= 5
21BuildRequires: Qt5Designer-devel >= 5
22BuildRequires: Qt5Gui-devel >= 5
23BuildRequires: Qt5Help-devel >= 5
24BuildRequires: Qt5Network-devel >= 5
25BuildRequires: Qt5OpenGL-devel >= 5
26BuildRequires: Qt5Script-devel >= 5
27BuildRequires: Qt5ScriptTools-devel >= 5
28BuildRequires: Qt5Sql-devel >= 5
29BuildRequires: Qt5Svg-devel >= 5
30BuildRequires: Qt5Test-devel >= 5
31BuildRequires: Qt5UiTools-devel >= 5
32BuildRequires: Qt5WebKit-devel >= 5
33BuildRequires: Qt5Xml-devel >= 5
34BuildRequires: Qt5XmlPatterns-devel >= 5
79e30fd3 35BuildRequires: SDL-devel >= 1.2.0
ccd7cc61 36BuildRequires: alsa-lib-devel >= 0.9
d6476722 37BuildRequires: boost-devel >= 1.53
8621df22
JB
38# GI
39BuildRequires: cairo-gobject >= 1.0
40BuildRequires: cmake >= 3.5.1
ccd7cc61 41BuildRequires: cppunit-devel >= 1.9.14
d979be4a 42BuildRequires: cppzmq-devel
ccd7cc61 43BuildRequires: doxygen >= 1.5
5da91619 44BuildRequires: fftw3-devel >= 3.0
40931f23 45BuildRequires: fftw3-single-devel >= 3.0
5da91619 46BuildRequires: gsl-devel >= 1.10
8621df22
JB
47# GI
48BuildRequires: gtk+3 >= 3.10.8
dd7e9430 49BuildRequires: ice-devel
ccd7cc61 50BuildRequires: jack-audio-connection-kit-devel >= 0.8
8621df22 51BuildRequires: libstdc++-devel >= 6:4.8.4
bd978e6e 52BuildRequires: libusb-devel
ccd7cc61
TP
53BuildRequires: log4cpp-devel
54BuildRequires: orc-devel >= 0.4.11
8621df22
JB
55# PangoCairo GI
56BuildRequires: pango >= 1:1.26.0
40931f23 57BuildRequires: pkgconfig
ccd7cc61 58BuildRequires: portaudio-devel >= 19
65618ced 59BuildRequires: python >= 1:3.6.5
8621df22
JB
60BuildRequires: python3 >= 1:3.6.5
61BuildRequires: python3-Mako >= 0.9.1
9356aa73 62# R/S instead?
7961c90e 63BuildRequires: python3-PyOpenGL
9356aa73 64# R/S instead?
8621df22 65BuildRequires: python3-PyYAML >= 3.10
7961c90e
JR
66BuildRequires: python3-click
67BuildRequires: python3-devel >= 2.5
68BuildRequires: python3-devel-tools
69BuildRequires: python3-lxml >= 1.3.6
70BuildRequires: python3-numpy >= 1.1.0
8621df22 71BuildRequires: python3-pygobject3 >= 2.28.6
65618ced
JB
72BuildRequires: qt5-build >= 5
73BuildRequires: qt5-qmake >= 5
7961c90e 74BuildRequires: qwt5-devel
8621df22 75BuildRequires: sip-PyQt5
40931f23 76BuildRequires: sphinx-pdg
8621df22 77BuildRequires: swig-python >= 3.0.8
bd978e6e 78BuildRequires: texlive-latex
ccd7cc61 79%{?with_uhd:BuildRequires: uhd-devel >= 3.0.0}
bd978e6e
AM
80BuildRequires: xdg-utils
81BuildRequires: xmlto
164807ce 82BuildConflicts: python-thrift
bd978e6e 83Requires: portaudio
7961c90e 84Requires: python3-PyQt5
8621df22 85Requires: python3-PyYAML >= 3.10
7961c90e
JR
86Requires: python3-click
87Requires: python3-lxml
88Requires: python3-numpy
89Requires: python3-scipy
bd978e6e
AM
90Obsoletes: grc < 0.80-1
91Obsoletes: usrp < 3.3.0-1
92BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
93
37537e21
TP
94%define filterout_cpp -pipe
95
bd978e6e
AM
96%description
97GNU Radio is a collection of software that when combined with minimal
98hardware, allows the construction of radios where the actual waveforms
99transmitted and received are defined by software. What this means is
100that it turns the digital modulation schemes used in today's high
101performance wireless devices into software problems.
102
103%package devel
9d5b7836 104Summary: GNU Radio development files
bd978e6e
AM
105Group: Applications/Engineering
106Requires: %{name} = %{version}-%{release}
f7595bf5 107Requires: boost-devel
bd978e6e
AM
108Obsoletes: usrp-devel < 3.3.0-1
109
110%description devel
ccd7cc61 111GNU Radio Headers.
bd978e6e 112
79e30fd3
ER
113%package doc
114Summary: GNU Radio
115Group: Documentation
116Requires: %{name} = %{version}-%{release}
8621df22 117%if "%{_rpmversion}" >= "4.6"
79e30fd3
ER
118BuildArch: noarch
119%endif
120
121%description doc
122GNU Radio Documentation.
123
bd978e6e 124%package examples
9d5b7836 125Summary: GNU Radio examples
79e30fd3 126Group: Documentation
bd978e6e 127Requires: %{name} = %{version}-%{release}
8621df22 128%if "%{_rpmversion}" >= "4.6"
79e30fd3
ER
129BuildArch: noarch
130%endif
bd978e6e
AM
131
132%description examples
ccd7cc61 133GNU Radio examples.
bd978e6e
AM
134
135%prep
9d5b7836 136%setup -q
d6476722
JR
137%patch0 -p1
138%patch1 -p1
8621df22 139%patch2 -p1
1805fc77 140
bd978e6e 141%build
9d5b7836
TP
142%{__mkdir_p} build
143cd build
d6476722 144%cmake -Wno-dev \
1805fc77 145 -DCMAKE_BUILD_TYPE=None \
f7595bf5
AM
146 -DENABLE_DOXYGEN=FORCE \
147 -DENABLE_GR_ATSC=FORCE \
148 -DENABLE_GR_AUDIO=FORCE \
149 -DENABLE_GRC=FORCE \
150 -DENABLE-GR_COMEDI=FORCE \
151 -DENABLE_GR_CORE=FORCE \
152 -DENABLE_GR_FCD=FORCE \
153 -DENABLE_GR_NOAA=FORCE \
154 -DENABLE_GR_PAGER=FORCE \
155 -DENABLE_GR_TRELLIS=FORCE \
156 -DENABLE_GRUEL=FORCE \
157 %{?with_uhd:-DENABLE_GR_UHD=FORCE} \
158 -DENABLE_GR_UTILS=FORCE \
159 -DENABLE_GR_VIDEO_SDL=FORCE \
160 -DENABLE_GR_VOCODER=FORCE \
161 -DENABLE_GR_WXGUI=FORCE \
162 -DENABLE_PYTHON=FORCE \
163 -DENABLE_VOLK=FORCE \
164 -DSYSCONFDIR=%{_sysconfdir} \
165 ..
bd978e6e
AM
166%{__make}
167
168%install
169rm -rf $RPM_BUILD_ROOT
170
f7595bf5 171%{__make} -C build install \
bd978e6e
AM
172 DESTDIR=$RPM_BUILD_ROOT
173
27dc4c8e 174rm -rf inst-doc
a9e3794d 175install -d inst-doc
8621df22 176%{__mv} $RPM_BUILD_ROOT%{_docdir}/gnuradio-*/* inst-doc
a9e3794d 177
f7595bf5
AM
178# filter bundled cmake files for other libraries
179cd $RPM_BUILD_ROOT%{_libdir}/cmake/gnuradio
180for f in *.cmake; do
181 case $f in
182 FindUHD.cmake|Gr*.cmake|Gnu*.cmake)
183 ;;
184 *)
185 rm "$f"
186 ;;
187 esac
188done
400a7613 189
8621df22
JB
190# obsolete theme
191%{__rm} -r $RPM_BUILD_ROOT%{_iconsdir}/gnome
192
9430b8d3 193# remove binary from noarch examples
12665bc8 194%{__rm} $RPM_BUILD_ROOT%{_datadir}/gnuradio/examples/{audio/dial_tone,qt-gui/display_qt}
9430b8d3 195
bd978e6e
AM
196%clean
197rm -rf $RPM_BUILD_ROOT
198
27dc4c8e
ER
199%post -p /sbin/ldconfig
200%postun -p /sbin/ldconfig
bd978e6e
AM
201
202%files
203%defattr(644,root,root,755)
9d5b7836 204%doc README.hacking
a9e3794d 205%attr(755,root,root) %{_bindir}/gnuradio-*
d6476722 206%attr(755,root,root) %{_bindir}/gr-*
9d5b7836
TP
207%attr(755,root,root) %{_bindir}/gr_*
208%attr(755,root,root) %{_bindir}/grcc
d6476722 209%attr(755,root,root) %{_bindir}/polar_channel_construction
1805fc77 210%attr(755,root,root) %{_bindir}/volk-config-info
f7595bf5
AM
211%attr(755,root,root) %{_bindir}/volk_modtool
212%attr(755,root,root) %{_bindir}/volk_profile
7961c90e
JR
213%attr(755,root,root) %{_libdir}/libgnuradio-*.so.*.*.*.*
214%attr(755,root,root) %ghost %{_libdir}/libgnuradio-*.so.3.8.0
f7595bf5 215%attr(755,root,root) %{_libdir}/libvolk.so.*.*
a9e3794d
AM
216%dir %{_sysconfdir}/gnuradio
217%dir %{_sysconfdir}/gnuradio/conf.d
218%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gnuradio/conf.d/*.conf
9d5b7836 219
7961c90e
JR
220%dir %{py3_sitedir}/gnuradio
221%{py3_sitedir}/gnuradio/*.py*
222%dir %{py3_sitedir}/gnuradio/analog
223%attr(755,root,root) %{py3_sitedir}/gnuradio/analog/*.so
224%{py3_sitedir}/gnuradio/analog/*.py*
225
226%dir %{py3_sitedir}/gnuradio/audio
227%attr(755,root,root) %{py3_sitedir}/gnuradio/audio/*.so
228%{py3_sitedir}/gnuradio/audio/*.py*
229
230%dir %{py3_sitedir}/gnuradio/blocks
231%attr(755,root,root) %{py3_sitedir}/gnuradio/blocks/*.so
232%{py3_sitedir}/gnuradio/blocks/*.py*
233
234%dir %{py3_sitedir}/gnuradio/channels
235%attr(755,root,root) %{py3_sitedir}/gnuradio/channels/*.so
236%{py3_sitedir}/gnuradio/channels/*.py*
237
238%{py3_sitedir}/gnuradio/ctrlport
239
240%dir %{py3_sitedir}/gnuradio/digital
241%attr(755,root,root) %{py3_sitedir}/gnuradio/digital/*.so
242%{py3_sitedir}/gnuradio/digital/*.py*
243%{py3_sitedir}/gnuradio/digital/utils
244
245%dir %{py3_sitedir}/gnuradio/dtv
246%{py3_sitedir}/gnuradio/dtv/*.py*
247%attr(755,root,root) %{py3_sitedir}/gnuradio/dtv/_dtv_swig.so
248
249%dir %{py3_sitedir}/gnuradio/fec
250%attr(755,root,root) %{py3_sitedir}/gnuradio/fec/*.so
251%{py3_sitedir}/gnuradio/fec/*.py*
252%dir %{py3_sitedir}/gnuradio/fec/LDPC
253%{py3_sitedir}/gnuradio/fec/LDPC/*.py*
254%dir %{py3_sitedir}/gnuradio/fec/polar
255%{py3_sitedir}/gnuradio/fec/polar/*.py*
256
257%dir %{py3_sitedir}/gnuradio/fft
258%attr(755,root,root) %{py3_sitedir}/gnuradio/fft/*.so
259%{py3_sitedir}/gnuradio/fft/*.py*
260
261%dir %{py3_sitedir}/gnuradio/filter
262%attr(755,root,root) %{py3_sitedir}/gnuradio/filter/*.so
263%{py3_sitedir}/gnuradio/filter/*.py*
264
265%dir %{py3_sitedir}/gnuradio/gr
266%attr(755,root,root) %{py3_sitedir}/gnuradio/gr/*.so
267%{py3_sitedir}/gnuradio/gr/*.py*
268
269%{py3_sitedir}/gnuradio/grc
270%{py3_sitedir}/gnuradio/gru
271
272%dir %{py3_sitedir}/gnuradio/qtgui
273%attr(755,root,root) %{py3_sitedir}/gnuradio/qtgui/*.so
274%{py3_sitedir}/gnuradio/qtgui/*.py*
275
276%dir %{py3_sitedir}/gnuradio/trellis
277%attr(755,root,root) %{py3_sitedir}/gnuradio/trellis/*.so
278%{py3_sitedir}/gnuradio/trellis/*.py*
279
280%dir %{py3_sitedir}/gnuradio/video_sdl
281%attr(755,root,root) %{py3_sitedir}/gnuradio/video_sdl/*.so
282%{py3_sitedir}/gnuradio/video_sdl/*.py*
283
284%dir %{py3_sitedir}/gnuradio/vocoder
285%attr(755,root,root) %{py3_sitedir}/gnuradio/vocoder/*.so
286%{py3_sitedir}/gnuradio/vocoder/*.py*
287
288%dir %{py3_sitedir}/gnuradio/wavelet
289%attr(755,root,root) %{py3_sitedir}/gnuradio/wavelet/*.so
290%{py3_sitedir}/gnuradio/wavelet/*.py*
291
292%dir %{py3_sitedir}/gnuradio/zeromq
293%attr(755,root,root) %{py3_sitedir}/gnuradio/zeromq/*.so
294%{py3_sitedir}/gnuradio/zeromq/*.py*
295
296%dir %{py3_sitedir}/pmt
297%attr(755,root,root) %{py3_sitedir}/pmt/_pmt_swig.so
298%{py3_sitedir}/pmt/*.py*
299%{py3_sitedir}/volk_modtool
9d5b7836
TP
300
301%{_datadir}/gnuradio
bd978e6e 302%exclude %{_datadir}/gnuradio/examples
bd978e6e 303
7961c90e
JR
304%dir %{_libexecdir}/gnuradio
305%attr(755,root,root) %{_libexecdir}/gnuradio/grc_setup_freedesktop
306
307%{_desktopdir}/gnuradio-grc.desktop
308%{_iconsdir}/hicolor/*x*/apps/gnuradio-grc.png
309%{_datadir}/mime/packages/gnuradio-grc.xml
1805fc77 310
bd978e6e
AM
311%files devel
312%defattr(644,root,root,755)
a9e3794d 313%{_includedir}/gnuradio
9d5b7836
TP
314%{_includedir}/pmt
315%{_includedir}/volk
a9e3794d 316%attr(755,root,root) %{_libdir}/libgnuradio-*.so
9d5b7836 317%attr(755,root,root) %{_libdir}/libvolk.so
a9e3794d 318%{_pkgconfigdir}/gnuradio-*.pc
9d5b7836 319%{_pkgconfigdir}/volk.pc
8621df22 320%{_libdir}/cmake/gnuradio
f7595bf5 321%{_libdir}/cmake/volk
bd978e6e 322
80987876
ER
323%files doc
324%defattr(644,root,root,755)
325%doc inst-doc/*
326
bd978e6e
AM
327%files examples
328%defattr(644,root,root,755)
329%{_datadir}/gnuradio/examples
This page took 0.122236 seconds and 4 git commands to generate.