]>
Commit | Line | Data |
---|---|---|
1 | # TODO: | |
2 | # - Gstreamer error: "A text/uri-list decoder plugin is required to play this stream, but not installed." | |
3 | # - apply patches to libprojectM.spec and use | |
4 | # | |
5 | # Conditional build: | |
6 | %bcond_without static_sqlite # with static sqlite3 | |
7 | %bcond_with static_projectm # with static projectM | |
8 | ||
9 | %define qtver %(pkg-config --silence-errors --modversion QtCore 2>/dev/null || echo ERROR) | |
10 | Summary: A music player and library organiser | |
11 | Summary(hu.UTF-8): Egy zenelejátszó és gyűjtemény-kezelő | |
12 | Name: clementine | |
13 | Version: 1.1.1 | |
14 | Release: 1 | |
15 | License: GPL v3 and GPL v2+ | |
16 | Group: Applications/Multimedia | |
17 | URL: http://www.clementine-player.org/ | |
18 | Source0: http://clementine-player.googlecode.com/files/%{name}-%{version}.tar.gz | |
19 | # Source0-md5: 28e4afb822388bd337a761db8f86febf | |
20 | Patch0: desktop-install.patch | |
21 | Patch1: unbundle-po.patch | |
22 | BuildRequires: QtCore-devel >= %{qtver} | |
23 | BuildRequires: QtDBus-devel >= %{qtver} | |
24 | BuildRequires: QtGui-devel >= %{qtver} | |
25 | BuildRequires: QtIOCompressor-devel | |
26 | BuildRequires: QtNetwork-devel >= %{qtver} | |
27 | BuildRequires: QtOpenGL-devel >= %{qtver} | |
28 | BuildRequires: QtSingleApplication-devel >= 2.6-4 | |
29 | BuildRequires: QtSql-devel >= %{qtver} | |
30 | %{?with_tests:BuildRequires: QtTest-devel >= %{qtver}} | |
31 | BuildRequires: QtXml-devel >= %{qtver} | |
32 | BuildRequires: boost-devel | |
33 | BuildRequires: cmake >= 2.6 | |
34 | #%{?with_static_projectm:BuildRequires: ftgl-devel >= 2.1.3} | |
35 | BuildRequires: gettext-devel | |
36 | %{?with_static_projectm:BuildRequires: glew-devel} | |
37 | BuildRequires: glib2-devel | |
38 | BuildRequires: gstreamer0.10-devel | |
39 | BuildRequires: gstreamer0.10-plugins-base-devel | |
40 | BuildRequires: gtest-devel | |
41 | BuildRequires: libgpod-devel >= 0.7.92 | |
42 | BuildRequires: libimobiledevice-devel | |
43 | BuildRequires: libindicate-qt-devel | |
44 | BuildRequires: liblastfm-devel >= 0.3.3 | |
45 | BuildRequires: libmtp-devel | |
46 | BuildRequires: libplist-devel | |
47 | %{!?with_static_projectm:BuildRequires: libprojectM-devel >= 1:2.0.1-4} | |
48 | BuildRequires: libqxt-devel | |
49 | BuildRequires: libxml2-devel | |
50 | BuildRequires: pkgconfig | |
51 | BuildRequires: pkgconfig | |
52 | BuildRequires: protobuf-devel | |
53 | BuildRequires: qjson-devel | |
54 | BuildRequires: qt4-build >= %{qtver} | |
55 | BuildRequires: qt4-linguist | |
56 | BuildRequires: qt4-qmake | |
57 | BuildRequires: rpmbuild(find_lang) >= 1.33 | |
58 | BuildRequires: rpmbuild(macros) >= 1.596 | |
59 | BuildRequires: sed >= 4.0 | |
60 | %{!?with_static_sqlite:BuildRequires: sqlite3-devel} | |
61 | BuildRequires: taglib-devel >= 1.6 | |
62 | BuildRequires: usbmuxd-devel | |
63 | Requires(post,postun): desktop-file-utils | |
64 | Requires(post,postun): gtk-update-icon-cache | |
65 | Requires(post,postun): hicolor-icon-theme | |
66 | Requires: QtSingleApplication >= 2.6-4 | |
67 | %{!?with_static_sqlite:Requires: QtSql-sqlite3 >= %{qtver}} | |
68 | Requires: gstreamer0.10-audio-effects-base | |
69 | # while we do not link (yet), we use datafiles | |
70 | Requires: libprojectM | |
71 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
72 | ||
73 | # see libprojectM.spec for explanation | |
74 | %define filterout_ld -Wl,--as-needed -Wl,--no-copy-dt-needed-entries | |
75 | ||
76 | %description | |
77 | Clementine is a modern music player and library organiser. It is | |
78 | largely a port of Amarok 1.4, with some features rewritten to take | |
79 | advantage of Qt4. | |
80 | ||
81 | %description -l hu.UTF-8 | |
82 | Clementine egy modern zenelejátszó és gyűjtemény kezelő. Túlnyomórészt | |
83 | az Amarok 1.4 port-ja, néhány funkciója újraírva, hogy kihasználhassa | |
84 | a Qt4 előnyeit. | |
85 | ||
86 | %prep | |
87 | %setup -q -n %{name}-%{version} | |
88 | %patch0 -p1 | |
89 | %patch1 -p1 | |
90 | ||
91 | # We already don't use these but just to make sure | |
92 | rm -rf 3rdparty/gmock | |
93 | %{!?with_static_sqlite:rm -rf 3rdparty/qsqlite} | |
94 | rm -rf 3rdparty/qtsingleapplication | |
95 | rm -rf 3rdparty/qxt | |
96 | rm -rf 3rdparty/qtiocompressor | |
97 | %{!?with_static_projectm:rm -rf 3rdparty/libprojectM} | |
98 | ||
99 | # Don't build tests. They require gmock | |
100 | sed -i -e '/add_subdirectory(tests)/d' CMakeLists.txt | |
101 | # remove -Wall | |
102 | sed -i -e 's/-Wall//' src/CMakeLists.txt | |
103 | ||
104 | %build | |
105 | install -d build | |
106 | install -d build/src/translations | |
107 | cd build | |
108 | %cmake \ | |
109 | -DBUNDLE_PROJECTM_PRESETS=OFF \ | |
110 | -DUSE_SYSTEM_QTSINGLEAPPLICATION=ON \ | |
111 | -DQTSINGLEAPPLICATION_INCLUDE_DIRS=%{_includedir}/qt4/QtSolutions/ \ | |
112 | -DUSE_SYSTEM_QXT=ON \ | |
113 | -DUSE_SYSTEM_PROJECTM=ON \ | |
114 | -DSTATIC_SQLITE=%{?with_static_sqlite:ON}%{!?with_static_sqlite:OFF} \ | |
115 | .. | |
116 | %{__make} | |
117 | ||
118 | %install | |
119 | rm -rf $RPM_BUILD_ROOT | |
120 | %{__make} -C build install \ | |
121 | DESTDIR=$RPM_BUILD_ROOT | |
122 | ||
123 | rm $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/apps/application-x-clementine.svg | |
124 | ||
125 | # not in our glibc? | |
126 | rm -r $RPM_BUILD_ROOT%{_localedir}/tr_TR | |
127 | ||
128 | %find_lang %{name} --with-qm | |
129 | ||
130 | install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps | |
131 | cp -a dist/icons/ubuntu-mono-light/clementine-panel-grey.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/clementine-panel-grey.png | |
132 | cp -a dist/icons/ubuntu-mono-light/clementine-panel.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/clementine-panel.png | |
133 | ||
134 | %clean | |
135 | rm -rf $RPM_BUILD_ROOT | |
136 | ||
137 | %post | |
138 | %update_desktop_database_post | |
139 | %update_icon_cache hicolor | |
140 | ||
141 | %postun | |
142 | %update_desktop_database_postun | |
143 | %update_icon_cache hicolor | |
144 | ||
145 | %files -f %{name}.lang | |
146 | %defattr(644,root,root,755) | |
147 | %doc Changelog | |
148 | %attr(755,root,root) %{_bindir}/clementine | |
149 | %attr(755,root,root) %{_bindir}/clementine-tagreader | |
150 | %{_desktopdir}/clementine.desktop | |
151 | %{_pixmapsdir}/clementine.png | |
152 | %{_iconsdir}/hicolor/*/apps/clementine-panel-grey.png | |
153 | %{_iconsdir}/hicolor/*/apps/clementine-panel.png |