]>
Commit | Line | Data |
---|---|---|
1 | # TODO: | |
2 | # - fix volk, drop bcond and enable by default | |
3 | # - fix uhd build | |
4 | %bcond_with uhd | |
5 | %bcond_with volk | |
6 | # | |
7 | Summary: Software defined radio framework | |
8 | Name: gnuradio | |
9 | Version: 3.7.2.1 | |
10 | Release: 0.1 | |
11 | License: GPL v3 | |
12 | Group: Applications/Engineering | |
13 | Source0: http://gnuradio.org/files/builds/%{name}-%{version}.tar.gz | |
14 | # Source0-md5: f2ea23a30cb02802870fe8cb9bf272c9 | |
15 | Patch0: %{name}-build.patch | |
16 | URL: http://www.gnuradio.org/ | |
17 | BuildRequires: SDL-devel >= 1.2.0 | |
18 | BuildRequires: Qt3Support >= 4.8 | |
19 | BuildRequires: QtCLucene-devel >= 4.8 | |
20 | BuildRequires: QtCore-devel >= 4.8 | |
21 | BuildRequires: QtDBus-devel >= 4.8 | |
22 | BuildRequires: QtDeclarative-devel >= 4.8 | |
23 | BuildRequires: QtDesigner-devel >= 4.8 | |
24 | BuildRequires: QtGui-devel >= 4.8 | |
25 | BuildRequires: QtHelp-devel >= 4.8 | |
26 | BuildRequires: QtNetwork-devel >= 4.8 | |
27 | BuildRequires: QtOpenGL-devel >= 4.8 | |
28 | BuildRequires: QtScript-devel >= 4.8 | |
29 | BuildRequires: QtScriptTools-devel >= 4.8 | |
30 | BuildRequires: QtSql-devel >= 4.8 | |
31 | BuildRequires: QtSvg-devel >= 4.8 | |
32 | BuildRequires: QtTest-devel >= 4.8 | |
33 | BuildRequires: QtUiTools-devel >= 4.8 | |
34 | BuildRequires: QtWebKit-devel >= 4.8 | |
35 | BuildRequires: QtXml-devel >= 4.8 | |
36 | BuildRequires: QtXmlPatterns-devel >= 4.8 | |
37 | BuildRequires: alsa-lib-devel >= 0.9 | |
38 | BuildRequires: boost-devel >= 1.35 | |
39 | BuildRequires: cmake >= 2.6 | |
40 | BuildRequires: cppunit-devel >= 1.9.14 | |
41 | BuildRequires: doxygen >= 1.5 | |
42 | BuildRequires: fftw3-devel >= 3.0 | |
43 | BuildRequires: gsl-devel >= 1.10 | |
44 | BuildRequires: ice-devel | |
45 | BuildRequires: jack-audio-connection-kit-devel >= 0.8 | |
46 | BuildRequires: libusb-devel | |
47 | BuildRequires: log4cpp-devel | |
48 | BuildRequires: orc-devel >= 0.4.11 | |
49 | BuildRequires: portaudio-devel >= 19 | |
50 | BuildRequires: python-PyOpenGL | |
51 | BuildRequires: python-PyQt4-devel >= 4.4 | |
52 | BuildRequires: python-PyQwt-devel >= 5.2 | |
53 | BuildRequires: python-cheetah >= 2.0.0 | |
54 | BuildRequires: python-devel >= 2.5 | |
55 | BuildRequires: python-lxml >= 1.3.6 | |
56 | BuildRequires: python-numpy >= 1.1.0 | |
57 | BuildRequires: python-pygtk-devel >= 2.10.0 | |
58 | BuildRequires: python-wxPython-devel >= 2.8 | |
59 | BuildRequires: qwt-devel >= 5.2 | |
60 | BuildRequires: sphinx | |
61 | BuildRequires: swig-python >= 1.3.31 | |
62 | BuildRequires: texlive-latex | |
63 | %{?with_uhd:BuildRequires: uhd-devel >= 3.0.0} | |
64 | BuildRequires: xdg-utils | |
65 | BuildRequires: xmlto | |
66 | BuildConflicts: boost-devel = 1.46.0 | |
67 | BuildConflicts: boost-devel = 1.46.1 | |
68 | BuildConflicts: boost-devel = 1.47.0 | |
69 | BuildConflicts: boost-devel = 1.52.0 | |
70 | Requires: portaudio | |
71 | Requires: python-PyQt4 | |
72 | Requires: python-cheetah | |
73 | Requires: python-lxml | |
74 | Requires: python-numpy | |
75 | Requires: python-pygtk-gtk | |
76 | Requires: python-scipy | |
77 | Requires: python-wxPython | |
78 | Obsoletes: grc < 0.80-1 | |
79 | Obsoletes: usrp < 3.3.0-1 | |
80 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
81 | ||
82 | %description | |
83 | GNU Radio is a collection of software that when combined with minimal | |
84 | hardware, allows the construction of radios where the actual waveforms | |
85 | transmitted and received are defined by software. What this means is | |
86 | that it turns the digital modulation schemes used in today's high | |
87 | performance wireless devices into software problems. | |
88 | ||
89 | %package devel | |
90 | Summary: GNU Radio | |
91 | Group: Applications/Engineering | |
92 | Requires: %{name} = %{version}-%{release} | |
93 | Obsoletes: usrp-devel < 3.3.0-1 | |
94 | ||
95 | %description devel | |
96 | GNU Radio Headers. | |
97 | ||
98 | %package examples | |
99 | Summary: GNU Radio | |
100 | Group: Applications/Engineering | |
101 | Requires: %{name} = %{version}-%{release} | |
102 | ||
103 | %description examples | |
104 | GNU Radio examples. | |
105 | ||
106 | %prep | |
107 | %setup -q -n %{name} | |
108 | %patch0 -p1 | |
109 | ||
110 | # force regeneration of cached moc output files (for final tarballs) | |
111 | find -name "*_moc.cc" | xargs -r rm | |
112 | ||
113 | %build | |
114 | %{__libtoolize} | |
115 | %{__aclocal} -I config | |
116 | %{__autoheader} | |
117 | %{__automake} -Wno-portability -Wno-override -Wnone | |
118 | %{__autoconf} | |
119 | %configure \ | |
120 | --enable-dependency-tracking \ | |
121 | --enable-python \ | |
122 | --enable-doxygen \ | |
123 | --enable-dot \ | |
124 | --%{?with_volk:en}%{!?with_volk:dis}able-volk \ | |
125 | --enable-gruel \ | |
126 | --enable-gnuradio-core \ | |
127 | --enable-gr-msdd6000 \ | |
128 | --enable-gr-audio \ | |
129 | --enable-gr-atsc \ | |
130 | --enable-gr-cvsd-vocoder \ | |
131 | --enable-gr-gpio \ | |
132 | %{?with_uhd:--enable-gr-uhd} \ | |
133 | --enable-gr-gsm-fr-vocoder \ | |
134 | --enable-gr-noaa \ | |
135 | --enable-gr-pager \ | |
136 | --enable-gr-radar-pager \ | |
137 | --enable-gr-radar-mono \ | |
138 | --enable-gr-radio-astronomy \ | |
139 | --enable-gr-trellis \ | |
140 | --enable-gr-video-sdl \ | |
141 | --enable-gr-wxgui \ | |
142 | --enable-gr-sounder \ | |
143 | --enable-gr-utils \ | |
144 | --enable-gnuradio-examples \ | |
145 | --enable-grc \ | |
146 | --enable-docs \ | |
147 | --with-boost-libdir=%{_libdir} | |
148 | ||
149 | %{__make} | |
150 | ||
151 | %install | |
152 | rm -rf $RPM_BUILD_ROOT | |
153 | ||
154 | %{__make} install -j1 \ | |
155 | pythondir=%{py_sitedir} \ | |
156 | DESTDIR=$RPM_BUILD_ROOT | |
157 | ||
158 | rm -rf inst-doc | |
159 | install -d inst-doc | |
160 | mv $RPM_BUILD_ROOT%{_docdir}/gnuradio-*/* inst-doc | |
161 | ||
162 | %clean | |
163 | rm -rf $RPM_BUILD_ROOT | |
164 | ||
165 | %post -p /sbin/ldconfig | |
166 | %postun -p /sbin/ldconfig | |
167 | ||
168 | %files | |
169 | %defattr(644,root,root,755) | |
170 | %doc ChangeLog NEWS INSTALL COPYING AUTHORS | |
171 | %doc inst-doc/* | |
172 | %attr(755,root,root) %{_bindir}/create-gnuradio-out-of-tree-project | |
173 | %attr(755,root,root) %{_bindir}/file_rx_*.py | |
174 | %attr(755,root,root) %{_bindir}/gnuradio-* | |
175 | %attr(755,root,root) %{_bindir}/gr_*.py | |
176 | %attr(755,root,root) %{_bindir}/hrpt_*.py | |
177 | %attr(755,root,root) %{_bindir}/qt_digital_window.ui | |
178 | %attr(755,root,root) %{_bindir}/usrp_display_qtgui.ui | |
179 | %attr(755,root,root) %{_bindir}/usrp_*.py | |
180 | %attr(755,root,root) %{_libdir}/libgnuradio-*.so.*.* | |
181 | %attr(755,root,root) %ghost %{_libdir}/libgnuradio-*.so.0 | |
182 | %attr(755,root,root) %{_libdir}/libgruel-*.so.*.* | |
183 | %attr(755,root,root) %ghost %{_libdir}/libgruel-*.so.0 | |
184 | %dir %{_libdir}/gnuradio | |
185 | %attr(755,root,root) %{_libdir}/gnuradio/grc_setup_freedesktop | |
186 | %{_datadir}/gnuradio | |
187 | %dir %{_sysconfdir}/gnuradio | |
188 | %dir %{_sysconfdir}/gnuradio/conf.d | |
189 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gnuradio/conf.d/*.conf | |
190 | %dir %{py_sitedir}/gruel | |
191 | %{py_sitedir}/gruel/*.py* | |
192 | %dir %{py_sitedir}/gruel/pmt | |
193 | %{py_sitedir}/gruel/pmt/*.py* | |
194 | %attr(755,root,root) %{py_sitedir}/gruel/pmt/*.so | |
195 | %dir %{py_sitedir}/gnuradio | |
196 | %{py_sitedir}/gnuradio/*.py* | |
197 | %attr(755,root,root) %{py_sitedir}/gnuradio/*.so | |
198 | %dir %{py_sitedir}/gnuradio/gr | |
199 | %{py_sitedir}/gnuradio/gr/*.py* | |
200 | %attr(755,root,root) %{py_sitedir}/gnuradio/gr/*.so | |
201 | %dir %{py_sitedir}/gnuradio/digital | |
202 | %{py_sitedir}/gnuradio/digital/*.py* | |
203 | %attr(755,root,root) %{py_sitedir}/gnuradio/digital/*.so | |
204 | %dir %{py_sitedir}/gnuradio/digital/utils | |
205 | %{py_sitedir}/gnuradio/digital/utils/*.py* | |
206 | %dir %{py_sitedir}/gnuradio/audio | |
207 | %{py_sitedir}/gnuradio/audio/*.py* | |
208 | %attr(755,root,root) %{py_sitedir}/gnuradio/audio/*.so | |
209 | %dir %{py_sitedir}/gnuradio/vocoder | |
210 | %{py_sitedir}/gnuradio/vocoder/*.py* | |
211 | %attr(755,root,root) %{py_sitedir}/gnuradio/vocoder/*.so | |
212 | %dir %{py_sitedir}/gnuradio/noaa | |
213 | %{py_sitedir}/gnuradio/noaa/*.py* | |
214 | %attr(755,root,root) %{py_sitedir}/gnuradio/noaa/*.so | |
215 | %dir %{py_sitedir}/gnuradio/pager | |
216 | %{py_sitedir}/gnuradio/pager/*.py* | |
217 | %attr(755,root,root) %{py_sitedir}/gnuradio/pager/*.so | |
218 | %dir %{py_sitedir}/gnuradio/qtgui | |
219 | %{py_sitedir}/gnuradio/qtgui/*.py* | |
220 | %attr(755,root,root) %{py_sitedir}/gnuradio/qtgui/*.so | |
221 | %{py_sitedir}/gnuradio/blks2 | |
222 | %{py_sitedir}/gnuradio/blks2impl | |
223 | %{py_sitedir}/gnuradio/grc | |
224 | %{py_sitedir}/gnuradio/gru | |
225 | %{py_sitedir}/gnuradio/gruimpl | |
226 | %{py_sitedir}/gnuradio/wxgui | |
227 | %{py_sitedir}/grc_gnuradio | |
228 | %exclude %{_datadir}/gnuradio/examples | |
229 | %exclude %{py_sitedir}/gruel/*/*.la | |
230 | %exclude %{py_sitedir}/gnuradio/*.la | |
231 | %exclude %{py_sitedir}/gnuradio/*/*.la | |
232 | ||
233 | %files devel | |
234 | %defattr(644,root,root,755) | |
235 | %{_includedir}/gnuradio | |
236 | %{_includedir}/gruel | |
237 | %attr(755,root,root) %{_libdir}/libgnuradio-*.so | |
238 | %attr(755,root,root) %{_libdir}/libgruel.so | |
239 | %{_pkgconfigdir}/gnuradio-*.pc | |
240 | %{_pkgconfigdir}/gr-wxgui.pc | |
241 | %{_pkgconfigdir}/gruel.pc | |
242 | %exclude %{_libdir}/*.la | |
243 | ||
244 | %files examples | |
245 | %defattr(644,root,root,755) | |
246 | %{_datadir}/gnuradio/examples |