]> git.pld-linux.org Git - packages/amarok.git/blob - amarok.spec
88dea488eafda4c0e262a96a6215cee79efb38eb
[packages/amarok.git] / amarok.spec
1 # TODO:
2 # - postgresql support alongside mysql
3 # - NMM audio backend support (fix build - propably some BRs)
4 # - make descriptions less useless
5 # - track http://websvn.kde.org/trunk/extragear/multimedia/amarok/TODO?rev=470324&r1=470292&r2=470324
6 # - include /usr/bin/amarok_proxy.rb (proxy server for last.fm, but req. ruby)
7 # - main package pulls /usr/bin/ruby
8 #
9 # Conditional builds:
10 %bcond_with     gstreamer       # enable gstreamer (gst10 not stable)
11 %bcond_without  mas             # disable MAS audio backend
12 %bcond_without  xine            # disable xine engine
13 %bcond_without  xmms            # disable xmms wrapping
14 %bcond_without  zeroconf        # disable support for zeroconf
15 %bcond_without  included_sqlite # don't use included sqlite (VERY BAD IDEA), needs sqlite >= 3.3 otherwise
16 %bcond_without  helix           # disable HelixPlayer engine
17 %bcond_without  mp3players      # disable iPod and iRiver MP3 players support
18 %bcond_with     nmm             # enable NMM audio backend
19 %bcond_with     mysql           # enable MySQL support
20 %bcond_with     pgsql           # enable PostgreSQL support
21 #
22 %ifarch i386
23 %undefine       with_helix
24 %endif
25
26 Summary:        A KDE audio player
27 Summary(pl):    Odtwarzacz audio dla KDE
28 Name:           amarok
29 Version:        1.4.4
30 Release:        1
31 License:        GPL
32 Group:          X11/Applications/Multimedia
33 #Source0:       http://dl.sourceforge.net/amarok/%{name}-%{version}.tar.bz2
34 Source0:        http://mirrors.isc.org/pub/kde/stable/amarok/%{version}/src/%{name}-%{version}.tar.bz2
35 # Source0-md5:  56a9aec42088c338b81252f8e0651781
36 Patch0:         %{name}-helixplayer-morearchs.patch
37 Patch1:         %{name}-libnjb.patch
38 Patch2:         kde-ac260-lt.patch
39 Patch3:         kde-common-PLD.patch
40 URL:            http://amarok.kde.org/
41 BuildRequires:  SDL-devel
42 BuildRequires:  alsa-lib-devel
43 BuildRequires:  autoconf
44 BuildRequires:  automake
45 BuildRequires:  dbus-glib-devel
46 BuildRequires:  gettext-devel
47 %{?with_gstreamer:BuildRequires:        gstreamer-devel >= 0.10.0}
48 BuildRequires:  kdebase-devel
49 %{?with_akode:BuildRequires:    kdemultimedia-akode}
50 BuildRequires:  kdemultimedia-devel >= 9:3.1.93
51 %{?with_mp3players:BuildRequires:       libgpod-devel >= 0.2.0}
52 %{?with_mp3players:BuildRequires:       libifp-devel}
53 %{?with_mp3players:BuildRequires:       libmtp-devel}
54 %{?with_mp3players:BuildRequires:       libnjb-devel}
55 BuildRequires:  libltdl-devel
56 %{?with_pgsql:BuildRequires:            libpqxx-devel}
57 BuildRequires:  libtunepimp-devel >= 0.5.1-6
58 BuildRequires:  libvisual-devel >= 0.4.0
59 BuildRequires:  mpeg4ip-devel
60 %{?with_mysql:BuildRequires:            mysql-devel}
61 BuildRequires:  pcre-devel
62 BuildRequires:  pkgconfig
63 BuildRequires:  rpm-pythonprov
64 BuildRequires:  rpmbuild(macros) >= 1.129
65 BuildRequires:  ruby-devel >= 1.8
66 BuildRequires:  sed >= 4.0
67 %{!?with_included_sqlite:BuildRequires: sqlite3-devel >= 3.3}
68 BuildRequires:  taglib-devel >= 1.4
69 %{?with_xine:BuildRequires:     xine-lib-devel >= 1.1.1}
70 %{?with_xmms:BuildRequires:     xmms-devel}
71 Requires(post): /sbin/ldconfig
72 Requires:       %{name}-plugin = %{version}-%{release}
73 Requires:       kdebase-core >= 9:3.1.93
74 Requires:       kdemultimedia-audiocd >= 9:3.1.93
75 Obsoletes:      amarok-arts
76 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
77
78 # temporary hack for proper libgpod::itdb_get_mountpoint() detection.
79 %define         filterout_ld    -Wl,--as-needed
80
81 %description
82 A KDE audio player.
83
84 %description -l pl
85 Odtwarzacz audio dla KDE.
86
87 %package akode
88 Summary:        Plugin akode
89 Summary(pl):    Wtyczka akode
90 Group:          X11/Applications/Multimedia
91 Requires:       %{name} = %{version}-%{release}
92 Provides:       %{name}-plugin = %{version}-%{release}
93
94 %description akode
95 Plugin akode.
96
97 %description akode -l pl
98 Wtyczka akode.
99
100 %package helix
101 Summary:        Helix/Realplayer playback support for amarok
102 Summary(pl):    Wsparcie dla odtwarzania przez Helix/Realplayera dla amaroka
103 Group:          X11/Applications/Multimedia
104 Requires:       %{name} = %{version}-%{release}
105 Requires:       helix-core
106 Provides:       %{name}-plugin = %{version}-%{release}
107
108 %description helix
109 Helix/Realplayer playback support for amarok.
110
111 %description helix -l pl
112 Wsparcie dla odtwarzania przez Helix/Realplayera dla amaroka.
113
114 %package gstreamer
115 Summary:        Plugin gstreamer
116 Summary(pl):    Wtyczka gstreamer
117 Group:          X11/Applications/Multimedia
118 # deps, to get it working:
119 # mp3 decoder:  gstreamer-mad
120 # ogg decoder:  gstreamer-vorbis
121 # audio output driver:  gstreamer-audiosink-alsa
122 # from gstreamer-audio-effects to control volume, etc
123 # needed libs:
124 #  at least /usr/lib/gstreamer-0.8/libgstresample.so
125 #  probably /usr/lib/gstreamer-0.8/libgstadder.so
126 #  and probably /usr/lib/gstreamer-0.8/libgstvolume.so
127 # gstreamer-musicbrainz for being able to edit id3 tags on files.
128 Requires:       %{name} = %{version}-%{release}
129 Requires:       gstreamer-audio-effects
130 Requires:       gstreamer-audiosink
131 Requires:       gstreamer-mad
132 Requires:       gstreamer-musicbrainz
133 Requires:       gstreamer-vorbis
134 Provides:       %{name}-plugin = %{version}-%{release}
135
136 %description gstreamer
137 Plugin gstreamer.
138
139 %description gstreamer -l pl
140 Wtyczka gstreamer.
141
142 %package xine
143 Summary:        Plugin xine
144 Summary(pl):    Wtyczka xine
145 Group:          X11/Applications/Multimedia
146 Requires:       %{name} = %{version}-%{release}
147 Requires:       xine-plugin-audio
148 Provides:       %{name}-plugin = %{version}-%{release}
149
150 %description xine
151 Plugin xine.
152
153 %description xine -l pl
154 Wtyczka xine.
155
156 %package xmms
157 Summary:        Xmms wrapper
158 Summary(pl):    Wrapper xmms
159 Group:          X11/Applications/Multimedia
160 Requires:       %{name} = %{version}-%{release}
161
162 %description xmms
163 Xmms wrapper.
164
165 %description xmms -l pl
166 Wrapper xmms.
167
168 %package zeroconf
169 Summary:        Zeroconf data
170 Summary(pl):    Dane dla zeroconf
171 Group:          X11/Applications/Multimedia
172 Requires:       %{name} = %{version}-%{release}
173 Requires:       kdenetwork-kdnssd
174 Provides:       %{name}-plugin = %{version}-%{release}
175
176 %description zeroconf
177 Zeroconf data.
178
179 %description zeroconf -l pl
180 Dane dla zeroconf.
181
182 %package scripts
183 Summary:        amaroK scripts
184 Summary(pl):    Skrypty amaroKa
185 Group:          X11/Applications/Multimedia
186 Requires:       %{name} = %{version}-%{release}
187 Requires:       kdebase-kdialog
188 Requires:       python-PyQt
189 Requires:       ruby-modules
190
191 %description scripts
192 amaroK scripts allow you extend amaroK functionality.
193
194 You can learn more about scripts in amaroK from here:
195 <http://amarok.kde.org/amarokwiki/index.php/Script-Writing_HowTo>.
196
197 %description scripts -l pl
198 Skrypty amaroKa pozwalaj±ce rozszerzaæ jego funkcjonalno¶æ.
199
200 Wiêcej o skryptach w amaroKu mo¿na dowiedzieæ siê st±d:
201 <http://amarok.kde.org/amarokwiki/index.php/Script-Writing_HowTo>.
202
203 %prep
204 %setup -q
205 %patch0 -p1
206 %patch1 -p1
207 %patch2 -p1
208 %patch3 -p1
209
210 %{__sed} -i -e 's/Categories=.*/Categories=Qt;KDE;AudioVideo;Player;/' \
211         amarok/src/amarok.desktop \
212
213 # see kde bug #110909
214 %{__sed} -i -e 's/amarok_live//' amarok/src/scripts/Makefile.am
215
216 # kill env, call interpreter directly, so rpm automatics could rule
217 %{__sed} -i -e '
218         1s,#!.*bin/env.*ruby,#!%{_bindir}/ruby,
219         1s,#!.*bin/env.*python,#!%{_bindir}/python,
220         1s,#!.*bin/env.*bash,#!/bin/bash,
221 ' amarok/src/scripts/*/*.{py,rb,sh} amarok/src/amarok_proxy.rb
222
223 %build
224 cp -f /usr/share/automake/config.sub admin
225 %{__make} -f admin/Makefile.common cvs
226
227 # hack: passing something other than "no" or "yes" to --with-helix allows
228 # us to pass HELIX_LIBS
229 %configure \
230         HELIX_LIBS=%{_libdir}/helixplayer \
231         --%{?debug:en}%{!?debug:dis}able-debug%{?debug:=full} \
232         --disable-rpath \
233         --with%{!?with_mas:out}-mas \
234         --with%{!?with_xine:out}-xine \
235         --with%{!?with_gstreamer:out}-gstreamer10 \
236         --with%{!?with_akode:out}-akode \
237         --with%{!?with_helix:out}-helix%{?with_helix:=usegivenpath} \
238         --with%{!?with_nmm:out}-nmm \
239         --with%{!?with_xmms:out}-xmms \
240         --with%{!?with_mp3players:out}-libgpod \
241         --with%{!?with_mp3players:out}-libnjb \
242         --with%{!?with_mp3players:out}-libmtp \
243         --with%{!?with_mp3players:out}-ifp \
244         --%{?with_mysql:en}%{!?with_mysql:dis}able-mysql \
245         --%{?with_mysql:en}%{!?with_mysql:dis}able-postgresql \
246         --disable-final \
247         --with-mp4v2 \
248         --with-qt-libraries=%{_libdir} \
249         --with%{!?with_included_sqlite:out}-included-sqlite
250
251 %{__make}
252
253 %install
254 rm -rf $RPM_BUILD_ROOT
255
256 %{__make} install \
257         DESTDIR=$RPM_BUILD_ROOT \
258         kde_htmldir=%{_kdedocdir} \
259         kde_libs_htmldir=%{_kdedocdir}
260
261 # remove bogus dir
262 rm -rf $RPM_BUILD_ROOT%{_datadir}/locale/xx
263
264 %find_lang amarok --all-name --with-kde
265
266 %clean
267 rm -rf $RPM_BUILD_ROOT
268
269 %post
270 /sbin/ldconfig
271 if [ "$1" = 1 ]; then
272         echo "Remember to install libvisual-plugins-* packages if you"
273         echo "want to have a visualizations in amaroK."
274 fi
275
276 %postun -p /sbin/ldconfig
277
278 %files -f %{name}.lang
279 %defattr(644,root,root,755)
280 %doc AUTHORS ChangeLog README
281 %attr(755,root,root) %{_bindir}/amarok
282 %attr(755,root,root) %{_bindir}/amarokapp
283 %attr(755,root,root) %{_bindir}/amarokcollectionscanner
284 %attr(755,root,root) %{_bindir}/amarok_libvisual
285 %attr(755,root,root) %{_bindir}/amarok_proxy.rb
286 %attr(755,root,root) %{_bindir}/amarok_daapserver.rb
287 %attr(755,root,root) %{_libdir}/libamarok.so.*.*.*
288 %{_libdir}/kde3/konqsidebar_universalamarok.la
289 %attr(755,root,root) %{_libdir}/kde3/konqsidebar_universalamarok.so
290 %{_libdir}/kde3/libamarok_generic-mediadevice.la
291 %attr(755,root,root) %{_libdir}/kde3/libamarok_generic-mediadevice.so
292 %{_libdir}/kde3/libamarok_void-engine_plugin.la
293 %attr(755,root,root) %{_libdir}/kde3/libamarok_void-engine_plugin.so
294 %{_libdir}/libamarok.la
295 %{_libdir}/kde3/libamarok_daap-mediadevice.la
296 %attr(755,root,root) %{_libdir}/kde3/libamarok_daap-mediadevice.so
297 %{_libdir}/kde3/libamarok_massstorage-device.la
298 %attr(755,root,root) %{_libdir}/kde3/libamarok_massstorage-device.so
299 %{_libdir}/kde3/libamarok_nfs-device.la
300 %attr(755,root,root) %{_libdir}/kde3/libamarok_nfs-device.so
301 %{_libdir}/kde3/libamarok_smb-device.la
302 %attr(755,root,root) %{_libdir}/kde3/libamarok_smb-device.so
303 %{_libdir}/ruby_lib/http11.rb
304 %{_libdir}/ruby_lib/libhttp11.la
305 %attr(755,root,root) %{_libdir}/ruby_lib/libhttp11.so.0.0.0
306 %dir %{_datadir}/apps/amarok
307 %dir %{_datadir}/apps/amarok/scripts
308 %{_datadir}/apps/amarok/ruby_lib
309 %{_datadir}/apps/amarok/*.rc
310 %{_datadir}/apps/amarok/data
311 %{_datadir}/apps/amarok/icons
312 %{_datadir}/apps/amarok/images
313 %{_datadir}/apps/amarok/themes
314 %{_datadir}/apps/konqueror/servicemenus/amarok_append.desktop
315 %{_datadir}/apps/konqueror/servicemenus/amarok_addaspodcast.desktop
316 %{_datadir}/apps/konqueror/servicemenus/amarok_play_audiocd.desktop
317 %{_datadir}/apps/konqsidebartng/add/amarok.desktop
318 %{_datadir}/apps/konqsidebartng/entries/amarok.desktop
319 %{_datadir}/apps/konqsidebartng/kicker_entries/amarok.desktop
320 %{_datadir}/apps/profiles/amarok.profile.xml
321 %{_datadir}/config/amarokrc
322 %{_datadir}/config.kcfg/amarok.kcfg
323 %{_datadir}/services/amarok_generic-mediadevice.desktop
324 %{_datadir}/services/amarok_void-engine_plugin.desktop
325 %{_datadir}/services/amarok_daap-mediadevice.desktop
326 %{_datadir}/services/amarok_massstorage-device.desktop
327 %{_datadir}/services/amarok_nfs-device.desktop
328 %{_datadir}/services/amarok_smb-device.desktop
329 %{_datadir}/services/amaroklastfm.protocol
330 %{_datadir}/services/amarokitpc.protocol
331 %{_datadir}/services/amarokpcast.protocol
332 %{_datadir}/servicetypes/amarok_codecinstall.desktop
333 %{_datadir}/servicetypes/amarok_plugin.desktop
334 %{_desktopdir}/kde/amarok.desktop
335 %{_iconsdir}/*/*/apps/amarok.*
336 # TODO: move to subpackage
337 %if %{with mp3players}
338 %{_libdir}/kde3/libamarok_ifp-mediadevice.la
339 %attr(755,root,root) %{_libdir}/kde3/libamarok_ifp-mediadevice.so
340 %{_libdir}/kde3/libamarok_ipod-mediadevice.la
341 %attr(755,root,root) %{_libdir}/kde3/libamarok_ipod-mediadevice.so
342 %{_libdir}/kde3/libamarok_mtp-mediadevice.la
343 %attr(755,root,root) %{_libdir}/kde3/libamarok_mtp-mediadevice.so
344 %{_libdir}/kde3/libamarok_njb-mediadevice.la
345 %attr(755,root,root) %{_libdir}/kde3/libamarok_njb-mediadevice.so
346 %{_datadir}/services/amarok_ifp-mediadevice.desktop
347 %{_datadir}/services/amarok_ipod-mediadevice.desktop
348 %{_datadir}/services/amarok_mtp-mediadevice.desktop
349 %{_datadir}/services/amarok_njb-mediadevice.desktop
350 %endif
351
352 %if %{with akode}
353 %files akode
354 %defattr(644,root,root,755)
355 %{_libdir}/kde3/libamarok_aKode-engine.la
356 %attr(755,root,root) %{_libdir}/kde3/libamarok_aKode-engine.so
357 %{_datadir}/services/amarok_aKode-engine.desktop
358 %endif
359
360 %if %{with gstreamer}
361 %files gstreamer
362 %defattr(644,root,root,755)
363 %{_libdir}/kde3/libamarok_gst10engine_plugin.la
364 %attr(755,root,root) %{_libdir}/kde3/libamarok_gst10engine_plugin.so
365 %{_datadir}/config.kcfg/gstconfig.kcfg
366 %{_datadir}/services/amarok_gst10engine_plugin.desktop
367 %endif
368
369 %if %{with helix}
370 %files helix
371 %defattr(644,root,root,755)
372 %{_libdir}/kde3/libamarok_helixengine_plugin.la
373 %attr(755,root,root) %{_libdir}/kde3/libamarok_helixengine_plugin.so
374 %{_datadir}/config.kcfg/helixconfig.kcfg
375 %{_datadir}/services/amarok_helixengine_plugin.desktop
376 %endif
377
378 %if %{with xine}
379 %files xine
380 %defattr(644,root,root,755)
381 %{_libdir}/kde3/libamarok_xine-engine.la
382 %attr(755,root,root) %{_libdir}/kde3/libamarok_xine-engine.so
383 %{_datadir}/config.kcfg/xinecfg.kcfg
384 %{_datadir}/services/amarok_xine-engine.desktop
385 %endif
386
387 %if %{with xmms}
388 %files xmms
389 %defattr(644,root,root,755)
390 %attr(755,root,root) %{_bindir}/amarok_xmmswrapper2
391 %endif
392
393 %if 0
394 %if %{with zeroconf}
395 %files zeroconf
396 %defattr(644,root,root,755)
397 #%{_datadir}/apps/zeroconf/_shoutcast._tcp
398 %endif
399 %endif
400
401 %files scripts
402 %defattr(644,root,root,755)
403 %dir %{_datadir}/apps/amarok/scripts/common
404 %{_datadir}/apps/amarok/scripts/common/Publisher.py
405 %{_datadir}/apps/amarok/scripts/common/Zeroconf.py
406
407 %dir %{_datadir}/apps/amarok/scripts/templates
408 %{_datadir}/apps/amarok/scripts/templates/amarok.rb
409 %{_datadir}/apps/amarok/scripts/templates/python_qt_template.py
410 %{_datadir}/apps/amarok/scripts/templates/ruby_qt_template.rb
411
412 # amarok searches for executable programs for scripts
413 # to figure out which files need to have execute permission, use this
414 # find command:
415 # $ find $RPM_BUILD_ROOT/usr/share/apps/amarok/scripts -perm +1
416
417 #%dir %{_datadir}/apps/amarok/scripts/graphequalizer
418 #%{_datadir}/apps/amarok/scripts/graphequalizer/README
419 #%attr(755,root,root) %{_datadir}/apps/amarok/scripts/graphequalizer/graphequalizer
420
421 %dir %{_datadir}/apps/amarok/scripts/playlist2html
422 %{_datadir}/apps/amarok/scripts/playlist2html/README
423 %{_datadir}/apps/amarok/scripts/playlist2html/Playlist.py
424 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/playlist2html/PlaylistServer.py
425 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/playlist2html/playlist2html.py
426
427 %dir %{_datadir}/apps/amarok/scripts/webcontrol
428 %{_datadir}/apps/amarok/scripts/webcontrol/README
429 %{_datadir}/apps/amarok/scripts/webcontrol/Globals.py
430 %{_datadir}/apps/amarok/scripts/webcontrol/Playlist.py
431 %{_datadir}/apps/amarok/scripts/webcontrol/RequestHandler.py
432 %{_datadir}/apps/amarok/scripts/webcontrol/amarok_cut.png
433 %{_datadir}/apps/amarok/scripts/webcontrol/controlbackground.png
434 %{_datadir}/apps/amarok/scripts/webcontrol/main.css
435 %{_datadir}/apps/amarok/scripts/webcontrol/main.js
436 %{_datadir}/apps/amarok/scripts/webcontrol/player_end.png
437 %{_datadir}/apps/amarok/scripts/webcontrol/player_pause.png
438 %{_datadir}/apps/amarok/scripts/webcontrol/player_play.png
439 %{_datadir}/apps/amarok/scripts/webcontrol/player_start.png
440 %{_datadir}/apps/amarok/scripts/webcontrol/player_stop.png
441 %{_datadir}/apps/amarok/scripts/webcontrol/template.thtml
442 %{_datadir}/apps/amarok/scripts/webcontrol/vol_speaker.png
443 %{_datadir}/apps/amarok/scripts/webcontrol/WebPublisher.py
444 %{_datadir}/apps/amarok/scripts/webcontrol/WebControl.spec
445 %{_datadir}/apps/amarok/scripts/webcontrol/smallstar.png
446 %{_datadir}/apps/amarok/scripts/webcontrol/star.png
447 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/webcontrol/WebControl.py
448
449 %dir %{_datadir}/apps/amarok/scripts/lyrics_astraweb
450 %{_datadir}/apps/amarok/scripts/lyrics_astraweb/COPYING
451 %{_datadir}/apps/amarok/scripts/lyrics_astraweb/README
452 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/lyrics_astraweb/lyrics_astraweb.rb
453 %{_datadir}/apps/amarok/scripts/lyrics_astraweb/lyrics_astraweb.spec
454
455 %dir %{_datadir}/apps/amarok/scripts/lyrics_lyrc
456 %{_datadir}/apps/amarok/scripts/lyrics_lyrc/COPYING
457 %{_datadir}/apps/amarok/scripts/lyrics_lyrc/README
458 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/lyrics_lyrc/lyrics_lyrc.rb
459 %{_datadir}/apps/amarok/scripts/lyrics_lyrc/lyrics_lyrc.spec
460
461 %dir %{_datadir}/apps/amarok/scripts/score_default
462 %{_datadir}/apps/amarok/scripts/score_default/COPYING
463 %{_datadir}/apps/amarok/scripts/score_default/README
464 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/score_default/score_default.rb
465 %{_datadir}/apps/amarok/scripts/score_default/score_default.spec
466 %dir %{_datadir}/apps/amarok/scripts/score_impulsive
467 %{_datadir}/apps/amarok/scripts/score_impulsive/COPYING
468 %{_datadir}/apps/amarok/scripts/score_impulsive/README
469 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/score_impulsive/score_impulsive.rb
470 %{_datadir}/apps/amarok/scripts/score_impulsive/score_impulsive.spec
471
472 %dir %{_datadir}/apps/amarok/scripts/ruby_debug
473 %{_datadir}/apps/amarok/scripts/ruby_debug/debug.rb
474
475 %if 0
476 %dir %{_datadir}/apps/amarok/scripts/amarok_live
477 %{_datadir}/apps/amarok/scripts/amarok_live/README
478 %{_datadir}/apps/amarok/scripts/amarok_live/amarok.live.remaster.part1.sh
479 %{_datadir}/apps/amarok/scripts/amarok_live/amarok.live.remaster.part2.sh
480 %attr(755,root,root) %{_datadir}/apps/amarok/scripts/amarok_live/amarok_live.py
481 %endif
This page took 0.065095 seconds and 3 git commands to generate.