commit: d73a80c2782da7ee89ef5fb4e3491ebf348ee8c8 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sat Nov 23 20:18:29 2024 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Sat Nov 23 20:28:45 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d73a80c2
media-video/vlc: Allow IUSE=vaapi without building avcodec_vaapi Using a Fedora patch. IUSE taglib: Restrict to <media-libs/taglib-2 Sync 3.0.9999 live ebuild, dropping obsolete patch. Bug: https://bugs.gentoo.org/864721 Bug: https://bugs.gentoo.org/938946 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> media-video/vlc/files/vlc-2.2.8-freerdp-2.patch | 131 --------------------- .../files/vlc-3.0.21-vaapi-without-ffmepg4.patch | 18 +++ .../{vlc-3.0.9999.ebuild => vlc-3.0.21-r1.ebuild} | 14 +-- media-video/vlc/vlc-3.0.9999.ebuild | 14 +-- 4 files changed, 28 insertions(+), 149 deletions(-) diff --git a/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch b/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch deleted file mode 100644 index 5cee1336505f..000000000000 --- a/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch +++ /dev/null @@ -1,131 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -1957,7 +1957,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [li - - dnl RDP/Remote Desktop access module - dnl --PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) ) -+PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp2 >= 1.0.1], (RDP/Remote Desktop client support) ) - - dnl - dnl Real RTSP plugin ---- a/modules/access/rdp.c 2017-12-25 17:45:32.964429170 +0100 -+++ b/modules/access/rdp.c 2017-12-25 17:53:15.114093670 +0100 -@@ -45,18 +45,6 @@ - # include <freerdp/version.h> - #endif - --#if !defined(FREERDP_VERSION_MAJOR) || \ -- (defined(FREERDP_VERSION_MAJOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1))) --# define SoftwareGdi sw_gdi --# define Fullscreen fullscreen --# define ServerHostname hostname --# define Username username --# define Password password --# define ServerPort port --# define EncryptionMethods encryption --# define ContextSize context_size --#endif -- - #include <errno.h> - #ifdef HAVE_POLL - # include <poll.h> -@@ -140,6 +128,7 @@ - vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_context; - demux_sys_t *p_sys = p_vlccontext->p_demux->p_sys; - rdpGdi *p_gdi = p_context->gdi; -+ unsigned bytesPerPixel; - - if ( p_sys->es ) - { -@@ -149,19 +138,23 @@ - - /* Now init and fill es format */ - vlc_fourcc_t i_chroma; -- switch( p_gdi->bytesPerPixel ) -+ switch( p_gdi->dstFormat ) - { - default: -- case 16: -+ msg_Dbg( p_vlccontext->p_demux, "unhandled dstFormat %x bpp", p_gdi->dstFormat); -+ case PIXEL_FORMAT_BGR16: - i_chroma = VLC_CODEC_RGB16; -+ bytesPerPixel = 16; - break; -- case 24: -+ case PIXEL_FORMAT_BGR24: - i_chroma = VLC_CODEC_RGB24; -+ bytesPerPixel = 24; - break; -- case 32: -+ case PIXEL_FORMAT_BGRA32: - i_chroma = VLC_CODEC_RGB32; -+ bytesPerPixel = 32; - break; - } - es_format_t fmt; - es_format_Init( &fmt, VIDEO_ES, i_chroma ); - -@@ -172,7 +165,7 @@ - fmt.video.i_height = p_gdi->height; - fmt.video.i_frame_rate_base = 1000; - fmt.video.i_frame_rate = 1000 * p_sys->f_fps; -- p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * p_gdi->bytesPerPixel; -+ p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * bytesPerPixel; - - if ( p_sys->p_block ) - p_sys->p_block = block_Realloc( p_sys->p_block, 0, p_sys->i_framebuffersize ); -@@ -233,28 +226,19 @@ - vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_instance->context; - - msg_Dbg( p_vlccontext->p_demux, "connected to desktop %dx%d (%d bpp)", --#if defined(FREERDP_VERSION_MAJOR) && (FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1)) - p_instance->settings->DesktopWidth, - p_instance->settings->DesktopHeight, - p_instance->settings->ColorDepth --#else -- p_instance->settings->width, -- p_instance->settings->height, -- p_instance->settings->color_depth --#endif - ); - - p_instance->update->DesktopResize = desktopResizeHandler; - p_instance->update->BeginPaint = beginPaintHandler; - p_instance->update->EndPaint = endPaintHandler; - -- gdi_init( p_instance, -- CLRBUF_16BPP | --#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \ -- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2)) -- CLRBUF_24BPP | --#endif -- CLRBUF_32BPP, NULL ); -+ if ( p_instance->settings->ColorDepth > 16 ) -+ gdi_init( p_instance, PIXEL_FORMAT_XRGB32); -+ else -+ gdi_init( p_instance, PIXEL_FORMAT_RGB16); - - desktopResizeHandler( p_instance->context ); - return true; -@@ -428,10 +412,6 @@ - if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0; - p_sys->i_frame_interval = 1000000 / p_sys->f_fps; - --#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 -- freerdp_channels_global_init(); --#endif -- - p_sys->p_instance = freerdp_new(); - if ( !p_sys->p_instance ) - { -@@ -506,9 +486,6 @@ - - freerdp_disconnect( p_sys->p_instance ); - freerdp_free( p_sys->p_instance ); --#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 -- freerdp_channels_global_uninit(); --#endif - - if ( p_sys->p_block ) - block_Release( p_sys->p_block ); diff --git a/media-video/vlc/files/vlc-3.0.21-vaapi-without-ffmepg4.patch b/media-video/vlc/files/vlc-3.0.21-vaapi-without-ffmepg4.patch new file mode 100644 index 000000000000..c71a39910733 --- /dev/null +++ b/media-video/vlc/files/vlc-3.0.21-vaapi-without-ffmepg4.patch @@ -0,0 +1,18 @@ +avcodec_vaapi requires ffmpeg-4, but other vaapi modules can be built + +diff --git a/configure.ac b/configure.ac +index 69beb77..c7f7142 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2454,9 +2454,9 @@ AS_IF([test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"], [ + have_avcodec_vaapi="yes" + ],[ + AS_IF([test -n "${enable_libva}"], [ +- AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing]) ++ AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing]) + ], [ +- AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ]) ++ AC_MSG_NOTICE([libva is present but libavcodec/vaapi.h is missing ]) + ]) + ]) + VLC_RESTORE_FLAGS diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.21-r1.ebuild similarity index 98% copy from media-video/vlc/vlc-3.0.9999.ebuild copy to media-video/vlc/vlc-3.0.21-r1.ebuild index c78279fbee98..863da84818a5 100644 --- a/media-video/vlc/vlc-3.0.9999.ebuild +++ b/media-video/vlc/vlc-3.0.21-r1.ebuild @@ -20,6 +20,7 @@ else else SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" fi + S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv -sparc ~x86" fi inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg @@ -61,7 +62,6 @@ BDEPEND=" wayland? ( dev-util/wayland-scanner ) x86? ( dev-lang/yasm ) " -# <ffmpeg-5 dep for USE="ffmpeg vaapi" for bug #864721 RDEPEND=" media-libs/libvorbis net-dns/libidn:= @@ -191,7 +191,7 @@ RDEPEND=" gnome-base/librsvg:2 x11-libs/cairo ) - taglib? ( >=media-libs/taglib-1.9 ) + taglib? ( <media-libs/taglib-2 ) theora? ( media-libs/libtheora ) tremor? ( media-libs/tremor ) truetype? ( @@ -203,10 +203,7 @@ RDEPEND=" udev? ( virtual/udev ) upnp? ( net-libs/libupnp:=[ipv6(+)] ) v4l? ( media-libs/libv4l:= ) - vaapi? ( - <media-video/ffmpeg-5 - media-libs/libva:=[drm(+),wayland?,X?] - ) + vaapi? ( media-libs/libva:=[drm(+),wayland?,X?] ) vdpau? ( x11-libs/libvdpau ) vnc? ( net-libs/libvncserver ) vpx? ( media-libs/libvpx:= ) @@ -232,16 +229,15 @@ DEPEND="${RDEPEND} PATCHES=( "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch "${FILESDIR}"/${PN}-3.0.18-drop-minizip-dep.patch + "${FILESDIR}"/${PN}-3.0.21-freerdp-2.patch # bug 919296, 590164 + "${FILESDIR}"/${PN}-3.0.21-vaapi-without-ffmepg4.patch # bug 864721, thx Fedora ) DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) -S="${WORKDIR}/${MY_P}" - pkg_setup() { if use lua; then lua-single_pkg_setup diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.9999.ebuild index c78279fbee98..863da84818a5 100644 --- a/media-video/vlc/vlc-3.0.9999.ebuild +++ b/media-video/vlc/vlc-3.0.9999.ebuild @@ -20,6 +20,7 @@ else else SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" fi + S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv -sparc ~x86" fi inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg @@ -61,7 +62,6 @@ BDEPEND=" wayland? ( dev-util/wayland-scanner ) x86? ( dev-lang/yasm ) " -# <ffmpeg-5 dep for USE="ffmpeg vaapi" for bug #864721 RDEPEND=" media-libs/libvorbis net-dns/libidn:= @@ -191,7 +191,7 @@ RDEPEND=" gnome-base/librsvg:2 x11-libs/cairo ) - taglib? ( >=media-libs/taglib-1.9 ) + taglib? ( <media-libs/taglib-2 ) theora? ( media-libs/libtheora ) tremor? ( media-libs/tremor ) truetype? ( @@ -203,10 +203,7 @@ RDEPEND=" udev? ( virtual/udev ) upnp? ( net-libs/libupnp:=[ipv6(+)] ) v4l? ( media-libs/libv4l:= ) - vaapi? ( - <media-video/ffmpeg-5 - media-libs/libva:=[drm(+),wayland?,X?] - ) + vaapi? ( media-libs/libva:=[drm(+),wayland?,X?] ) vdpau? ( x11-libs/libvdpau ) vnc? ( net-libs/libvncserver ) vpx? ( media-libs/libvpx:= ) @@ -232,16 +229,15 @@ DEPEND="${RDEPEND} PATCHES=( "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch "${FILESDIR}"/${PN}-3.0.18-drop-minizip-dep.patch + "${FILESDIR}"/${PN}-3.0.21-freerdp-2.patch # bug 919296, 590164 + "${FILESDIR}"/${PN}-3.0.21-vaapi-without-ffmepg4.patch # bug 864721, thx Fedora ) DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) -S="${WORKDIR}/${MY_P}" - pkg_setup() { if use lua; then lua-single_pkg_setup
