]>
Commit | Line | Data |
---|---|---|
2299b04f JP |
1 | # |
2 | # Conditional build: | |
3 | %bcond_without caca # CACA | |
4 | %bcond_without dvdnav # dvdnav support | |
236ade95 | 5 | %bcond_without js # JavaScript scripting support |
2299b04f | 6 | %bcond_without rubberband # librubberband support |
07324bdc | 7 | %bcond_without sixel # sixel video output |
2299b04f JP |
8 | %bcond_without vapoursynth # VapourSynth filter bridge |
9 | %bcond_without zimg # libzimg support (high quality software scaler) | |
10 | ||
b297e630 | 11 | Summary: Movie player based on MPlayer and mplayer2 |
c1eb0652 | 12 | Summary(pl.UTF-8): Odtwarzacz filmów oparty na projektach MPlayer i mplayer2 |
b297e630 | 13 | Name: mpv |
b6820b11 JP |
14 | Version: 0.38.0 |
15 | Release: 1 | |
236ade95 | 16 | License: GPL v2+ |
b297e630 | 17 | Group: Applications/Multimedia |
c1eb0652 | 18 | #Source0Download: http://github.com/mpv-player/mpv/releases |
42c8993b | 19 | Source0: https://github.com/mpv-player/mpv/archive/v%{version}/%{name}-%{version}.tar.gz |
b6820b11 | 20 | # Source0-md5: 7c1a400867e8930f037efc86c1f90a14 |
4084bdb9 | 21 | Source1: %{name}.conf |
b297e630 | 22 | URL: http://mpv.io/ |
77c81a17 | 23 | BuildRequires: EGL-devel |
1b335768 | 24 | BuildRequires: Mesa-libgbm-devel >= 17.1.0 |
b297e630 JP |
25 | BuildRequires: OpenAL-devel >= 1.13 |
26 | BuildRequires: OpenGL-devel | |
9da63119 | 27 | BuildRequires: SDL2-devel |
7588d009 | 28 | BuildRequires: Vulkan-Loader-devel >= 1.3.238 |
5045f7e8 | 29 | BuildRequires: alsa-lib-devel >= 1.0.18 |
682d5897 | 30 | BuildRequires: docutils |
7588d009 | 31 | BuildRequires: ffmpeg-devel >= 4.4 |
b297e630 | 32 | BuildRequires: jack-audio-connection-kit-devel |
d297c06d | 33 | BuildRequires: lcms2-devel >= 2.6 |
f272a633 | 34 | BuildRequires: libarchive-devel >= 3.4.0 |
236ade95 | 35 | BuildRequires: libass-devel >= 0.12.2 |
fd204822 | 36 | %ifnarch %arch_with_atomics64 |
308de4d0 JP |
37 | BuildRequires: libatomic-devel |
38 | %endif | |
5d9fec95 | 39 | BuildRequires: libbluray-devel >= 0.3.0 |
2299b04f | 40 | %{?with_caca:BuildRequires: libcaca-devel >= 0.99-0.beta18.1} |
7bdf1c10 | 41 | BuildRequires: libcdio-devel >= 0.90 |
b297e630 | 42 | BuildRequires: libcdio-paranoia-devel |
1b335768 | 43 | BuildRequires: libdrm-devel >= 2.4.105 |
2299b04f | 44 | %if %{with dvdnav} |
b297e630 JP |
45 | BuildRequires: libdvdnav-devel >= 4.2.0 |
46 | BuildRequires: libdvdread-devel >= 4.1.0 | |
2299b04f | 47 | %endif |
b297e630 | 48 | BuildRequires: libjpeg-devel |
b6820b11 | 49 | BuildRequires: libplacebo-devel >= 6.338.2 |
07324bdc | 50 | %{?with_sixel:BuildRequires: libsixel-devel >= 1.5} |
5045f7e8 JP |
51 | BuildRequires: libva-devel >= 1.4.0 |
52 | BuildRequires: libva-glx-devel >= 1.4.0 | |
b297e630 | 53 | BuildRequires: libvdpau-devel >= 0.2 |
236ade95 | 54 | BuildRequires: lua52-devel |
7bdf1c10 | 55 | BuildRequires: meson >= 0.62.0 |
236ade95 | 56 | %{?with_js:BuildRequires: mujs-devel >= 1.0.0} |
7bdf1c10 | 57 | BuildRequires: ninja |
7588d009 | 58 | BuildRequires: nv-codec-headers >= 11.1.5.1 |
cce321b3 | 59 | BuildRequires: pipewire-devel >= 0.3.48 |
b297e630 | 60 | BuildRequires: pkgconfig |
5045f7e8 | 61 | BuildRequires: pulseaudio-devel >= 1.0 |
fc836dc8 | 62 | BuildRequires: rpm-build >= 4.6 |
fd204822 | 63 | BuildRequires: rpmbuild(macros) >= 2.025 |
2299b04f | 64 | %{?with_rubberband:BuildRequires: rubberband-devel >= 1.8.0} |
a33f39f8 | 65 | BuildRequires: uchardet-devel |
7bdf1c10 | 66 | %{?with_vapoursynth:BuildRequires: vapoursynth-devel >= 26} |
7588d009 | 67 | BuildRequires: wayland-devel >= 1.20.0 |
12311963 | 68 | BuildRequires: wayland-egl-devel |
7588d009 | 69 | BuildRequires: wayland-protocols >= 1.32 |
31601366 JP |
70 | BuildRequires: xorg-lib-libX11-devel >= 1.0.0 |
71 | BuildRequires: xorg-lib-libXScrnSaver-devel >= 1.0.0 | |
b297e630 | 72 | BuildRequires: xorg-lib-libXdamage-devel |
31601366 | 73 | BuildRequires: xorg-lib-libXext-devel >= 1.0.0 |
1b335768 | 74 | BuildRequires: xorg-lib-libXpresent-devel >= 1.0.0 |
7bdf1c10 | 75 | BuildRequires: xorg-lib-libXrandr-devel >= 1.4.0 |
b297e630 | 76 | BuildRequires: xorg-lib-libXv-devel |
b297e630 JP |
77 | BuildRequires: xorg-lib-libxkbcommon-devel >= 0.3.0 |
78 | BuildRequires: xorg-proto-xproto-devel | |
7588d009 | 79 | %{?with_zimg:BuildRequires: zimg-devel >= 3.0.5} |
f272a633 | 80 | BuildRequires: zlib-devel |
88ee6beb JP |
81 | Requires(post,postun): desktop-file-utils |
82 | Requires(post,postun): gtk-update-icon-cache | |
5d9fec95 | 83 | Requires: OpenAL >= 1.13 |
b297e630 | 84 | Requires: OpenGL |
5045f7e8 | 85 | Requires: alsa-lib >= 1.0.18 |
88ee6beb | 86 | Requires: hicolor-icon-theme |
8a7befcf | 87 | %requires_eq_to ffmpeg-libs ffmpeg-devel |
5d9fec95 | 88 | Requires: lcms2 >= 2.6 |
f272a633 | 89 | Requires: libarchive >= 3.4.0 |
236ade95 | 90 | Requires: libass >= 0.12.2 |
5d9fec95 | 91 | Requires: libbluray >= 0.3.0 |
2299b04f | 92 | %{?with_caca:Requires: libcaca >= 0.99-0.beta18.1} |
1b335768 | 93 | Requires: libdrm >= 2.4.105 |
2299b04f | 94 | %if %{with dvdnav} |
5d9fec95 JP |
95 | Requires: libdvdnav >= 4.2.0 |
96 | Requires: libdvdread >= 4.1.0 | |
2299b04f | 97 | %endif |
cce321b3 | 98 | Requires: pipewire-libs >= 0.3.48 |
7bdf1c10 | 99 | %requires_ge_to libplacebo libplacebo-devel |
07324bdc | 100 | %{?with_sixel:Requires: libsixel >= 1.5} |
5045f7e8 JP |
101 | Requires: libva >= 1.4.0 |
102 | Requires: libva-glx >= 1.4.0 | |
5d9fec95 | 103 | Requires: libvdpau >= 0.2 |
236ade95 | 104 | %{?with_js:Requires: mujs >= 1.0.0} |
5d9fec95 | 105 | Requires: pulseaudio-libs >= 1.0 |
2299b04f | 106 | %{?with_rubberband:Requires: rubberband-libs >= 1.8.0} |
7bdf1c10 | 107 | %{?with_vapoursynth:Requires: vapoursynth >= 26} |
8a7befcf | 108 | Requires: wayland >= 1.15.0 |
31601366 JP |
109 | Requires: xorg-lib-libX11 >= 1.0.0 |
110 | Requires: xorg-lib-libXScrnSaver >= 1.0.0 | |
111 | Requires: xorg-lib-libXext >= 1.0.0 | |
7bdf1c10 | 112 | Requires: xorg-lib-libXrandr >= 1.4.0 |
5d9fec95 | 113 | Requires: xorg-lib-libxkbcommon >= 0.3.0 |
7588d009 | 114 | %{?with_zimg:Requires: zimg >= 3.0.5} |
80c75f4f | 115 | Suggests: yt-dlp |
b297e630 JP |
116 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
117 | ||
b297e630 | 118 | %description |
292eac8e | 119 | Movie player based on MPlayer and mplayer2. |
b297e630 | 120 | |
c1eb0652 JB |
121 | %description -l pl.UTF-8 |
122 | Odtwarzacz filmów oparty na projektach MPlayer i mplayer2. | |
123 | ||
d297c06d | 124 | %package client-libs |
e386ece9 | 125 | Summary: Client library for controlling mpv |
c1eb0652 JB |
126 | Summary(pl.UTF-8): Biblioteka kliencka do sterowania odtwarzaczem mpv |
127 | Group: Libraries | |
d297c06d JP |
128 | |
129 | %description client-libs | |
130 | Client library for controlling mpv. | |
131 | ||
c1eb0652 JB |
132 | %description client-libs -l pl.UTF-8 |
133 | Biblioteka kliencka do sterowania odtwarzaczem mpv. | |
134 | ||
d297c06d | 135 | %package client-devel |
e386ece9 | 136 | Summary: Development files for mpv client library |
c1eb0652 | 137 | Summary(pl.UTF-8): Pliki programistyczne biblioteki klienckiej mpv |
e386ece9 JP |
138 | Group: Development/Libraries |
139 | Requires: %{name}-client-libs = %{version}-%{release} | |
d297c06d JP |
140 | |
141 | %description client-devel | |
142 | Development files for mpv client library. | |
143 | ||
c1eb0652 JB |
144 | %description client-devel -l pl.UTF-8 |
145 | Pliki programistyczne biblioteki klienckiej mpv. | |
146 | ||
f272a633 JP |
147 | %package -n bash-completion-mpv |
148 | Summary: Bash completion for mpv | |
149 | Summary(pl.UTF-8): Dopełnianie parametrów mpv dla powłoki Bash | |
150 | Group: Applications/Shells | |
151 | Requires: %{name} = %{version}-%{release} | |
7426782a | 152 | Requires: bash-completion >= 1:2.0 |
fc836dc8 | 153 | BuildArch: noarch |
f272a633 JP |
154 | |
155 | %description -n bash-completion-mpv | |
156 | Bash completion for mpv. | |
157 | ||
158 | %description -n bash-completion-mpv -l pl.UTF-8 | |
159 | Dopełnianie parametrów mpv dla powłoki Bash. | |
160 | ||
d297c06d | 161 | %package -n zsh-completion-mpv |
c1eb0652 JB |
162 | Summary: ZSH completion for mpv |
163 | Summary(pl.UTF-8): Dopełnianie parametrów mpv dla powłoki ZSH | |
e386ece9 JP |
164 | Group: Applications/Shells |
165 | Requires: %{name} = %{version}-%{release} | |
fc836dc8 | 166 | BuildArch: noarch |
d297c06d JP |
167 | |
168 | %description -n zsh-completion-mpv | |
c1eb0652 JB |
169 | ZSH completion for mpv. |
170 | ||
171 | %description -n zsh-completion-mpv -l pl.UTF-8 | |
172 | Dopełnianie parametrów mpv dla powłoki ZSH. | |
d297c06d | 173 | |
b297e630 JP |
174 | %prep |
175 | %setup -q | |
176 | ||
177 | %build | |
7bdf1c10 JP |
178 | %meson build \ |
179 | -Dalsa=enabled \ | |
180 | -Dcaca=%{__enabled_disabled caca} \ | |
181 | -Dcdda=enabled \ | |
182 | -Dcplugins=enabled \ | |
183 | -Ddvbin=enabled \ | |
184 | -Ddvdnav=%{__enabled_disabled dvdnav} \ | |
185 | -Degl-wayland=enabled \ | |
186 | -Degl-x11=enabled \ | |
187 | -Dgl-x11=enabled \ | |
188 | -Diconv=enabled \ | |
189 | -Djack=enabled \ | |
190 | -Djavascript=%{__enabled_disabled js} \ | |
191 | -Djpeg=enabled \ | |
192 | -Dlcms2=enabled \ | |
193 | -Dlibavdevice=enabled \ | |
194 | -Dlibbluray=enabled \ | |
195 | -Dlibmpv=true \ | |
196 | -Drubberband=%{__enabled_disabled rubberband} \ | |
197 | -Dopenal=enabled \ | |
198 | -Dpulse=enabled \ | |
199 | -Dsdl2=enabled \ | |
07324bdc | 200 | -Dsixel=%{__enabled_disabled sixel} \ |
7bdf1c10 JP |
201 | -Duchardet=enabled \ |
202 | -Dvaapi=enabled \ | |
203 | -Dvapoursynth=%{__enabled_disabled vapoursynth} \ | |
204 | -Dvdpau=enabled \ | |
205 | -Dvdpau-gl-x11=enabled \ | |
206 | -Dwayland=enabled \ | |
207 | -Dx11=enabled \ | |
208 | -Dxv=enabled \ | |
209 | -Dzimg=%{__enabled_disabled zimg} \ | |
210 | -Dlua=lua5.2 | |
211 | ||
212 | %ninja_build -C build | |
b297e630 JP |
213 | |
214 | %install | |
215 | rm -rf $RPM_BUILD_ROOT | |
216 | ||
7bdf1c10 | 217 | %ninja_install -C build |
b297e630 | 218 | |
4084bdb9 | 219 | install -d $RPM_BUILD_ROOT%{_sysconfdir}/mpv |
e386ece9 | 220 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mpv |
4084bdb9 | 221 | |
a68f52ba JP |
222 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir} |
223 | ||
b297e630 JP |
224 | %clean |
225 | rm -rf $RPM_BUILD_ROOT | |
226 | ||
88ee6beb JP |
227 | %post |
228 | %update_desktop_database_post | |
229 | %update_icon_cache hicolor | |
230 | ||
231 | %postun | |
232 | %update_desktop_database_postun | |
233 | %update_icon_cache hicolor | |
234 | ||
1a8f2eea ER |
235 | %post client-libs -p /sbin/ldconfig |
236 | %postun client-libs -p /sbin/ldconfig | |
237 | ||
b297e630 JP |
238 | %files |
239 | %defattr(644,root,root,755) | |
6ee6242b | 240 | %doc README.md RELEASE_NOTES etc/input.conf etc/mplayer-input.conf etc/mpv.conf etc/restore-old-bindings.conf |
b297e630 | 241 | %dir %{_sysconfdir}/mpv |
1a8f2eea | 242 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mpv/encoding-profiles.conf |
4084bdb9 | 243 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mpv/mpv.conf |
b297e630 JP |
244 | %attr(755,root,root) %{_bindir}/%{name} |
245 | %{_desktopdir}/mpv.desktop | |
246 | %{_iconsdir}/hicolor/*/apps/mpv.png | |
2d1f1cf1 | 247 | %{_iconsdir}/hicolor/scalable/apps/mpv.svg |
0ea238bf | 248 | %{_iconsdir}/hicolor/symbolic/apps/mpv-symbolic.svg |
b297e630 | 249 | %{_mandir}/man1/mpv.1* |
1b335768 | 250 | %{_datadir}/metainfo/mpv.metainfo.xml |
d297c06d JP |
251 | |
252 | %files client-libs | |
253 | %defattr(644,root,root,755) | |
254 | %attr(755,root,root) %{_libdir}/libmpv.so.*.*.* | |
1b335768 | 255 | %attr(755,root,root) %ghost %{_libdir}/libmpv.so.2 |
d297c06d JP |
256 | |
257 | %files client-devel | |
258 | %defattr(644,root,root,755) | |
259 | %attr(755,root,root) %{_libdir}/libmpv.so | |
260 | %{_includedir}/mpv | |
261 | %{_pkgconfigdir}/mpv.pc | |
262 | ||
f272a633 JP |
263 | %files -n bash-completion-mpv |
264 | %defattr(644,root,root,755) | |
265 | %{bash_compdir}/mpv | |
266 | ||
d297c06d JP |
267 | %files -n zsh-completion-mpv |
268 | %defattr(644,root,root,755) | |
f272a633 | 269 | %{zsh_compdir}/_mpv |