[oe-commits] [meta-openembedded] 03/14: mpv: 0.26.0 -> 0.32.0
git at git.openembedded.org
git at git.openembedded.org
Sun Feb 9 18:49:37 UTC 2020
This is an automated email from the git hooks/post-receive script.
khem pushed a commit to branch master-next
in repository meta-openembedded.
commit 835358a130e4c67929dc3f1f82b5ce0867d0ad4f
Author: Trevor Woerner <twoerner at gmail.com>
AuthorDate: Sat Feb 8 14:24:33 2020 -0500
mpv: 0.26.0 -> 0.32.0
Remove mpv from the PNBLACKLIST by updating to the latest release and using a
newer, python3-aware waf for building (copied from glmark2).
The name of the license file changed, but the licence of the software itself
did not.
Added mime-xdg to inherit to handle mime artifacts.
Added to the FILES command to scoop up additional files being generated by
the build.
Re-added 'mpv' back to LICENSE_FLAGS_WHITELIST search list in
packagegroup-meta-oe.
Extensively fixed and cleaned up the PACKAGECONFIG options to reflect the
current options available when configuring mpv. Also cleaned up any configure
options which are no longer available.
Added the correct dependencies so mpv builds under wayland.
Tested with core-image-x11 on a rock-pi-4 with
PACKAGECONFIG = "libass x11 opengl egl drm gbm vaapi vdpau"
# mpv --vo=help
Available video outputs:
libmpv render API for libmpv
gpu Shader-based GPU Renderer
vdpau VDPAU with X11
vaapi VA API with X11
x11 X11 (slow, old crap)
null Null video output
image Write video frames to image files
tct true-color terminals
drm Direct Rendering Manager
Tested with core-image-weston on a rock-pi-4 with:
PACKAGECONFIG = "libass wayland x11 opengl"
# mpv -vo=help
Available video outputs:
libmpv render API for libmpv
gpu Shader-based GPU Renderer
wlshm Wayland SHM video output
x11 X11 (slow, old crap)
null Null video output
image Write video frames to image files
tct true-color terminals
Signed-off-by: Trevor Woerner <twoerner at gmail.com>
Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
.../packagegroups/packagegroup-meta-oe.bb | 2 +-
.../recipes-multimedia/mplayer/mpv/python3.patch | 12 +++
meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb | 85 ---------------
meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb | 115 +++++++++++++++++++++
4 files changed, 128 insertions(+), 86 deletions(-)
diff --git a/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index d5789a7..865cbb0 100644
--- a/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -207,7 +207,7 @@ RDEPENDS_packagegroup-meta-oe-multimedia ="\
sound-theme-freedesktop v4l-utils yavta wavpack libvpx \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "xpext pavucontrol xsp", "", d)} \
libmikmod \
- ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libmad faad2", "", d)} \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libmad faad2 mpv", "", d)} \
"
RDEPENDS_packagegroup-meta-oe-multimedia_remove_libc-musl = "alsa-oss"
diff --git a/meta-oe/recipes-multimedia/mplayer/mpv/python3.patch b/meta-oe/recipes-multimedia/mplayer/mpv/python3.patch
new file mode 100644
index 0000000..df208cf
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mplayer/mpv/python3.patch
@@ -0,0 +1,12 @@
+Use Python 3 instead of Python 2.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton at intel.com>
+
+diff --git a/waf b/waf
+index 6ce2a24..de3c898 100755
+--- a/waf
++++ b/waf
+@@ -1 +1 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
diff --git a/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb b/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
deleted file mode 100644
index c98aa7a..0000000
--- a/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
+++ /dev/null
@@ -1,85 +0,0 @@
-SUMMARY = "Open Source multimedia player"
-DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features with the former projects while introducing many more."
-SECTION = "multimedia"
-HOMEPAGE = "http://www.mpv.io/"
-DEPENDS = "zlib ffmpeg jpeg virtual/libx11 xsp libxv \
- libxscrnsaver libv4l libxinerama \
-"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=91f1cb870c1cc2d31351a4d2595441cb"
-
-# While this item does not require it, it depends on ffmpeg which does
-LICENSE_FLAGS = "commercial"
-
-SRCREV_mpv = "4db82f04502cbcd20d9a975df9dfde91d8c389e3"
-SRC_URI = " \
- git://github.com/mpv-player/mpv;name=mpv \
- http://www.freehackers.org/~tnagy/release/waf-1.8.12;name=waf;downloadfilename=waf;subdir=git \
-"
-SRC_URI[waf.md5sum] = "cef4ee82206b1843db082d0b0506bf71"
-SRC_URI[waf.sha256sum] = "01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b"
-
-S = "${WORKDIR}/git"
-
-inherit waf pkgconfig python3native features_check
-
-LUA ?= "lua"
-LUA_mips64 = ""
-LUA_aarch64 = ""
-LUA_powerpc64 = ""
-LUA_powerpc64le = ""
-LUA_powerpc = ""
-
-# Note: both lua and libass are required to get on-screen-display (controls)
-PACKAGECONFIG ??= " \
- ${LUA} \
- libass \
- ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
-"
-
-PACKAGECONFIG_remove_aarch64 = "lua"
-PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm"
-PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/mesa"
-PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit"
-PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
-PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive"
-PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack"
-PACKAGECONFIG[vaapi] = "--enable-vaapi, --disable-vaapi,libva"
-PACKAGECONFIG[vdpau] = "--enable-vdpau, --disable-vdpau,libvdpau"
-PACKAGECONFIG[wayland] = "--enable-wayland, --disable-wayland,wayland libxkbcommon"
-
-SIMPLE_TARGET_SYS = "${@'${TARGET_SYS}'.replace('${TARGET_VENDOR}', '')}"
-
-EXTRA_OECONF = " \
- --prefix=${prefix} \
- --target=${SIMPLE_TARGET_SYS} \
- --confdir=${sysconfdir} \
- --datadir=${datadir} \
- --disable-manpage-build \
- --disable-gl \
- --disable-libsmbclient \
- --disable-encoding \
- --disable-libbluray \
- --disable-dvdread \
- --disable-dvdnav \
- --disable-cdda \
- --disable-uchardet \
- --disable-rubberband \
- --disable-lcms2 \
- --disable-vapoursynth \
- --disable-vapoursynth-lazy \
- ${PACKAGECONFIG_CONFARGS} \
-"
-
-adjust_waf_perms() {
- chmod +x ${S}/waf
-}
-
-do_patch[postfuncs] += "adjust_waf_perms"
-
-FILES_${PN} += "${datadir}/icons"
-
-PNBLACKLIST[mpv] = "Needs forward porting to use python3"
diff --git a/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
new file mode 100644
index 0000000..bd2e389
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
@@ -0,0 +1,115 @@
+SUMMARY = "Open Source multimedia player"
+DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features with the former projects while introducing many more."
+SECTION = "multimedia"
+HOMEPAGE = "http://www.mpv.io/"
+DEPENDS = "zlib ffmpeg jpeg virtual/libx11 xsp libxv \
+ libxscrnsaver libv4l libxinerama \
+"
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=91f1cb870c1cc2d31351a4d2595441cb"
+
+# While this item does not require it, it depends on ffmpeg which does
+LICENSE_FLAGS = "commercial"
+
+SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
+SRC_URI = " \
+ git://github.com/mpv-player/mpv;name=mpv \
+ https://www.freehackers.org/~tnagy/release/waf-2.0.19;name=waf;downloadfilename=waf;subdir=git \
+ file://python3.patch \
+"
+SRC_URI[waf.md5sum] = "cef4ee82206b1843db082d0b0506bf71"
+SRC_URI[waf.sha256sum] = "01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b"
+
+S = "${WORKDIR}/git"
+
+inherit waf pkgconfig features_check mime-xdg
+
+LUA ?= "lua"
+LUA_mips64 = ""
+LUA_aarch64 = ""
+LUA_powerpc64 = ""
+LUA_powerpc64le = ""
+LUA_powerpc = ""
+
+# Note: both lua and libass are required to get on-screen-display (controls)
+PACKAGECONFIG ??= " \
+ ${LUA} \
+ libass \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)} \
+"
+
+PACKAGECONFIG_remove_aarch64 = "lua"
+PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11"
+PACKAGECONFIG[xv] = "--enable-xv,--disable-xv,libxv"
+PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
+PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,"
+PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm"
+PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/libgbm"
+PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit"
+PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
+PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive"
+PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack"
+PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
+PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
+PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native libxkbcommon"
+
+python __anonymous() {
+ packageconfig = (d.getVar("PACKAGECONFIG") or "").split()
+ extras = []
+ if "x11" in packageconfig and "opengl" in packageconfig:
+ extras.append(" --enable-gl-x11")
+ if "x11" in packageconfig and "egl" in packageconfig:
+ extras.append(" --enable-egl-x11")
+ if "egl" in packageconfig and "drm" in packageconfig:
+ extras.append(" --enable-egl-drm")
+ if "vaapi" in packageconfig and "x11" in packageconfig:
+ extras.append(" --enable-vaapi-x11")
+ if "vaapi" in packageconfig and "drm" in packageconfig:
+ extras.append(" --enable-vaapi-drm")
+ if "vaapi" in packageconfig and "x11" in packageconfig and "egl" in packageconfig:
+ extras.append(" --enable-vaapi-x-egl")
+ if "vdpau" in packageconfig and "opengl" in packageconfig and "x11" in packageconfig:
+ extras.append(" --enable-vdpau-gl-x11")
+ if "wayland" in packageconfig and "opengl" in packageconfig:
+ extras.append(" --enable-gl-wayland")
+ if "wayland" in packageconfig and "vaapi" in packageconfig:
+ extras.append(" --enable-vaapi-wayland")
+ if extras:
+ d.appendVar("EXTRA_OECONF", "".join(extras))
+}
+
+SIMPLE_TARGET_SYS = "${@'${TARGET_SYS}'.replace('${TARGET_VENDOR}', '')}"
+
+EXTRA_OECONF = " \
+ --prefix=${prefix} \
+ --target=${SIMPLE_TARGET_SYS} \
+ --confdir=${sysconfdir} \
+ --datadir=${datadir} \
+ --disable-manpage-build \
+ --disable-libsmbclient \
+ --disable-libbluray \
+ --disable-dvdnav \
+ --disable-cdda \
+ --disable-uchardet \
+ --disable-rubberband \
+ --disable-lcms2 \
+ --disable-vapoursynth \
+ ${PACKAGECONFIG_CONFARGS} \
+"
+
+adjust_waf_perms() {
+ chmod +x ${S}/waf
+}
+
+do_patch[postfuncs] += "adjust_waf_perms"
+
+FILES_${PN} += " \
+ ${datadir}/icons \
+ ${datadir}/zsh \
+ ${datadir}/bash-completion \
+ "
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list