[oe] [meta-oe][PATCH] mpv: 0.26.0 -> 0.32.0
Martin Jansa
martin.jansa at gmail.com
Wed Feb 5 21:07:07 UTC 2020
On Wed, Feb 05, 2020 at 03:30:53PM -0500, Trevor Woerner wrote:
> 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.
>
> 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.
>
> 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
>
> Signed-off-by: Trevor Woerner <twoerner at gmail.com>
> ---
> .../mplayer/mpv/python3.patch | 12 ++
> .../recipes-multimedia/mplayer/mpv_0.26.0.bb | 85 -------------
> .../recipes-multimedia/mplayer/mpv_0.32.0.bb | 115 ++++++++++++++++++
> 3 files changed, 127 insertions(+), 85 deletions(-)
> create mode 100644 meta-oe/recipes-multimedia/mplayer/mpv/python3.patch
> delete mode 100644 meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
> create mode 100644 meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
Thanks,
would you mind undoing:
http://git.openembedded.org/meta-openembedded/commit/?id=0c182e58775966699c303c1e2561c273197bf445
in the same commit?
Also was this sent with -M?
> 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 000000000..df208cf87
> --- /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 c98aa7ab0..000000000
> --- 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 000000000..e6bab6b3f
> --- /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"
> +
> +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 \
> + "
> --
> 2.23.0.37.g745f681289
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20200205/1c669071/attachment.sig>
More information about the Openembedded-devel
mailing list