]> git.pld-linux.org Git - packages/gnuradio.git/blob - gnuradio.spec
- remove binary from examples
[packages/gnuradio.git] / gnuradio.spec
1 # TODO:
2 # - fix uhd build (create uhd.spec first)
3 # - GUIs split/subpackages?
4 %bcond_with     uhd
5
6 Summary:        Software defined radio framework
7 Name:           gnuradio
8 Version:        3.7.13.4
9 Release:        2
10 License:        GPL v3
11 Group:          Applications/Engineering
12 Source0:        http://gnuradio.org/releases/gnuradio/%{name}-%{version}.tar.gz
13 # Source0-md5:  b38d9cfa7cb4dcb97f5d19ebcabe8dcb
14 Patch0:         link.patch
15 Patch1:         gsl.patch
16 Patch2:         libexec.patch
17 Patch3:         qwt-includes.patch
18 URL:            http://www.gnuradio.org/
19 BuildRequires:  Qt3Support >= 4.8
20 BuildRequires:  QtCLucene-devel >= 4.8
21 BuildRequires:  QtCore-devel >= 4.8
22 BuildRequires:  QtDBus-devel >= 4.8
23 BuildRequires:  QtDeclarative-devel >= 4.8
24 BuildRequires:  QtDesigner-devel >= 4.8
25 BuildRequires:  QtGui-devel >= 4.8
26 BuildRequires:  QtHelp-devel >= 4.8
27 BuildRequires:  QtNetwork-devel >= 4.8
28 BuildRequires:  QtOpenGL-devel >= 4.8
29 BuildRequires:  QtScript-devel >= 4.8
30 BuildRequires:  QtScriptTools-devel >= 4.8
31 BuildRequires:  QtSql-devel >= 4.8
32 BuildRequires:  QtSvg-devel >= 4.8
33 BuildRequires:  QtTest-devel >= 4.8
34 BuildRequires:  QtUiTools-devel >= 4.8
35 BuildRequires:  QtWebKit-devel >= 4.8
36 BuildRequires:  QtXml-devel >= 4.8
37 BuildRequires:  QtXmlPatterns-devel >= 4.8
38 BuildRequires:  SDL-devel >= 1.2.0
39 BuildRequires:  alsa-lib-devel >= 0.9
40 BuildRequires:  boost-devel >= 1.53
41 BuildRequires:  cmake >= 2.6
42 BuildRequires:  cppunit-devel >= 1.9.14
43 BuildRequires:  doxygen >= 1.5
44 BuildRequires:  fftw3-devel >= 3.0
45 BuildRequires:  fftw3-single-devel >= 3.0
46 BuildRequires:  gsl-devel >= 1.10
47 BuildRequires:  ice-devel
48 BuildRequires:  jack-audio-connection-kit-devel >= 0.8
49 BuildRequires:  libusb-devel
50 BuildRequires:  log4cpp-devel
51 BuildRequires:  orc-devel >= 0.4.11
52 BuildRequires:  pkgconfig
53 BuildRequires:  portaudio-devel >= 19
54 # R/S instead?
55 BuildRequires:  python-PyOpenGL
56 BuildRequires:  sip-PyQt4 >= 4.4
57 # R/S instead?
58 BuildRequires:  python-PyQwt-devel >= 5.2
59 BuildRequires:  python-cheetah >= 2.0.0
60 BuildRequires:  python-devel >= 2.5
61 BuildRequires:  python-devel-tools
62 BuildRequires:  python-ice
63 BuildRequires:  python-lxml >= 1.3.6
64 BuildRequires:  python-numpy >= 1.1.0
65 BuildRequires:  python-pygtk-devel >= 2.10.0
66 # R/S instead?
67 BuildRequires:  python-wxPython-devel >= 2.8
68 BuildRequires:  qt4-qmake >= 4.2.0
69 BuildRequires:  qwt-devel >= 5.2
70 BuildRequires:  sphinx-pdg
71 BuildRequires:  swig-python >= 1.3.31
72 BuildRequires:  texlive-latex
73 %{?with_uhd:BuildRequires:      uhd-devel >= 3.0.0}
74 BuildRequires:  xdg-utils
75 BuildRequires:  xmlto
76 BuildConflicts: python-thrift
77 Requires:       portaudio
78 Requires:       python-PyQt4
79 Requires:       python-cheetah
80 Requires:       python-lxml
81 Requires:       python-numpy
82 Requires:       python-pygtk-gtk
83 Requires:       python-scipy
84 Requires:       python-wxPython
85 Obsoletes:      grc < 0.80-1
86 Obsoletes:      usrp < 3.3.0-1
87 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
88
89 %define         filterout_cpp   -pipe
90
91 %description
92 GNU Radio is a collection of software that when combined with minimal
93 hardware, allows the construction of radios where the actual waveforms
94 transmitted and received are defined by software. What this means is
95 that it turns the digital modulation schemes used in today's high
96 performance wireless devices into software problems.
97
98 %package devel
99 Summary:        GNU Radio development files
100 Group:          Applications/Engineering
101 Requires:       %{name} = %{version}-%{release}
102 Requires:       boost-devel
103 Obsoletes:      usrp-devel < 3.3.0-1
104
105 %description devel
106 GNU Radio Headers.
107
108 %package doc
109 Summary:        GNU Radio
110 Group:          Documentation
111 Requires:       %{name} = %{version}-%{release}
112 %if "%{_rpmversion}" >= "5"
113 BuildArch:      noarch
114 %endif
115
116 %description doc
117 GNU Radio Documentation.
118
119 %package examples
120 Summary:        GNU Radio examples
121 Group:          Documentation
122 Requires:       %{name} = %{version}-%{release}
123 %if "%{_rpmversion}" >= "5"
124 BuildArch:      noarch
125 %endif
126
127 %description examples
128 GNU Radio examples.
129
130 %prep
131 %setup -q
132 %patch0 -p1
133 %patch1 -p1
134 %patch2 -p1
135 %patch3 -p1
136
137 %build
138 %{__mkdir_p} build
139 cd build
140 %cmake -Wno-dev \
141         -DCMAKE_BUILD_TYPE=None \
142         -DENABLE_DOXYGEN=FORCE \
143         -DENABLE_GR_ATSC=FORCE \
144         -DENABLE_GR_AUDIO=FORCE \
145         -DENABLE_GRC=FORCE \
146         -DENABLE-GR_COMEDI=FORCE \
147         -DENABLE_GR_CORE=FORCE \
148         -DENABLE_GR_FCD=FORCE \
149         -DENABLE_GR_NOAA=FORCE \
150         -DENABLE_GR_PAGER=FORCE \
151         -DENABLE_GR_TRELLIS=FORCE \
152         -DENABLE_GRUEL=FORCE \
153         %{?with_uhd:-DENABLE_GR_UHD=FORCE} \
154         -DENABLE_GR_UTILS=FORCE \
155         -DENABLE_GR_VIDEO_SDL=FORCE \
156         -DENABLE_GR_VOCODER=FORCE \
157         -DENABLE_GR_WXGUI=FORCE \
158         -DENABLE_PYTHON=FORCE \
159         -DENABLE_VOLK=FORCE \
160         -DSYSCONFDIR=%{_sysconfdir} \
161         ..
162 %{__make}
163
164 %install
165 rm -rf $RPM_BUILD_ROOT
166
167 %{__make} -C build install \
168         DESTDIR=$RPM_BUILD_ROOT
169
170 rm -rf inst-doc
171 install -d inst-doc
172 mv $RPM_BUILD_ROOT%{_docdir}/gnuradio-*/* inst-doc
173
174 # filter bundled cmake files for other libraries
175 cd $RPM_BUILD_ROOT%{_libdir}/cmake/gnuradio
176 for f in *.cmake; do
177         case $f in
178                 FindUHD.cmake|Gr*.cmake|Gnu*.cmake)
179                         ;;
180                 *)
181                         rm "$f"
182                         ;;
183         esac
184 done
185
186 # remove binary from noarch examples
187 %{__rm} $RPM_BUILD_ROOT%{_datadir}/gnuradio/examples/{audio/dial_tone,fcd/fcd_nfm_rx,qt-gui/display_qt}
188
189 %clean
190 rm -rf $RPM_BUILD_ROOT
191
192 %post   -p /sbin/ldconfig
193 %postun -p /sbin/ldconfig
194
195 %files
196 %defattr(644,root,root,755)
197 %doc README.hacking
198 %attr(755,root,root) %{_bindir}/gnuradio-*
199 %attr(755,root,root) %{_bindir}/gr-*
200 %attr(755,root,root) %{_bindir}/gr_*
201 %attr(755,root,root) %{_bindir}/grcc
202 %attr(755,root,root) %{_bindir}/polar_channel_construction
203 %attr(755,root,root) %{_bindir}/usrp_flex
204 %attr(755,root,root) %{_bindir}/usrp_flex_all
205 %attr(755,root,root) %{_bindir}/usrp_flex_band
206 %attr(755,root,root) %{_bindir}/volk-config-info
207 %attr(755,root,root) %{_bindir}/volk_modtool
208 %attr(755,root,root) %{_bindir}/volk_profile
209 %attr(755,root,root) %{_libdir}/libgnuradio-*.so.*.*
210 %attr(755,root,root) %ghost %{_libdir}/libgnuradio-*.so.0
211 %attr(755,root,root) %{_libdir}/libvolk.so.*.*
212 %dir %{_sysconfdir}/gnuradio
213 %dir %{_sysconfdir}/gnuradio/conf.d
214 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gnuradio/conf.d/*.conf
215
216 %dir %{py_sitedir}/gnuradio
217 %{py_sitedir}/gnuradio/*.py*
218 %dir %{py_sitedir}/gnuradio/analog
219 %attr(755,root,root) %{py_sitedir}/gnuradio/analog/*.so
220 %{py_sitedir}/gnuradio/analog/*.py*
221
222 %dir %{py_sitedir}/gnuradio/atsc
223 %attr(755,root,root) %{py_sitedir}/gnuradio/atsc/*.so
224 %{py_sitedir}/gnuradio/atsc/*.py*
225
226 %dir %{py_sitedir}/gnuradio/audio
227 %attr(755,root,root) %{py_sitedir}/gnuradio/audio/*.so
228 %{py_sitedir}/gnuradio/audio/*.py*
229
230 %dir %{py_sitedir}/gnuradio/blocks
231 %attr(755,root,root) %{py_sitedir}/gnuradio/blocks/*.so
232 %{py_sitedir}/gnuradio/blocks/*.py*
233
234 %dir %{py_sitedir}/gnuradio/channels
235 %attr(755,root,root) %{py_sitedir}/gnuradio/channels/*.so
236 %{py_sitedir}/gnuradio/channels/*.py*
237
238 %{py_sitedir}/gnuradio/ctrlport
239
240 %dir %{py_sitedir}/gnuradio/digital
241 %attr(755,root,root) %{py_sitedir}/gnuradio/digital/*.so
242 %{py_sitedir}/gnuradio/digital/*.py*
243 %{py_sitedir}/gnuradio/digital/utils
244
245 %dir %{py_sitedir}/gnuradio/dtv
246 %{py_sitedir}/gnuradio/dtv/*.py*
247 %attr(755,root,root) %{py_sitedir}/gnuradio/dtv/_dtv_swig.so
248
249 %dir %{py_sitedir}/gnuradio/fcd
250 %attr(755,root,root) %{py_sitedir}/gnuradio/fcd/*.so
251 %{py_sitedir}/gnuradio/fcd/*.py*
252
253 %dir %{py_sitedir}/gnuradio/fec
254 %attr(755,root,root) %{py_sitedir}/gnuradio/fec/*.so
255 %{py_sitedir}/gnuradio/fec/*.py*
256 %dir %{py_sitedir}/gnuradio/fec/LDPC
257 %{py_sitedir}/gnuradio/fec/LDPC/*.py*
258 %dir %{py_sitedir}/gnuradio/fec/polar
259 %{py_sitedir}/gnuradio/fec/polar/*.py*
260
261 %dir %{py_sitedir}/gnuradio/fft
262 %attr(755,root,root) %{py_sitedir}/gnuradio/fft/*.so
263 %{py_sitedir}/gnuradio/fft/*.py*
264
265 %dir %{py_sitedir}/gnuradio/filter
266 %attr(755,root,root) %{py_sitedir}/gnuradio/filter/*.so
267 %{py_sitedir}/gnuradio/filter/*.py*
268
269 %dir %{py_sitedir}/gnuradio/gr
270 %attr(755,root,root) %{py_sitedir}/gnuradio/gr/*.so
271 %{py_sitedir}/gnuradio/gr/*.py*
272
273 %{py_sitedir}/gnuradio/grc
274 %{py_sitedir}/gnuradio/gru
275 %{py_sitedir}/gnuradio/modtool
276
277 %dir %{py_sitedir}/gnuradio/noaa
278 %attr(755,root,root) %{py_sitedir}/gnuradio/noaa/*.so
279 %{py_sitedir}/gnuradio/noaa/*.py*
280
281 %dir %{py_sitedir}/gnuradio/pager
282 %attr(755,root,root) %{py_sitedir}/gnuradio/pager/*.so
283 %{py_sitedir}/gnuradio/pager/*.py*
284
285 %dir %{py_sitedir}/gnuradio/qtgui
286 %attr(755,root,root) %{py_sitedir}/gnuradio/qtgui/*.so
287 %{py_sitedir}/gnuradio/qtgui/*.py*
288
289 %dir %{py_sitedir}/gnuradio/trellis
290 %attr(755,root,root) %{py_sitedir}/gnuradio/trellis/*.so
291 %{py_sitedir}/gnuradio/trellis/*.py*
292
293 %dir %{py_sitedir}/gnuradio/video_sdl
294 %attr(755,root,root) %{py_sitedir}/gnuradio/video_sdl/*.so
295 %{py_sitedir}/gnuradio/video_sdl/*.py*
296
297 %dir %{py_sitedir}/gnuradio/vocoder
298 %attr(755,root,root) %{py_sitedir}/gnuradio/vocoder/*.so
299 %{py_sitedir}/gnuradio/vocoder/*.py*
300
301 %dir %{py_sitedir}/gnuradio/wavelet
302 %attr(755,root,root) %{py_sitedir}/gnuradio/wavelet/*.so
303 %{py_sitedir}/gnuradio/wavelet/*.py*
304
305 %dir %{py_sitedir}/gnuradio/wxgui
306 %attr(755,root,root) %{py_sitedir}/gnuradio/wxgui/*.so
307 %{py_sitedir}/gnuradio/wxgui/*.py*
308 %{py_sitedir}/gnuradio/wxgui/forms
309 %{py_sitedir}/gnuradio/wxgui/plotter
310
311 %dir %{py_sitedir}/gnuradio/zeromq
312 %attr(755,root,root) %{py_sitedir}/gnuradio/zeromq/*.so
313 %{py_sitedir}/gnuradio/zeromq/*.py*
314
315 %{py_sitedir}/grc_gnuradio
316 %dir %{py_sitedir}/pmt
317 %attr(755,root,root) %{py_sitedir}/pmt/_pmt_swig.so
318 %{py_sitedir}/pmt/*.py*
319 %{py_sitedir}/volk_modtool
320
321 %{_datadir}/gnuradio
322 %exclude %{_datadir}/gnuradio/examples
323
324 %dir %{_libdir}/gnuradio
325 %attr(755,root,root) %{_libdir}/gnuradio/grc_setup_freedesktop
326
327 %files devel
328 %defattr(644,root,root,755)
329 %{_includedir}/gnuradio
330 %{_includedir}/pmt
331 %{_includedir}/volk
332 %attr(755,root,root) %{_libdir}/libgnuradio-*.so
333 %attr(755,root,root) %{_libdir}/libvolk.so
334 %{_pkgconfigdir}/gnuradio-*.pc
335 %{_pkgconfigdir}/gr-wxgui.pc
336 %{_pkgconfigdir}/volk.pc
337 %dir %{_libdir}/cmake/gnuradio
338 %{_libdir}/cmake/gnuradio/Gnu*.cmake
339 %{_libdir}/cmake/gnuradio/Gr*.cmake
340 %{?with_uhd:%{_libdir}/cmake/gnuradio/FindUHD.cmake}
341 %{_libdir}/cmake/volk
342
343 %files doc
344 %defattr(644,root,root,755)
345 %doc inst-doc/*
346
347 %files examples
348 %defattr(644,root,root,755)
349 %{_datadir}/gnuradio/examples
This page took 0.077111 seconds and 3 git commands to generate.