forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-2.3.3, Repoman-2.3.1 Closes: gentoo#3247
- Loading branch information
Showing
3 changed files
with
366 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
DIST mpv-0.18.0.tar.gz 2758960 SHA256 b656638d4f6bce2621baaacb60d8be384aa492fcd86dfd43996aaa2c16fee02b SHA512 5a899ea680b4da6d668a6e77a254e623bafef16f376ee46639e40f151da5a000de84b382f2b07f3a1e87b60fc8e524132767fdf243e36474966af11a88277437 WHIRLPOOL c491e61cb2d7f453cfc23605120048e81c2b7621b8d9591cad6415d3b550f55db6a6c8c6f90d27c7ce214ff89f92a9861d202b457c2de25c5b7de11d8d1d40af | ||
DIST mpv-0.22.0.tar.gz 2822645 SHA256 c0f9ac8f0e37a391d19007b333ef8787c2f45d75a0d4401c0098cde52c5082f6 SHA512 6c021bfb79cbedee842bf122ebb29df56e8b1cbfcb038bd54bf6e2f2db2a6550b71fd9fe8998dbd79b4ceeab3fbcab65ec60695f255c5cb36fb1feae17b797c0 WHIRLPOOL 3458dfe646bab65408a7fe45f98ae168f439b4939064b009ba87d0ae08c1f2067bd252558a92f9fdb0822bf5a35b2377bce7f46aeb190d60a4e115394f0506c9 | ||
DIST mpv-0.23.0.tar.gz 2812103 SHA256 8aeefe5970587dfc454d2b89726b603f156bd7a9ae427654eef0d60c68d94998 SHA512 16304a729684ba177cb902e2508bdba09b344228c44ac78b27302ee4e0bcfb344b3522969e834516547bf82825009afd3bef1701327fdcaa42a9696065cca591 WHIRLPOOL fa214186ae80f4b26d967b8d6c68f0c4c56a77caaf06088249d30551e2cd5efbfc4f0a06e1944ef24ac679f1a3d47faa0d6152d192f032b3d279d5ada6567c8e | ||
DIST mpv-0.9.2.tar.gz 2701306 SHA256 c0148f55dbd17705f49bb496d0ce374419de62e1b17195d91409d7727cbd4751 SHA512 4f652a8e78d65b0ef44a06287b05250dfdfbce4cf5a6e21d3b446eedec268d83cf98afcc687272e2da2cfac9e9f69a303847dffdfd45cecdd4273b943ce50967 WHIRLPOOL 1512bacc2ce50e875770c76106a1bb2bc1d0cc5f6e2bdce91ff8c5cfc8bf13ffb48519858a5fa2a7d57880820dc12e5eb20f34ab71eca5d76ec303618da8f3fe | ||
DIST waf-1.8.12 97567 SHA256 01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b SHA512 8e47112abb134f965f15a27a600b4453cad3075afb5dadc17f2f6dac33d80ec68b679ac0ebc5f8a0245cbd07ae9fc7b899e69afc1bd021cce74e7af2ab457939 WHIRLPOOL c36d37c2d8c08e4048b4800f511611af5cf534304fcb58388ca491ff308bfcbcdd959d153edfd6ff8c118404e7293d8b786e43b07486139bf915a82aa75d792b | ||
DIST waf-1.8.4 96179 SHA256 f02035fa5d8814f33f19b2b20d43822ddef6bb39b955ca196c2a247a1f9ffaa8 SHA512 3a132d8b1cba0af0e3df046c0204c5df706fae4e0fac41cf74b53f6cdea6210ed798671c7a3cb3fee70573aacab16d4c0cc699cc4b7aa74c8a416346c5513f4c WHIRLPOOL fe8d7f42e5118a1f9490a0c9add1355c969185376b57d0bab024068dd6e7364632d862bf9432e1209165c5313ae843479ef334f4bd6285db05dfebff9a1b640e |
20 changes: 20 additions & 0 deletions
20
media-video/mpv/files/mpv-0.23.0-make-libavdevice-check-accept-libav.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
build: make libavdevice configure check accept libav-12 | ||
|
||
libav-12 is supported, but configure script expects | ||
a higher libavdevice version than libav-12 provides. | ||
|
||
Gentoo-Bug: 603122 | ||
|
||
diff --git a/wscript b/wscript | ||
index 94db7e296..7f61f54cc 100644 | ||
--- a/wscript | ||
+++ b/wscript | ||
@@ -444,7 +444,7 @@ FFmpeg/Libav libraries. You need at least {0}. Aborting.".format(libav_versions_ | ||
}, { | ||
'name': '--libavdevice', | ||
'desc': 'libavdevice', | ||
- 'func': check_pkg_config('libavdevice', '>= 57.0.0'), | ||
+ 'func': check_pkg_config('libavdevice', '>= 56.1.0'), | ||
}, { | ||
'name': 'avcodec-chroma-pos-api', | ||
'desc': 'libavcodec avcodec_enum_to_chroma_pos API', |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,345 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=6 | ||
|
||
PYTHON_COMPAT=( python{2_7,3_4,3_5} ) | ||
PYTHON_REQ_USE='threads(+)' | ||
|
||
WAF_PV=1.8.12 | ||
|
||
inherit gnome2-utils pax-utils python-r1 toolchain-funcs versionator waf-utils xdg-utils | ||
|
||
DESCRIPTION="Media player based on MPlayer and mplayer2" | ||
HOMEPAGE="https://mpv.io/" | ||
|
||
if [[ ${PV} != *9999* ]]; then | ||
SRC_URI="https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz -> ${P}.tar.gz" | ||
KEYWORDS="~amd64 ~x86 ~amd64-linux" | ||
DOCS=( RELEASE_NOTES ) | ||
else | ||
EGIT_REPO_URI=( {https,git}://github.com/mpv-player/mpv.git ) | ||
inherit git-r3 | ||
fi | ||
SRC_URI+=" https://waf.io/waf-${WAF_PV}" | ||
DOCS+=( README.md ) | ||
|
||
# See Copyright in sources and Gentoo bug 506946. Waf is BSD, libmpv is ISC. | ||
LICENSE="GPL-2+ BSD ISC" | ||
SLOT="0" | ||
IUSE="aqua +alsa archive bluray cdda +cli coreaudio doc drm dvb dvd +egl encode | ||
gbm +iconv jack jpeg lcms +libass libav libcaca libmpv +lua luajit openal | ||
+opengl oss pulseaudio raspberry-pi rubberband samba -sdl selinux test | ||
tools +uchardet v4l vaapi vdpau vf-dlopen wayland +X xinerama +xscreensaver | ||
+xv zsh-completion" | ||
|
||
REQUIRED_USE=" | ||
|| ( cli libmpv ) | ||
aqua? ( opengl ) | ||
egl? ( || ( gbm X wayland ) ) | ||
gbm? ( drm egl ) | ||
lcms? ( || ( opengl egl ) ) | ||
luajit? ( lua ) | ||
tools? ( cli ) | ||
uchardet? ( iconv ) | ||
v4l? ( || ( alsa oss ) ) | ||
vaapi? ( || ( gbm X wayland ) ) | ||
vdpau? ( X ) | ||
wayland? ( egl ) | ||
xinerama? ( X ) | ||
xscreensaver? ( X ) | ||
xv? ( X ) | ||
zsh-completion? ( cli ) | ||
" | ||
|
||
COMMON_DEPEND=" | ||
!libav? ( >=media-video/ffmpeg-3.2.2:=[encode?,threads,vaapi?,vdpau?] ) | ||
libav? ( >=media-video/libav-12:=[encode?,threads,vaapi?,vdpau?] ) | ||
sys-libs/zlib | ||
alsa? ( >=media-libs/alsa-lib-1.0.18 ) | ||
archive? ( >=app-arch/libarchive-3.0.0:= ) | ||
bluray? ( >=media-libs/libbluray-0.3.0 ) | ||
cdda? ( dev-libs/libcdio-paranoia ) | ||
drm? ( x11-libs/libdrm ) | ||
dvb? ( virtual/linuxtv-dvb-headers ) | ||
dvd? ( | ||
>=media-libs/libdvdnav-4.2.0 | ||
>=media-libs/libdvdread-4.1.0 | ||
) | ||
egl? ( media-libs/mesa[egl,gbm(-)?,wayland(-)?] ) | ||
iconv? ( | ||
virtual/libiconv | ||
uchardet? ( dev-libs/uchardet ) | ||
) | ||
jack? ( virtual/jack ) | ||
jpeg? ( virtual/jpeg:0 ) | ||
lcms? ( >=media-libs/lcms-2.6:2 ) | ||
libass? ( | ||
>=media-libs/libass-0.12.1:=[fontconfig,harfbuzz] | ||
virtual/ttf-fonts | ||
) | ||
libcaca? ( >=media-libs/libcaca-0.99_beta18 ) | ||
lua? ( | ||
!luajit? ( <dev-lang/lua-5.3:= ) | ||
luajit? ( dev-lang/luajit:2 ) | ||
) | ||
openal? ( >=media-libs/openal-1.13 ) | ||
opengl? ( !aqua? ( virtual/opengl ) ) | ||
pulseaudio? ( media-sound/pulseaudio ) | ||
raspberry-pi? ( | ||
>=media-libs/raspberrypi-userland-0_pre20160305-r1 | ||
media-libs/mesa[egl,gles2] | ||
) | ||
rubberband? ( >=media-libs/rubberband-1.8.0 ) | ||
samba? ( net-fs/samba[smbclient(+)] ) | ||
sdl? ( media-libs/libsdl2[sound,threads,video,X?,wayland?] ) | ||
v4l? ( media-libs/libv4l ) | ||
vaapi? ( >=x11-libs/libva-1.4.0[drm?,X?,wayland?] ) | ||
wayland? ( | ||
>=dev-libs/wayland-1.6.0 | ||
>=x11-libs/libxkbcommon-0.3.0 | ||
) | ||
X? ( | ||
x11-libs/libX11 | ||
x11-libs/libXext | ||
>=x11-libs/libXrandr-1.2.0 | ||
opengl? ( x11-libs/libXdamage ) | ||
vdpau? ( >=x11-libs/libvdpau-0.2 ) | ||
xinerama? ( x11-libs/libXinerama ) | ||
xscreensaver? ( x11-libs/libXScrnSaver ) | ||
xv? ( x11-libs/libXv ) | ||
) | ||
" | ||
DEPEND="${COMMON_DEPEND} | ||
${PYTHON_DEPS} | ||
dev-python/docutils | ||
virtual/pkgconfig | ||
doc? ( dev-python/rst2pdf ) | ||
test? ( >=dev-util/cmocka-1.0.0 ) | ||
zsh-completion? ( dev-lang/perl ) | ||
" | ||
RDEPEND="${COMMON_DEPEND} | ||
selinux? ( sec-policy/selinux-mplayer ) | ||
tools? ( ${PYTHON_DEPS} ) | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/${PN}-0.19.0-make-ffmpeg-version-check-non-fatal.patch" | ||
"${FILESDIR}/${PN}-0.23.0-make-libavdevice-check-accept-libav.patch" | ||
) | ||
|
||
mpv_check_compiler() { | ||
if [[ ${MERGE_TYPE} != "binary" ]] && use vaapi && use egl && ! tc-has-tls; then | ||
die "Your compiler lacks C++11 TLS support. Use GCC>=4.8.0 or Clang>=3.3." | ||
fi | ||
} | ||
|
||
pkg_pretend() { | ||
mpv_check_compiler | ||
} | ||
|
||
pkg_setup() { | ||
mpv_check_compiler | ||
[[ ${MERGE_TYPE} != "binary" ]] && python_setup | ||
} | ||
|
||
src_prepare() { | ||
cp "${DISTDIR}/waf-${WAF_PV}" "${S}"/waf || die | ||
chmod +x "${S}"/waf || die | ||
default_src_prepare | ||
} | ||
|
||
src_configure() { | ||
local mywafargs=( | ||
--confdir="${EPREFIX}/etc/${PN}" | ||
--docdir="${EPREFIX}/usr/share/doc/${PF}" | ||
--htmldir="${EPREFIX}/usr/share/doc/${PF}/html" | ||
|
||
$(usex cli '' '--disable-cplayer') | ||
$(use_enable libmpv libmpv-shared) | ||
|
||
# See deep down below for build-date. | ||
--disable-libmpv-static | ||
--disable-static-build | ||
--disable-optimize # Don't add '-O2' to CFLAGS. | ||
--disable-debug-build # Don't add '-g' to CFLAGS. | ||
--enable-html-build | ||
|
||
$(use_enable doc pdf-build) | ||
$(use_enable vf-dlopen vf-dlopen-filters) | ||
$(use_enable zsh-completion zsh-comp) | ||
$(use_enable test) | ||
|
||
$(use_enable iconv) | ||
$(use_enable samba libsmbclient) | ||
$(use_enable lua) | ||
$(usex luajit '--lua=luajit' '') | ||
$(use_enable libass) | ||
$(use_enable libass libass-osd) | ||
$(use_enable encode encoding) | ||
$(use_enable bluray libbluray) | ||
$(use_enable dvd dvdread) | ||
$(use_enable dvd dvdnav) | ||
$(use_enable cdda) | ||
$(use_enable uchardet) | ||
$(use_enable rubberband) | ||
$(use_enable lcms lcms2) | ||
--disable-vapoursynth # Only available in overlays. | ||
--disable-vapoursynth-lazy | ||
$(use_enable archive libarchive) | ||
|
||
--enable-libavdevice | ||
|
||
# Audio outputs: | ||
$(use_enable sdl sdl2) # Listed under audio, but also includes video. | ||
--disable-sdl1 | ||
$(use_enable oss oss-audio) | ||
--disable-rsound # Only available in overlays. | ||
--disable-sndio # Only available in overlays. | ||
$(use_enable pulseaudio pulse) | ||
$(use_enable jack) | ||
$(use_enable openal) | ||
--disable-opensles | ||
$(use_enable alsa) | ||
$(use_enable coreaudio) | ||
|
||
# Video outputs: | ||
$(use_enable aqua cocoa) | ||
$(use_enable drm) | ||
$(use_enable gbm) | ||
$(use_enable wayland) | ||
$(use_enable X x11) | ||
$(use_enable xscreensaver xss) | ||
$(use_enable X xext) | ||
$(use_enable xv) | ||
$(use_enable xinerama) | ||
$(use_enable X xrandr) | ||
$(usex opengl "$(use_enable aqua gl-cocoa)" '--disable-gl-cocoa') | ||
$(usex opengl "$(use_enable X gl-x11)" '--disable-gl-x11') | ||
$(usex egl "$(use_enable X egl-x11)" '--disable-egl-x11') | ||
$(usex egl "$(use_enable gbm egl-drm)" '--disable-egl-drm') | ||
$(use_enable wayland gl-wayland) | ||
$(use_enable vdpau) | ||
$(usex vdpau "$(use_enable opengl vdpau-gl-x11)" '--disable-vdpau-gl-x11') | ||
$(use_enable vaapi) # See below for vaapi-glx, vaapi-x-egl. | ||
$(usex vaapi "$(use_enable X vaapi-x11)" '--disable-vaapi-x11') | ||
$(usex vaapi "$(use_enable wayland vaapi-wayland)" '--disable-vaapi-wayland') | ||
$(usex vaapi "$(use_enable gbm vaapi-drm)" '--disable-vaapi-drm') | ||
$(use_enable libcaca caca) | ||
$(use_enable jpeg) | ||
--disable-android | ||
$(use_enable raspberry-pi rpi) | ||
--disable-ios-gl | ||
$(usex libmpv "$(use_enable opengl plain-gl)" '--disable-plain-gl') | ||
--disable-mali-fbdev # Only available in overlays. | ||
|
||
# HWaccels: | ||
# Automagic Video Toolbox HW acceleration. See Gentoo bug 577332. | ||
$(use_enable vaapi vaapi-hwaccel) | ||
$(use_enable vdpau vdpau-hwaccel) | ||
--disable-cuda-hwaccel # No support in ffmpeg. See Gentoo bug 595450. | ||
|
||
# TV features: | ||
$(use_enable v4l tv) | ||
$(use_enable v4l tv-v4l2) | ||
$(use_enable v4l libv4l2) | ||
$(use_enable v4l audio-input) | ||
$(use_enable dvb dvbin) | ||
|
||
# Miscellaneous features: | ||
--disable-apple-remote # Needs testing first. See Gentoo bug 577332. | ||
) | ||
|
||
if use vaapi && use X; then | ||
mywafargs+=( | ||
$(use_enable opengl vaapi-glx) | ||
$(use_enable egl vaapi-x-egl) | ||
) | ||
fi | ||
|
||
if ! use egl && ! use opengl && ! use raspberry-pi; then | ||
mywafargs+=(--disable-gl) | ||
fi | ||
|
||
# Create reproducible non-live builds. | ||
[[ ${PV} != *9999* ]] && mywafargs+=(--disable-build-date) | ||
|
||
waf-utils_src_configure "${mywafargs[@]}" | ||
} | ||
|
||
src_install() { | ||
waf-utils_src_install | ||
|
||
if use lua; then | ||
insinto /usr/share/${PN} | ||
doins -r TOOLS/lua | ||
fi | ||
|
||
if use cli && use luajit; then | ||
pax-mark -m "${ED}"usr/bin/${PN} | ||
fi | ||
|
||
if use tools; then | ||
dobin TOOLS/{mpv_identify.sh,umpv} | ||
newbin TOOLS/idet.sh mpv_idet.sh | ||
python_replicate_script "${ED}"usr/bin/umpv | ||
fi | ||
} | ||
|
||
pkg_preinst() { | ||
gnome2_icon_savelist | ||
} | ||
|
||
pkg_postinst() { | ||
local rv softvol_0_18_1=0 | ||
for rv in ${REPLACING_VERSIONS}; do | ||
version_compare ${rv} 0.18.1-r1 | ||
[[ $? -eq 1 ]] && softvol_0_18_1=1 | ||
done | ||
|
||
if [[ ${softvol_0_18_1} -eq 1 ]]; then | ||
elog "Starting from version 0.18.1 the software volume control is" | ||
elog "enabled by default, see:" | ||
elog "https://github.com/mpv-player/mpv/blob/v0.18.1/DOCS/interface-changes.rst" | ||
elog "https://github.com/mpv-player/mpv/issues/3322" | ||
elog | ||
elog "This means that volume controls don't change the system volume," | ||
elog "e.g. per-application volume with PulseAudio." | ||
elog "If you want to restore the old behaviour, please refer to" | ||
elog | ||
elog "https://bugs.gentoo.org/show_bug.cgi?id=588492#c7" | ||
elog | ||
fi | ||
|
||
# bash-completion < 2.3-r1 already installs (mostly broken) mpv completion. | ||
if use cli && ! has_version '<app-shells/bash-completion-2.3-r1' && \ | ||
! has_version 'app-shells/mpv-bash-completion'; then | ||
elog "If you want to have command-line completion via bash-completion," | ||
elog "please install app-shells/mpv-bash-completion." | ||
fi | ||
|
||
if use cli && [[ -n ${REPLACING_VERSIONS} ]] && \ | ||
has_version 'app-shells/mpv-bash-completion'; then | ||
elog "If command-line completion doesn't work after mpv update," | ||
elog "please rebuild app-shells/mpv-bash-completion." | ||
fi | ||
|
||
gnome2_icon_cache_update | ||
xdg_desktop_database_update | ||
} | ||
|
||
pkg_postrm() { | ||
gnome2_icon_cache_update | ||
xdg_desktop_database_update | ||
} | ||
|
||
src_test() { | ||
cd "${S}"/build/test || die | ||
local test | ||
for test in *; do | ||
if [[ -x ${test} ]]; then | ||
./"${test}" || die "Test suite failed" | ||
fi | ||
done | ||
} |