]> git.pld-linux.org Git - packages/clementine.git/blame - clementine.spec
- pl, release 13 (rebuild with protobuf 3.6)
[packages/clementine.git] / clementine.spec
CommitLineData
2c687024 1# TODO:
f2d911f2 2# - Gstreamer error: "A text/uri-list decoder plugin is required to play this stream, but not installed."
f2d911f2 3# - apply patches to libprojectM.spec and use
ce2dc7f3 4# - sub-package for kde4 stuff (or nuke them):
6b78beb2
ER
5# /usr/share/kde4/services/clementine-feed.protocol
6# /usr/share/kde4/services/clementine-itms.protocol
7# /usr/share/kde4/services/clementine-itpc.protocol
8# /usr/share/kde4/services/clementine-zune.protocol
2c687024 9#
10# Conditional build:
3834eb29 11%bcond_with static_projectm # with static projectM
aa506418 12%bcond_with libspotify # build with system libspotify instead of downloading blob
0a7f4db6 13%bcond_with tests # build without tests
0b056df0 14
988c637f
JB
15%define qt_ver 4.5.0
16%define qt_installed %(pkg-config --silence-errors --modversion QtCore 2>/dev/null || echo ERROR)
17%define sqlite_ver 3.14.0-2
bf1e6952 18Summary: A music player and library organiser
df3c0ac1 19Summary(hu.UTF-8): Egy zenelejátszó és gyűjtemény-kezelő
4c8a513a 20Summary(pl.UTF-8): Odtwarzacz muzyki i organizator biblioteczki
bf1e6952 21Name: clementine
19313dac 22Version: 1.3.1
4c8a513a 23Release: 13
bf1e6952 24License: GPL v3 and GPL v2+
bf2543c3 25Group: X11/Applications/Multimedia
19313dac
ER
26Source0: https://github.com/clementine-player/Clementine/releases/download/%{version}/%{name}-%{version}.tar.xz
27# Source0-md5: 18cc5f66aa5fbb2781198a65439bd38a
988c637f 28Patch0: %{name}-c++.patch
10ecf727 29Patch1: unbundle-po.patch
bf2543c3
ER
30Patch2: %{name}-udisks-headers.patch
31Patch3: %{name}-mygpo.patch
e1e09755 32Patch4: moc.patch
1aea93ea 33URL: http://www.clementine-player.org/
988c637f
JB
34BuildRequires: OpenGL-devel
35BuildRequires: QtCore-devel >= %{qt_ver}
36BuildRequires: QtDBus-devel >= %{qt_ver}
37BuildRequires: QtGui-devel >= %{qt_ver}
6db3c45c 38BuildRequires: QtIOCompressor-devel >= 2.3
988c637f
JB
39BuildRequires: QtNetwork-devel >= %{qt_ver}
40BuildRequires: QtOpenGL-devel >= %{qt_ver}
acb98f48 41BuildRequires: QtSingleApplication-devel >= 2.6-4
988c637f
JB
42BuildRequires: QtSql-devel >= %{qt_ver}
43%{?with_tests:BuildRequires: QtTest-devel >= %{qt_ver}}
44BuildRequires: QtXml-devel >= %{qt_ver}
bf1e6952 45BuildRequires: boost-devel
7279ad3f 46BuildRequires: cmake >= 2.6
b401e3aa 47BuildRequires: cryptopp-devel >= 5.6.1-4
58fa3d37 48BuildRequires: desktop-file-utils
988c637f 49BuildRequires: fftw3-devel
608ae6ac 50BuildRequires: gettext-tools
f823a794 51%{?with_static_projectm:BuildRequires: glew-devel}
988c637f
JB
52BuildRequires: glib2-devel >= 2.0
53BuildRequires: gstreamer-devel >= 1.0
54BuildRequires: gstreamer-plugins-base-devel >= 1.0
bf1e6952 55BuildRequires: gtest-devel
aa506418
ER
56BuildRequires: libcdio-devel
57BuildRequires: libchromaprint-devel
9feefe74 58BuildRequires: libechonest-devel
8f83a8c0 59BuildRequires: libgpod-devel >= 0.7.92
fbe6cce5 60BuildRequires: libimobiledevice-devel >= 1.1.5
e0ba0da9 61BuildRequires: liblastfm-devel >= 0.3.3
257df204 62BuildRequires: libmtp-devel >= 1.0
988c637f 63#BuildRequires: libmygpo-qt-devel >= 1.0.9
8f83a8c0 64BuildRequires: libplist-devel
f823a794 65%{!?with_static_projectm:BuildRequires: libprojectM-devel >= 1:2.0.1-4}
bf1e6952 66BuildRequires: libqxt-devel
aa506418 67%{?with_libspotify:BuildRequires: libspotify-devel >= 12.1.45}
11d9e7ee 68BuildRequires: libusbmuxd-devel
988c637f 69BuildRequires: libxml2-devel >= 2.0
2eedc3b1 70BuildRequires: pkgconfig
e0ba0da9 71BuildRequires: protobuf-devel
988c637f 72BuildRequires: pulseaudio-devel
e0ba0da9 73BuildRequires: qjson-devel
988c637f 74BuildRequires: qt4-build >= %{qt_ver}
b6199a83 75BuildRequires: qt4-linguist
76BuildRequires: qt4-qmake
0b414294 77BuildRequires: rpmbuild(find_lang) >= 1.38
2eedc3b1 78BuildRequires: rpmbuild(macros) >= 1.596
bf1e6952 79BuildRequires: sed >= 4.0
6f798db9 80BuildRequires: sparsehash-devel
988c637f 81BuildRequires: sqlite3-devel >= %{sqlite_ver}
257df204 82BuildRequires: taglib-devel >= 1.8
ce2dc7f3
ER
83BuildRequires: tar >= 1:1.22
84BuildRequires: xz
726826ed 85Requires(post,postun): desktop-file-utils
23941661
AF
86Requires(post,postun): gtk-update-icon-cache
87Requires(post,postun): hicolor-icon-theme
988c637f 88BuildRequires: sqlite3 >= %{sqlite_ver}
acb98f48 89Requires: QtSingleApplication >= 2.6-4
988c637f 90Requires: QtSql-sqlite3 >= %{qt_installed}
fbf1b864 91Requires: gstreamer-audio-effects-base
fbf1b864 92Suggests: gstreamer-flac
6047619e
JR
93Suggests: gstreamer-libav
94Suggests: gstreamer-mpg123
1bc4a891
ER
95# if we do not link, we use datafiles
96%{!?with_static_projectm:Requires: libprojectM}
bf1e6952
ER
97BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
98
f2d911f2
ER
99# see libprojectM.spec for explanation
100%define filterout_ld -Wl,--as-needed -Wl,--no-copy-dt-needed-entries
101
bf1e6952
ER
102%description
103Clementine is a modern music player and library organiser. It is
104largely a port of Amarok 1.4, with some features rewritten to take
105advantage of Qt4.
106
df3c0ac1
ZU
107%description -l hu.UTF-8
108Clementine egy modern zenelejátszó és gyűjtemény kezelő. Túlnyomórészt
109az Amarok 1.4 port-ja, néhány funkciója újraírva, hogy kihasználhassa
110a Qt4 előnyeit.
111
4c8a513a
JB
112%description -l pl.UTF-8
113Clementine to nowoczesny odtwarzacz muzyki i organizator biblioteczki.
114Jest w dużej części portem Amaroka 1.4 z niektórymi funkcjami
115przepisanymi tak, aby wykorzystać Qt4.
116
bf1e6952 117%prep
19313dac 118%setup -q
988c637f 119%patch0 -p1
10ecf727 120%patch1 -p1
bf2543c3
ER
121%patch2 -p1
122#%patch3 -p1
e1e09755 123%patch4 -p1
bf1e6952 124
8e4b706b 125# cleanup vendor. keep only needed libraries.
988c637f 126%{__mv} 3rdparty 3rdparty.dist
8e4b706b
ER
127vendor() {
128 local path dir
129 for path; do
130 dir=$(dirname $path)
131 test -d 3rdparty/$dir || mkdir -p 3rdparty/$dir
132 mv 3rdparty.dist/$path 3rdparty/$path
133 done
134}
135vendor sha2 qocoa
6db3c45c 136vendor qsqlite
8e4b706b 137%{?with_static_projectm:vendor libprojectm}
5bd3313b
ER
138# missing in pld
139vendor vreen
257df204 140# requires 1.0.9, but only 1.0.8 is released
5bd3313b 141vendor libmygpo-qt
bf1e6952 142
7279ad3f 143# Don't build tests. They require gmock
4c8a513a 144%{__sed} -i -e '/add_subdirectory(tests)/d' CMakeLists.txt
ea86e9d9 145# remove -Wall
4c8a513a 146%{__sed} -i -e 's/-Wall//' src/CMakeLists.txt
bf1e6952
ER
147
148%build
7aaa97de 149install -d build/src/translations
bf1e6952 150cd build
257df204 151# as our buildtype is not Release, need to pass these manually. see CMakeLists.txt ~135
a86e995f 152CXXFLAGS="%{rpmcxxflags} -fpermissive -DNDEBUG -DQT_NO_DEBUG_OUTPUT"
88ca6f4b 153%cmake \
ce2dc7f3 154 -DBUILD_WERROR:BOOL=OFF \
19313dac 155 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
dc08053f 156 -DCMAKE_INCLUDE_PATH=%{_includedir}/qt4 \
f2d911f2 157 -DBUNDLE_PROJECTM_PRESETS=OFF \
f823a794
ER
158 -DUSE_SYSTEM_QTSINGLEAPPLICATION=ON \
159 -DUSE_SYSTEM_QXT=ON \
160 -DUSE_SYSTEM_PROJECTM=ON \
dc08053f 161 -DQTSINGLEAPPLICATION_INCLUDE_DIRS=%{_includedir}/qt4/QtSolutions \
88ca6f4b 162 ..
bf1e6952
ER
163%{__make}
164
58fa3d37 165desktop-file-validate ../dist/%{name}.desktop
0a7f4db6
ER
166
167%if %{with tests}
58fa3d37
ER
168%endif
169
bf1e6952
ER
170%install
171rm -rf $RPM_BUILD_ROOT
4c8a513a 172
bf1e6952
ER
173%{__make} -C build install \
174 DESTDIR=$RPM_BUILD_ROOT
175
9de89a56 176%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/kde4/services
f823a794 177
988c637f
JB
178# unify locale codes
179%{__mv} $RPM_BUILD_ROOT%{_localedir}/{mk_MK,mk}
180%{__mv} $RPM_BUILD_ROOT%{_localedir}/{si_LK,si}
181# empty copies of il,tr
182%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/he_IL
183%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/tr_TR
dbbdd85a 184
10ecf727
ER
185%find_lang %{name} --with-qm
186
23f69c7b 187install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps
58fa3d37
ER
188cp -p dist/icons/ubuntu-mono-light/clementine-panel-grey.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/clementine-panel-grey.png
189cp -p dist/icons/ubuntu-mono-light/clementine-panel.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/clementine-panel.png
23f69c7b 190
bf1e6952
ER
191%clean
192rm -rf $RPM_BUILD_ROOT
193
726826ed
ER
194%post
195%update_desktop_database_post
2eedc3b1 196%update_icon_cache hicolor
726826ed
ER
197
198%postun
199%update_desktop_database_postun
2eedc3b1 200%update_icon_cache hicolor
726826ed 201
10ecf727 202%files -f %{name}.lang
bf1e6952 203%defattr(644,root,root,755)
e0ba0da9 204%doc Changelog
bf1e6952 205%attr(755,root,root) %{_bindir}/clementine
dbbdd85a 206%attr(755,root,root) %{_bindir}/clementine-tagreader
bf1e6952 207%{_desktopdir}/clementine.desktop
23f69c7b
BZ
208%{_iconsdir}/hicolor/*/apps/clementine-panel-grey.png
209%{_iconsdir}/hicolor/*/apps/clementine-panel.png
9de89a56
ER
210%{_iconsdir}/hicolor/*/apps/clementine.png
211%{_iconsdir}/hicolor/*/apps/clementine.svg
212%{_datadir}/appdata/clementine.appdata.xml
This page took 0.170483 seconds and 4 git commands to generate.