From cb2f73d10494730ba590096a1f24ebc6d0d61a9f Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 16 Jan 2025 06:41:40 +0000 Subject: gentoo auto-resync : 16:01:2025 - 06:41:40 --- media-video/vlc/Manifest | 5 +- .../vlc/files/vlc-3.0.21-vaapi-w-ffmpeg5.patch | 149 ++++++ media-video/vlc/vlc-3.0.21-r2.ebuild | 499 --------------------- media-video/vlc/vlc-3.0.21-r3.ebuild | 499 +++++++++++++++++++++ media-video/vlc/vlc-3.0.9999.ebuild | 1 - 5 files changed, 651 insertions(+), 502 deletions(-) create mode 100644 media-video/vlc/files/vlc-3.0.21-vaapi-w-ffmpeg5.patch delete mode 100644 media-video/vlc/vlc-3.0.21-r2.ebuild create mode 100644 media-video/vlc/vlc-3.0.21-r3.ebuild (limited to 'media-video/vlc') diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest index 74ba75bf2341..ae875f9e7ac8 100644 --- a/media-video/vlc/Manifest +++ b/media-video/vlc/Manifest @@ -4,6 +4,7 @@ AUX vlc-3.0.11.1-configure_lua_version.patch 1598 BLAKE2B 589c90d0c805ff516b7957 AUX vlc-3.0.18-drop-minizip-dep.patch 1024 BLAKE2B f00df51fe46743b760785151fdc4b770347331b80fcb4208860b4cf99555504e634959384c236a3539c9235547d5eb54c0a1b18e0183b0864e0c4fc070359e15 SHA512 5911e0e64d07fd23a67b142adaec684c581125f06295a64dee9aade31e780b6010538007c7477ea9ef69e4e7b4aeb1cc30891dd22bf273c18407f694111a66f8 AUX vlc-3.0.2.1-vdpau.patch 9068 BLAKE2B 072ab73cde74dc6b6a592218914f5b08f59fff94bebcc9c9ec8e4fcdd6288611e544b8c6ddab65bfa9d01e50800f0fcc814bf598733a29e4c3d94f899d3ae5b2 SHA512 28e10fd80a9888f85cf7b75e3df40c9b9f44d6a1d6bf3ab14a37b79767142fb2d81f40f3f806d86fbc0db1f0a995352ef47b20448dbbcaecc03f764135dba21e AUX vlc-3.0.21-freerdp-2.patch 8386 BLAKE2B ad8abf54cbf62cac4e67a000c40595a2f1ed13d57c8039aa7a9309dbe3d213e3d6838d31faf2f36d031aa25fd1a5f97fc26435b1dc4e7e082a2e517ed629b285 SHA512 7a43186c6f37aa4d4b2b971f91789c4a9c8d5d192cd9c1ed3fa9609b2d713f47420b983865d0906ca0dd6d15bc1ae6b22e84b03909c0c8e0024b779362d26c92 +AUX vlc-3.0.21-vaapi-w-ffmpeg5.patch 5223 BLAKE2B 762df3b6e2857ab985b044fc69b9c328c488faff4ae8d70c43996d01171faaa3fc1dd157a2240f35b8ac0e2ac0205b1236759f8d5b58ba8bca9d07bacc29149f SHA512 3dc0253d5e1c6fa60c6e32f4f8e024f2c953b2ea87fb324550fa12a1f5420a679274927d5922d78097135d422fc7370ff85b28bafddd7cf60070bd8fa3f62bba AUX vlc-3.0.21-vaapi-without-ffmpeg4.patch 692 BLAKE2B 6e9194d387e5b4643fb90d06fed809834e3a2c8e8f7e8a43b4d0866b73d5c2bf479181b83ae6e1b0a3b7971494fb478577a4385870c559be44961bed0d5bc9df SHA512 709450c0f51000618a7341cca7e4ffe6eac42a76a4cb7092ed197fbe28a6d6502c6bb234d6b0579ca3eb69bd918d1217a691ad2aa2aa7869c383ca77939ae83f AUX vlc-3.0.6-fdk-aac-2.0.0.patch 3436 BLAKE2B 022201ed10fef189feeb36f44ab4194ab7994e4fdd8bad922070b54688d34d051fac28177a0e648d55670e0b9f0c6b45f9a05650476b0ae12ebfe759dd561e28 SHA512 68964adda04cd88e80b586984f1af0cfdccff5dbf8529070d5ab985b23402dfb7380b5d39eacfea433c1ba03434139e4f394c1c25d6b426489883d3a42cb7b5b AUX vlc-9999-configure-lua-version.patch 1840 BLAKE2B 1b9f11c05ed58e12616732c73a8418917870515f9612467b2839e8414f553ba3d0d9ede4c38e15957cc9b271aecae9364961103dafd72b80c6088a826f18777b SHA512 fa6350a02a92b65e5cc1c7b8e65e14045ca279d9d6f3f1ae255ab2a8ac88b3b3ff16102aa7e91e51e65e2500712bd7fccbdc987e760a5753581098afb1259eb9 @@ -12,8 +13,8 @@ AUX vlc-9999-libupnp-slot-1.8.patch 763 BLAKE2B 6bc8cf46f029db27d6d30d96e871d3bc DIST vlc-3.0.21-taglib2.tar.xz 12620 BLAKE2B e0211789acc6c0381307bd154775ab32c0c403c9e245a965774667f9a83e801436b8609574f3152cde714e416d1826eb2b197349a54dfdf8eb86fc6ee3dd6f4e SHA512 f5b6691c36993b7f8002ff5c244f8e73b8fa8aeb09ef83f38f51ff9fda67c8204551cb2d762e16364229fdca6d7284a47c4d44d0a98b1d3c7759923500d04ffa DIST vlc-3.0.21.tar.xz 25649288 BLAKE2B 0ad05282d624611ba8a2b6ca062c68aabeac8f37410dd427cc9b8c0d107af48ed203b73978e2fe83e8171ea6b78caa51394f3497061b561447dbb41058e1af9f SHA512 cb1af76c8056648c331d7e6e0680d161ed1849eb635987504f45eae02531e9b432651034317fa7e02b0722905dfb9f0f5dad67b5924cc62edcaf0d173ac36aee EBUILD vlc-3.0.21-r1.ebuild 13683 BLAKE2B 37f55aac807012f5bbafdb2c0fae98340aea5aa4104f284c54973033050542ab5cce4a67da274535cb91d33aa0352c5dfd3732f726b3679f1e79351604bf77f1 SHA512 0dff4e8db522228dc975dcb027bd08581dbcb351da4707eff414f7525b2d7fd0204c2f85e41612ba3ef6448e4a26a6ce66516985fb8d89282bc1901db060b29f -EBUILD vlc-3.0.21-r2.ebuild 13403 BLAKE2B 275bb566d9a7f36d5c2d99060c992813c1884aaa020dcc29bde9c9cc7b997a452f820a0b9ac70bb43f6cbd62bb86d3da7e35f20e7863fc0d31c1bcb442ba0a0f SHA512 59a2c042b54366e44548d0bc37a0cb7721602fba7e8b2d2ba6e5508db41305996186bb8fef32da15d6f48dda9b19168ef064f99087933e1b4ec6aee767d90d86 +EBUILD vlc-3.0.21-r3.ebuild 13394 BLAKE2B 1582c530ff3e861ab48c54c3a7a0bd1f50ce7997bd82b8689823cd3e2fb6bba541b4855bd47ce37f4d3ce1d07931dc842e6063c5ac245f4b079c4c4bd7cefdc4 SHA512 876575db785a43d1ff6f513053b982d3c571a3470dd3a2bbcaff94937fd5c89694e3482c383e95c6b948b4d5ecf5bc9c37937e3bdba7b35fc4d8a76abac414d6 EBUILD vlc-3.0.21.ebuild 13632 BLAKE2B cdf1b077440ba3400b7504018eb5d3af65f2cd18232a2c12072331dedd81ee5a0ddf245145cc55915807c297c07681485cf785361e0dc371261652a0467a3a46 SHA512 ef40a8bc248737c874527774e29107d8d89d36d5cc251ada4ea65c12b7194db850c207a06f982eca2df3982c37f7ac2dc3aca5615be335bfe0ef3a18f93de768 -EBUILD vlc-3.0.9999.ebuild 13633 BLAKE2B 07cd75c7c8e2e56c9645f6a8ce76093fb530ecee3c26461a7e7da1e2ca12ad932ed5e00e6932c8fc59692d36c874e45e34d3c55e09dbe64b08fd00239ed4ff9f SHA512 5c61bb142c7ad909320819989cf30a6464ce700c25ecc94acf4f725841495324b5969b0a88fe21d2c08744958cee85bf5d5f45dab548eca272e78f6e9dd8a8fe +EBUILD vlc-3.0.9999.ebuild 13552 BLAKE2B 6d8444fecd25f4941d4905b43cb8923ed0e5525eeeb3cf165096c4cea4fbbf95b118fcea6ca011657a3b1afc6933f85867d790efdd93bc5055a68eff3224f95c SHA512 8cfc23efe7b0fafb939425d6ee65c31442c161032d7bb0603e33fb5fdcf346c42227e548cf1e74ef4b056f9187c22700c96b46174c37085990ff88981e29a252 EBUILD vlc-9999.ebuild 13528 BLAKE2B 6f2b1d1b5a708565c66d13b0e519bddfdc51ead8b4f28cb9e62fdbc7d6496c817fa413d488a86f21a84915e1b60bfaf10f0ec22c44744d625b40659dea70a362 SHA512 baa9aaf6056b6b62942804dc10ab9074bc9ad48200b9d6f92d8ace9b23f7791fce5658ca86d9bff61419a1205262449d7f08ed31ab3da7687d13dc8ad2cda61c MISC metadata.xml 4733 BLAKE2B 820fb938c3ca3079c48596f131adb1298ee98c9820921780ee4acf322c4475bab7c31de16688b5668a715c496857c572778bd7b4b5d3f3dcbb61b08fd0db8574 SHA512 d74d916645ae6a3b0fb8d6c6f0a2a35e24ab9a829b790d33d9f80e2fdd3165db8ffe2747e82e698bce7b9974384704a380dd2f4f50d8647bcaa91a016d1522cd diff --git a/media-video/vlc/files/vlc-3.0.21-vaapi-w-ffmpeg5.patch b/media-video/vlc/files/vlc-3.0.21-vaapi-w-ffmpeg5.patch new file mode 100644 index 000000000000..322818b348b7 --- /dev/null +++ b/media-video/vlc/files/vlc-3.0.21-vaapi-w-ffmpeg5.patch @@ -0,0 +1,149 @@ +From ba5dc03aecc1d96f81b76838f845ebde7348cf62 Mon Sep 17 00:00:00 2001 +From: David Rosca +Date: Fri, 20 Dec 2024 20:24:36 +0100 +Subject: [PATCH] avcodec: vaapi: Support VAAPI with latest FFmpeg + +--- + configure.ac | 20 +------------ + modules/codec/Makefile.am | 2 +- + modules/codec/avcodec/avcommon_compat.h | 3 ++ + modules/codec/avcodec/vaapi.c | 38 +++++++++++++++++++++++-- + 4 files changed, 41 insertions(+), 22 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 00afb063c455..089339e10e0b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2550,25 +2550,7 @@ AM_CONDITIONAL([HAVE_VAAPI], [test "${have_vaapi}" = "yes"]) + AM_CONDITIONAL([HAVE_VAAPI_DRM], [test "${have_vaapi_drm}" = "yes"]) + AM_CONDITIONAL([HAVE_VAAPI_X11], [test "${have_vaapi_x11}" = "yes"]) + AM_CONDITIONAL([HAVE_VAAPI_WL], [test "${have_vaapi_wl}" = "yes"]) +- +-have_avcodec_vaapi="no" +-AS_IF([test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"], [ +- VLC_SAVE_FLAGS +- CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" +- CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" +- AC_CHECK_HEADERS([libavcodec/vaapi.h], [ +- AC_MSG_NOTICE([VA API acceleration activated]) +- 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 ]) +- ]) +- ]) +- VLC_RESTORE_FLAGS +-]) +-AM_CONDITIONAL([HAVE_AVCODEC_VAAPI], [test "${have_avcodec_vaapi}" = "yes"]) ++AM_CONDITIONAL([HAVE_AVCODEC_VAAPI], [test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"]) + + dnl + dnl dxva2 needs avcodec +diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am +index 6d9465fdaef9..dd04391c1bf7 100644 +--- a/modules/codec/Makefile.am ++++ b/modules/codec/Makefile.am +@@ -416,7 +416,7 @@ libvaapi_plugin_la_SOURCES = \ + codec/avcodec/vaapi.c hw/vaapi/vlc_vaapi.c hw/vaapi/vlc_vaapi.h + libvaapi_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) + libvaapi_plugin_la_CFLAGS = $(AM_CFLAGS) $(AVCODEC_CFLAGS) +-libvaapi_plugin_la_LIBADD = $(LIBVA_LIBS) ++libvaapi_plugin_la_LIBADD = $(LIBVA_LIBS) $(AVCODEC_LIBS) + if HAVE_AVCODEC_VAAPI + if HAVE_VAAPI_DRM + codec_LTLIBRARIES += libvaapi_drm_plugin.la +diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h +index ac02c06d2339..8ab6910f3250 100644 +--- a/modules/codec/avcodec/avcommon_compat.h ++++ b/modules/codec/avcodec/avcommon_compat.h +@@ -84,6 +84,9 @@ + #ifndef FF_API_AVIO_WRITE_NONCONST // removed in ffmpeg 7 + # define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61) + #endif ++#ifndef FF_API_STRUCT_VAAPI_CONTEXT ++# define FF_API_STRUCT_VAAPI_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 59) ++#endif + + #endif /* HAVE_LIBAVCODEC_AVCODEC_H */ + +diff --git a/modules/codec/avcodec/vaapi.c b/modules/codec/avcodec/vaapi.c +index c83269e43f30..e203baaf9ee2 100644 +--- a/modules/codec/avcodec/vaapi.c ++++ b/modules/codec/avcodec/vaapi.c +@@ -42,12 +42,25 @@ + # include + #endif + #include ++#if FF_API_STRUCT_VAAPI_CONTEXT + #include ++#else ++#include ++#endif + + #include "avcodec.h" + #include "va.h" + #include "../../hw/vaapi/vlc_vaapi.h" + ++#if !FF_API_STRUCT_VAAPI_CONTEXT ++struct vaapi_context ++{ ++ VADisplay display; ++ VAConfigID config_id; ++ VAContextID context_id; ++}; ++#endif ++ + struct vlc_va_sys_t + { + struct vlc_vaapi_instance *va_inst; +@@ -145,8 +158,10 @@ static void Delete(vlc_va_t *va, void **hwctx) + + (void) hwctx; + +- vlc_vaapi_DestroyContext(o, sys->hw_ctx.display, sys->hw_ctx.context_id); +- vlc_vaapi_DestroyConfig(o, sys->hw_ctx.display, sys->hw_ctx.config_id); ++ if (sys->hw_ctx.context_id != VA_INVALID_ID) ++ vlc_vaapi_DestroyContext(o, sys->hw_ctx.display, sys->hw_ctx.context_id); ++ if (sys->hw_ctx.config_id != VA_INVALID_ID) ++ vlc_vaapi_DestroyConfig(o, sys->hw_ctx.display, sys->hw_ctx.config_id); + vlc_vaapi_ReleaseInstance(sys->va_inst); + free(sys); + } +@@ -196,6 +211,7 @@ static int Create(vlc_va_t *va, AVCodecContext *ctx, const AVPixFmtDescriptor *d + sys->hw_ctx.config_id = VA_INVALID_ID; + sys->hw_ctx.context_id = VA_INVALID_ID; + ++#if FF_API_STRUCT_VAAPI_CONTEXT + sys->hw_ctx.config_id = + vlc_vaapi_CreateConfigChecked(o, sys->hw_ctx.display, i_profile, + VAEntrypointVLD, i_vlc_chroma); +@@ -211,6 +227,24 @@ static int Create(vlc_va_t *va, AVCodecContext *ctx, const AVPixFmtDescriptor *d + goto error; + + ctx->hwaccel_context = &sys->hw_ctx; ++#else ++ AVBufferRef *hwdev_ref = av_hwdevice_ctx_alloc(AV_HWDEVICE_TYPE_VAAPI); ++ if (hwdev_ref == NULL) ++ goto error; ++ ++ AVHWDeviceContext *hwdev_ctx = (void *) hwdev_ref->data; ++ AVVAAPIDeviceContext *vadev_ctx = hwdev_ctx->hwctx; ++ vadev_ctx->display = va_dpy; ++ ++ if (av_hwdevice_ctx_init(hwdev_ref) < 0) ++ { ++ av_buffer_unref(&hwdev_ref); ++ goto error; ++ } ++ ++ ctx->hw_device_ctx = hwdev_ref; ++#endif ++ + va->sys = sys; + va->description = vaQueryVendorString(sys->hw_ctx.display); + va->get = Get; +-- +GitLab + diff --git a/media-video/vlc/vlc-3.0.21-r2.ebuild b/media-video/vlc/vlc-3.0.21-r2.ebuild deleted file mode 100644 index cc8ff0f5e827..000000000000 --- a/media-video/vlc/vlc-3.0.21-r2.ebuild +++ /dev/null @@ -1,499 +0,0 @@ -# Copyright 2000-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..2} ) -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" -SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz - https://dev.gentoo.org/~asturm/distfiles/${P}-taglib2.tar.xz" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv -sparc ~x86" - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast dav1d dbus - dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth - fontconfig +gcrypt gme keyring gstreamer +gui ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc live lua - macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses nfs ogg - omxil optimisememory opus png projectm pulseaudio rdp run-as-root samba sdl-image - sftp shout sid skins soxr speex srt ssl svg taglib theora tremor truetype twolame - udev upnp vaapi v4l vdpau vnc vpx wayland +X x264 x265 xml zeroconf zvbi - cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( archive gui truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - wayland? ( dev-util/wayland-scanner ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - media-libs/libvorbis - net-dns/libidn:= - sys-libs/zlib - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz:= - virtual/ttf-fonts - ) - bluray? ( >=media-libs/libbluray-1.3.0:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-6.1.1:= - >=media-libs/libdvdread-6.1.2:= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac:= - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - gui? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( media-libs/libjpeg-turbo:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live:= ) - lua? ( ${LUA_DEPS} ) - mad? ( media-libs/libmad ) - matroska? ( - >=dev-libs/libebml-1.4.2:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123-base ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:=[unicode(+)] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - >=media-libs/libprojectm-3.1.12:0= - ) - pulseaudio? ( media-libs/libpulse ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:2= ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( media-libs/taglib:= ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6(+)] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( media-libs/libva:=[drm(+),wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${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 - "${WORKDIR}"/${P}-taglib2 # bug 938946, in 3.0.x branch - "${FILESDIR}"/${PN}-3.0.21-vaapi-without-ffmpeg4.patch # bug 864721, thx Fedora - "${FILESDIR}"/${PN}-3.0.2.1-vdpau.patch # bug 946178 -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - default - - # bug 608256 - xdg_environment_reset - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC="$(tc-getBUILD_CC)" - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - --enable-vorbis - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable gui qt) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # https://code.videolan.org/videolan/vlc/-/issues/17626 (bug #861143) - append-flags -fno-strict-aliasing - filter-lto - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I${ESYSROOT}/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/sidplay/builders/" - - if use riscv; then - # bug #803473 - append-libs -latomic - fi - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.21-r3.ebuild b/media-video/vlc/vlc-3.0.21-r3.ebuild new file mode 100644 index 000000000000..540d7d7a940b --- /dev/null +++ b/media-video/vlc/vlc-3.0.21-r3.ebuild @@ -0,0 +1,499 @@ +# Copyright 2000-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..2} ) +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" +SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz + https://dev.gentoo.org/~asturm/distfiles/${P}-taglib2.tar.xz" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv -sparc ~x86" + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast dav1d dbus + dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth + fontconfig +gcrypt gme keyring gstreamer +gui ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc live lua + macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses nfs ogg + omxil optimisememory opus png projectm pulseaudio rdp run-as-root samba sdl-image + sftp shout sid skins soxr speex srt ssl svg taglib theora tremor truetype twolame + udev upnp vaapi v4l vdpau vnc vpx wayland +X x264 x265 xml zeroconf zvbi + cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( archive gui truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + wayland? ( dev-util/wayland-scanner ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + media-libs/libvorbis + net-dns/libidn:= + sys-libs/zlib + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz:= + virtual/ttf-fonts + ) + bluray? ( >=media-libs/libbluray-1.3.0:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-6.1.1:= + >=media-libs/libdvdread-6.1.2:= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac:= + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + gui? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( media-libs/libjpeg-turbo:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( media-plugins/live:= ) + lua? ( ${LUA_DEPS} ) + mad? ( media-libs/libmad ) + matroska? ( + >=dev-libs/libebml-1.4.2:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123-base ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + >=media-libs/libprojectm-3.1.12:0= + ) + pulseaudio? ( media-libs/libpulse ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:2= ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( media-libs/taglib:= ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6(+)] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( media-libs/libva:=[drm(+),wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${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 + "${WORKDIR}"/${P}-taglib2 # bug 938946, in 3.0.x branch + "${FILESDIR}"/${PN}-3.0.2.1-vdpau.patch # bug 946178 + "${FILESDIR}"/${P}-vaapi-w-ffmpeg5.patch # bug 864721, in 3.0.x branch +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + default + + # bug 608256 + xdg_environment_reset + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC="$(tc-getBUILD_CC)" + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + --enable-vorbis + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable gui qt) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # https://code.videolan.org/videolan/vlc/-/issues/17626 (bug #861143) + append-flags -fno-strict-aliasing + filter-lto + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I${ESYSROOT}/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/sidplay/builders/" + + if use riscv; then + # bug #803473 + append-libs -latomic + fi + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EPREFIX}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.9999.ebuild index 73417535b63d..c3e406c30347 100644 --- a/media-video/vlc/vlc-3.0.9999.ebuild +++ b/media-video/vlc/vlc-3.0.9999.ebuild @@ -233,7 +233,6 @@ PATCHES=( "${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-ffmpeg4.patch # bug 864721, thx Fedora ) DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) -- cgit v1.2.3