6fdac7fd19
Build of vaapi with egl-drm is broken since commit6ec47c4e59
because egl-drm is a part of gl group which is only enabled if BR2_PACKAGE_HAS_LIBGL or BR2_PACKAGE_HAS_LIBGLES are set:ec0006bfa1/wscript (L572)
As a result, despite what is being displayed in the autobuilder log message, the build failure is not related to X11 but to the fact that we try to enable vaapi through egl-drm but at the same time, we disable gl. To fix it, enable gl if libegl is available as gl can be enabled for example through wayland and egl (gl-wayland): 'deps': 'gl-cocoa || gl-x11 || egl-x11 || egl-drm || ' + 'gl-win32 || gl-wayland || rpi || ' + 'plain-gl', Fixes: - http://autobuild.buildroot.org/results/e5c15228f42a73f8c34b26630b2074c30e5f5966 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
226 lines
5.2 KiB
Makefile
226 lines
5.2 KiB
Makefile
################################################################################
|
|
#
|
|
# mpv
|
|
#
|
|
################################################################################
|
|
|
|
MPV_VERSION = 0.33.1
|
|
MPV_SITE = $(call github,mpv-player,mpv,v$(MPV_VERSION))
|
|
MPV_DEPENDENCIES = \
|
|
host-pkgconf ffmpeg libass zlib \
|
|
$(if $(BR2_PACKAGE_LIBICONV),libiconv)
|
|
MPV_LICENSE = GPL-2.0+
|
|
MPV_LICENSE_FILES = LICENSE.GPL
|
|
MPV_CPE_ID_VENDOR = mpv
|
|
|
|
MPV_NEEDS_EXTERNAL_WAF = YES
|
|
|
|
# Some of these options need testing and/or tweaks
|
|
MPV_CONF_OPTS = \
|
|
--prefix=/usr \
|
|
--disable-android \
|
|
--disable-caca \
|
|
--disable-cocoa \
|
|
--disable-coreaudio \
|
|
--disable-cuda-hwaccel \
|
|
--disable-opensles \
|
|
--disable-rubberband \
|
|
--disable-uchardet \
|
|
--disable-vapoursynth
|
|
|
|
ifeq ($(BR2_REPRODUCIBLE),y)
|
|
MPV_CONF_OPTS += --disable-build-date
|
|
endif
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
MPV_CONF_OPTS += --disable-libmpv-shared --enable-libmpv-static
|
|
else
|
|
MPV_CONF_OPTS += --enable-libmpv-shared --disable-libmpv-static
|
|
endif
|
|
|
|
# ALSA support requires pcm+mixer
|
|
ifeq ($(BR2_PACKAGE_ALSA_LIB_MIXER)$(BR2_PACKAGE_ALSA_LIB_PCM),yy)
|
|
MPV_CONF_OPTS += --enable-alsa
|
|
MPV_DEPENDENCIES += alsa-lib
|
|
else
|
|
MPV_CONF_OPTS += --disable-alsa
|
|
endif
|
|
|
|
# GBM support is provided by mesa3d when EGL=y
|
|
ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
|
|
MPV_CONF_OPTS += --enable-gbm
|
|
MPV_DEPENDENCIES += mesa3d
|
|
ifeq ($(BR2_PACKAGE_LIBDRM),y)
|
|
MPV_CONF_OPTS += --enable-egl-drm
|
|
else
|
|
MPV_CONF_OPTS += --disable-egl-drm
|
|
endif
|
|
else
|
|
MPV_CONF_OPTS += --disable-gbm --disable-egl-drm
|
|
endif
|
|
|
|
# jack support
|
|
# It also requires 64-bit sync intrinsics
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_8)$(BR2_PACKAGE_JACK2),yy)
|
|
MPV_CONF_OPTS += --enable-jack
|
|
MPV_DEPENDENCIES += jack2
|
|
else
|
|
MPV_CONF_OPTS += --disable-jack
|
|
endif
|
|
|
|
# jpeg support
|
|
ifeq ($(BR2_PACKAGE_JPEG),y)
|
|
MPV_CONF_OPTS += --enable-jpeg
|
|
MPV_DEPENDENCIES += jpeg
|
|
else
|
|
MPV_CONF_OPTS += --disable-jpeg
|
|
endif
|
|
|
|
# lcms2 support
|
|
ifeq ($(BR2_PACKAGE_LCMS2),y)
|
|
MPV_CONF_OPTS += --enable-lcms2
|
|
MPV_DEPENDENCIES += lcms2
|
|
else
|
|
MPV_CONF_OPTS += --disable-lcms2
|
|
endif
|
|
|
|
# libarchive support
|
|
ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
|
|
MPV_CONF_OPTS += --enable-libarchive
|
|
MPV_DEPENDENCIES += libarchive
|
|
else
|
|
MPV_CONF_OPTS += --disable-libarchive
|
|
endif
|
|
|
|
# bluray support
|
|
ifeq ($(BR2_PACKAGE_LIBBLURAY),y)
|
|
MPV_CONF_OPTS += --enable-libbluray
|
|
MPV_DEPENDENCIES += libbluray
|
|
else
|
|
MPV_CONF_OPTS += --disable-libbluray
|
|
endif
|
|
|
|
# libcdio-paranoia
|
|
ifeq ($(BR2_PACKAGE_LIBCDIO_PARANOIA),y)
|
|
MPV_CONF_OPTS += --enable-cdda
|
|
MPV_DEPENDENCIES += libcdio-paranoia
|
|
else
|
|
MPV_CONF_OPTS += --disable-cdda
|
|
endif
|
|
|
|
# libdvdnav
|
|
ifeq ($(BR2_PACKAGE_LIBDVDNAV),y)
|
|
MPV_CONF_OPTS += --enable-dvdnav
|
|
MPV_DEPENDENCIES += libdvdnav
|
|
else
|
|
MPV_CONF_OPTS += --disable-dvdnav
|
|
endif
|
|
|
|
# libdrm
|
|
ifeq ($(BR2_PACKAGE_LIBDRM),y)
|
|
MPV_CONF_OPTS += --enable-drm
|
|
MPV_DEPENDENCIES += libdrm
|
|
else
|
|
MPV_CONF_OPTS += --disable-drm
|
|
endif
|
|
|
|
# libvdpau
|
|
ifeq ($(BR2_PACKAGE_LIBVDPAU),y)
|
|
MPV_CONF_OPTS += --enable-vdpau
|
|
MPV_DEPENDENCIES += libvdpau
|
|
else
|
|
MPV_CONF_OPTS += --disable-vdpau
|
|
endif
|
|
|
|
# LUA support, only for lua51/lua52/luajit
|
|
# This enables the controller (OSD) together with libass
|
|
ifeq ($(BR2_PACKAGE_LUA_5_1)$(BR2_PACKAGE_LUAJIT),y)
|
|
MPV_CONF_OPTS += --enable-lua
|
|
MPV_DEPENDENCIES += luainterpreter
|
|
else
|
|
MPV_CONF_OPTS += --disable-lua
|
|
endif
|
|
|
|
# OpenGL support
|
|
ifeq ($(BR2_PACKAGE_HAS_LIBGL),y)
|
|
MPV_CONF_OPTS += --enable-gl
|
|
MPV_DEPENDENCIES += libgl
|
|
else ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y)
|
|
MPV_CONF_OPTS += --enable-gl
|
|
MPV_DEPENDENCIES += libgles
|
|
else ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y)
|
|
MPV_CONF_OPTS += --enable-gl
|
|
MPV_DEPENDENCIES += libegl
|
|
else
|
|
MPV_CONF_OPTS += --disable-gl
|
|
endif
|
|
|
|
# pulseaudio support
|
|
ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
|
|
MPV_CONF_OPTS += --enable-pulse
|
|
MPV_DEPENDENCIES += pulseaudio
|
|
else
|
|
MPV_CONF_OPTS += --disable-pulse
|
|
endif
|
|
|
|
# SDL support
|
|
# Sdl2 requires 64-bit sync intrinsics
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_8)$(BR2_PACKAGE_SDL2),yy)
|
|
MPV_CONF_OPTS += --enable-sdl2
|
|
MPV_DEPENDENCIES += sdl2
|
|
else
|
|
MPV_CONF_OPTS += --disable-sdl2
|
|
endif
|
|
|
|
# Raspberry Pi support
|
|
ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
|
|
MPV_CONF_OPTS += --enable-rpi --enable-gl
|
|
MPV_DEPENDENCIES += rpi-userland
|
|
else
|
|
MPV_CONF_OPTS += --disable-rpi
|
|
endif
|
|
|
|
# va-api support
|
|
ifeq ($(BR2_PACKAGE_LIBVA)$(BR2_PACKAGE_MPV_SUPPORTS_VAAPI),yy)
|
|
MPV_CONF_OPTS += --enable-vaapi
|
|
MPV_DEPENDENCIES += libva
|
|
ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_MESA3D_OPENGL_EGL),yy)
|
|
MPV_CONF_OPTS += --enable-vaapi-drm
|
|
else
|
|
MPV_CONF_OPTS += --disable-vaapi-drm
|
|
endif
|
|
else
|
|
MPV_CONF_OPTS += --disable-vaapi --disable-vaapi-drm
|
|
endif
|
|
|
|
# wayland support
|
|
ifeq ($(BR2_PACKAGE_WAYLAND),y)
|
|
MPV_CONF_OPTS += --enable-wayland
|
|
MPV_DEPENDENCIES += libxkbcommon wayland wayland-protocols
|
|
else
|
|
MPV_CONF_OPTS += --disable-wayland
|
|
endif
|
|
|
|
# Base X11 support. Config.in ensures that if BR2_PACKAGE_XORG7 is
|
|
# enabled, xlib_libX11, xlib_libXext, xlib_libXinerama,
|
|
# xlib_libXrandr, xlib_libXScrnSaver.
|
|
ifeq ($(BR2_PACKAGE_XORG7),y)
|
|
MPV_CONF_OPTS += --enable-x11
|
|
MPV_DEPENDENCIES += xlib_libX11 xlib_libXext xlib_libXinerama xlib_libXrandr xlib_libXScrnSaver
|
|
# XVideo
|
|
ifeq ($(BR2_PACKAGE_XLIB_LIBXV),y)
|
|
MPV_CONF_OPTS += --enable-xv
|
|
MPV_DEPENDENCIES += xlib_libXv
|
|
else
|
|
MPV_CONF_OPTS += --disable-xv
|
|
endif
|
|
else
|
|
MPV_CONF_OPTS += --disable-x11
|
|
endif
|
|
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
|
|
MPV_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -latomic"
|
|
endif
|
|
|
|
$(eval $(waf-package))
|