summaryrefslogtreecommitdiff
path: root/media-libs
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/Manifest.gzbin65153 -> 65119 bytes
-rw-r--r--media-libs/exempi/Manifest3
-rw-r--r--media-libs/exempi/exempi-2.4.5-r1.ebuild28
-rw-r--r--media-libs/exempi/files/exempi-2.4.5-gcc11.patch11
-rw-r--r--media-libs/exiftool/Manifest2
-rw-r--r--media-libs/exiftool/exiftool-12.16-r1.ebuild27
-rw-r--r--media-libs/exiftool/files/exiftool-12.16-CVE-2021-22204.patch30
-rw-r--r--media-libs/freeglut/Manifest2
-rw-r--r--media-libs/freeglut/freeglut-3.2.1-r1.ebuild (renamed from media-libs/freeglut/freeglut-3.2.1.ebuild)0
-rw-r--r--media-libs/harfbuzz/Manifest2
-rw-r--r--media-libs/harfbuzz/harfbuzz-2.8.1.ebuild110
-rw-r--r--media-libs/libass/Manifest2
-rw-r--r--media-libs/libass/libass-0.15.1-r1.ebuild43
-rw-r--r--media-libs/libepoxy/Manifest2
-rw-r--r--media-libs/libepoxy/libepoxy-1.5.7.ebuild54
-rw-r--r--media-libs/libglvnd/Manifest4
-rw-r--r--media-libs/libglvnd/libglvnd-1.3.3.ebuild73
-rw-r--r--media-libs/libglvnd/libglvnd-9999.ebuild2
-rw-r--r--media-libs/libldac/Manifest4
-rw-r--r--media-libs/libldac/libldac-2.0.2-r1.ebuild29
-rw-r--r--media-libs/libldac/libldac-2.0.2.3.ebuild2
-rw-r--r--media-libs/libmatroska/Manifest2
-rw-r--r--media-libs/libmatroska/libmatroska-1.6.3.ebuild3
-rw-r--r--media-libs/libopenaptx/Manifest2
-rw-r--r--media-libs/libopenaptx/libopenaptx-0.2.1.ebuild49
-rw-r--r--media-libs/libsdl2/Manifest4
-rw-r--r--media-libs/libsdl2/libsdl2-2.0.12-r2.ebuild3
-rw-r--r--media-libs/libsdl2/libsdl2-2.0.14-r1.ebuild4
-rw-r--r--media-libs/libshout/Manifest2
-rw-r--r--media-libs/libshout/libshout-2.4.5.ebuild5
-rw-r--r--media-libs/libtgvoip/Manifest3
-rw-r--r--media-libs/libtgvoip/libtgvoip-2.4.4_p20210302-r1.ebuild62
-rw-r--r--media-libs/libtgvoip/libtgvoip-2.4.4_p20210302.ebuild5
-rw-r--r--media-libs/libuninameslist/Manifest2
-rw-r--r--media-libs/libuninameslist/libuninameslist-20200413-r1.ebuild2
-rw-r--r--media-libs/mesa/Manifest8
-rw-r--r--media-libs/mesa/mesa-21.0.1.ebuild564
-rw-r--r--media-libs/mesa/mesa-21.0.2.ebuild564
-rw-r--r--media-libs/mesa/mesa-21.1.0_rc3.ebuild (renamed from media-libs/mesa/mesa-21.1.0_rc2.ebuild)3
-rw-r--r--media-libs/openglide/Manifest2
-rw-r--r--media-libs/openglide/openglide-0.09_rc9_p20191120.ebuild5
-rw-r--r--media-libs/openimageio/Manifest2
-rw-r--r--media-libs/openimageio/openimageio-2.2.12.0.ebuild2
-rw-r--r--media-libs/opusfile/Manifest2
-rw-r--r--media-libs/opusfile/opusfile-0.12.ebuild5
-rw-r--r--media-libs/portmidi/Manifest3
-rw-r--r--media-libs/portmidi/files/portmidi-234-cmake.patch332
-rw-r--r--media-libs/portmidi/portmidi-234.ebuild143
-rw-r--r--media-libs/raptor/Manifest3
-rw-r--r--media-libs/raptor/files/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch32
-rw-r--r--media-libs/raptor/raptor-2.0.15-r3.ebuild (renamed from media-libs/raptor/raptor-2.0.15-r2.ebuild)1
-rw-r--r--media-libs/rlottie/Manifest2
-rw-r--r--media-libs/rlottie/rlottie-0.2_p20210405.ebuild45
-rw-r--r--media-libs/speexdsp/Manifest3
-rw-r--r--media-libs/speexdsp/files/speexdsp-1.2.0-configure.patch41
-rw-r--r--media-libs/speexdsp/speexdsp-1.2.0.ebuild57
-rw-r--r--media-libs/tg_owt/Manifest3
-rw-r--r--media-libs/tg_owt/files/Allow-using-packaged-third_party.patch487
-rw-r--r--media-libs/tg_owt/tg_owt-0_pre20210422.ebuild88
-rw-r--r--media-libs/zxing-cpp/Manifest3
-rw-r--r--media-libs/zxing-cpp/files/zxing-cpp-1.1.1-gcc11.patch22
-rw-r--r--media-libs/zxing-cpp/zxing-cpp-1.1.1.ebuild4
62 files changed, 1789 insertions, 1215 deletions
diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz
index e07a168542c9..79535eef5833 100644
--- a/media-libs/Manifest.gz
+++ b/media-libs/Manifest.gz
Binary files differ
diff --git a/media-libs/exempi/Manifest b/media-libs/exempi/Manifest
index 1e6b056b40d8..1877c5ab68dc 100644
--- a/media-libs/exempi/Manifest
+++ b/media-libs/exempi/Manifest
@@ -1,5 +1,6 @@
AUX exempi-2.4.2-iconv.patch 1440 BLAKE2B a3fccd3c268c28f1fe0b9e13544ba7b33d433a9a92ad9319301996c162766dac9d3fc14f97c3a3c795d787d0b7b9048dec830e1ce5d809b1a14ffa82097e2ff5 SHA512 09cc5ba46c8e0a0b0c1c3b0c86d9c49c21e64a64ca35a90053bf98ed81652b8d1c91bc29a321b5b3bf032b65af220129860f7d3f8c6e12ce608db19c01841736
AUX exempi-2.4.5-CVE-2018-12648.patch 1556 BLAKE2B 154787079e9a1b3c747275aadd5fd2e47efd6079508b1f2db12ca5d0a83c1efb31ac87f869703e28e1b638a26d693fec6b6875d762c85c2ea63ff3adba70b036 SHA512 12594e62110d5d0e457102db94822c0920196420ca2321193b79736ed05dde6859723d66bba0177d55b0390c0716debfcf0e074ca27eaa12ef3e29e799d3913e
+AUX exempi-2.4.5-gcc11.patch 346 BLAKE2B 022ca9284b3415b2a24c1aca421488e0741cd42784cdf1c24753d5a3941274f4adad87474e72f45286dba907641101d27ca5047cfa6e8f3b36dfba470db14f32 SHA512 2ca5dc6f1147c11a8ce4911b5b5b6d52ffedc6925ea2c13bd46e074320020b3e7ef52bc405fad9214a35fc47e8087f49258660750e65f168afc8517c49629947
DIST exempi-2.4.5.tar.gz 3901474 BLAKE2B 7db80266847a18464ee5d75e2ffa38a05b2b23a30fb02a16c0a4a512f853a625f00db3ee0de3f177af584e12d65c8ecd2acc96cae96ef02d7b39129ab4b5274a SHA512 2b3dd8b2d1763fbbfed1995635f625a8e909a4c3119147385737f349002b2fa038cfaca72b2b877db8f28b9022230e49264b58766a68060b0b7c322cad99b22c
-EBUILD exempi-2.4.5-r1.ebuild 1236 BLAKE2B ba5c091bbdc7bdaf41c1258cfb8079df6e3f372dba36f54f6ede62f61736e9e55e60df91b5c3e4eeb69a6b9fb594832637f8f533cac895ecda0371e5e3080b44 SHA512 4d719005f1eafb80e6dd6bf2080389e02b60c4ddc6326c2b9d90ae161003543e0a99f845b9b55fc016649011e4c42740dc72e899e1aa15025eecdcfe88b060b5
+EBUILD exempi-2.4.5-r1.ebuild 1193 BLAKE2B 7f1ea15267e1b31fe02a529b1307d3ff897a2b29bd10fed5bf21b1b155352dd557b95bcdd21d8ffa5d482f88d982a7f3ec9c86c62b9b877a6b5ef9c767edc24f SHA512 b023bfca098837fc531ec2a54702df8b21e0a828a1345a80c85620a4f5783f5b4558673a8ac569ed0cf363ea8acb54d908ac92f559851559b78edffe9cc07806
MISC metadata.xml 232 BLAKE2B b8ca675b002ba96d45a3afe7b6dd9f0e74d21db87eb002f72bae4e23fd49602115a18b372084596fdc09c3dccef80ae95ab540dad93fdf5dab0c9fb34f5d28db SHA512 21ba416ac701f1c9deb55d07f8afbf9da930fb04d274d84c5cf0df5e549554059959228ee6a4b8523d985fe0762af1a7c36aaefcb0e5b3c7baa5866e2841cfb4
diff --git a/media-libs/exempi/exempi-2.4.5-r1.ebuild b/media-libs/exempi/exempi-2.4.5-r1.ebuild
index 34771335ec29..8f9176de69e2 100644
--- a/media-libs/exempi/exempi-2.4.5-r1.ebuild
+++ b/media-libs/exempi/exempi-2.4.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -12,48 +12,50 @@ SRC_URI="https://libopenraw.freedesktop.org/download/${P}.tar.gz"
LICENSE="BSD"
SLOT="2/3"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="examples static-libs test"
+IUSE="examples test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/expat-2:=
sys-libs/zlib
- virtual/libiconv
-"
-DEPEND="${RDEPEND}"
+ virtual/libiconv"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-libs/boost )"
BDEPEND="
sys-devel/autoconf-archive
- sys-devel/gettext
- test? ( >=dev-libs/boost-1.48 )
-"
+ sys-devel/gettext"
PATCHES=(
"${FILESDIR}"/${PN}-2.4.2-iconv.patch
"${FILESDIR}"/${P}-CVE-2018-12648.patch
+ "${FILESDIR}"/${P}-gcc11.patch
)
src_prepare() {
default
- cp /usr/share/gettext/config.rpath . || die
+
+ config_rpath_update .
eautoreconf
}
src_configure() {
# Valgrind detection is "disabled" due to bug #295875
econf \
- $(use_enable static-libs static) \
+ --disable-static \
$(use_enable test unittest) \
VALGRIND=""
}
src_install() {
default
- find "${D}" -name '*.la' -delete || die
if use examples; then
emake -C samples/source distclean
rm samples/{,source,testfiles}/Makefile* || die
- insinto /usr/share/doc/${PF}/examples
- doins -r samples/*
+ docinto examples
+ dodoc -r samples/.
fi
+
+ find "${ED}" -name '*.la' -delete || die
}
diff --git a/media-libs/exempi/files/exempi-2.4.5-gcc11.patch b/media-libs/exempi/files/exempi-2.4.5-gcc11.patch
new file mode 100644
index 000000000000..259c05d5cbd2
--- /dev/null
+++ b/media-libs/exempi/files/exempi-2.4.5-gcc11.patch
@@ -0,0 +1,11 @@
+--- a/XMPFiles/source/FormatSupport/P2_Support.hpp
++++ b/XMPFiles/source/FormatSupport/P2_Support.hpp
+@@ -79,7 +79,7 @@
+ }; // class P2_Clip
+ struct P2SpannedClip_Order
+ {
+- bool operator()( P2_Clip* lhs, P2_Clip* rhs)
++ bool operator()( P2_Clip* lhs, P2_Clip* rhs) const
+ {
+ return lhs->GetOffsetInShot() < rhs->GetOffsetInShot();
+ }
diff --git a/media-libs/exiftool/Manifest b/media-libs/exiftool/Manifest
index 38889f2e0011..d2cb11ea2b51 100644
--- a/media-libs/exiftool/Manifest
+++ b/media-libs/exiftool/Manifest
@@ -1,5 +1,7 @@
+AUX exiftool-12.16-CVE-2021-22204.patch 1607 BLAKE2B 1cfcdb7c002ba24785b9a7c5e806f2d4cdd5054905858de3d322f81919f37b472f58ebaff14fbce49fb2c88e512488e26dfda603de7e271d0c8a4a1093f6539a SHA512 7a24dfc1962e10e05d14090ede26d292352d9e8d0e1eec2289527bb7577e59eb4e618c7b1b5773dd3a8295b124af10c4082a395d38a6893b5548b3e5a06bf1b7
DIST Image-ExifTool-12.08.tar.gz 4842868 BLAKE2B 0ad8228f5b40bf51f1e29e4676ecd012de2dec6229452f7655adb543d44e59825a21311f2d09ece5190fdda06b21fbd8cc6a697b164cf6aae94c401d082459e1 SHA512 66e445fe1aca640d4b984cfacb4972f2bc64bcab61dbb014a0486a7d04612ecbd249a2691bcff704957c93467533b383c53883bb409a2064bb8c839ae7c2d4a5
DIST Image-ExifTool-12.16.tar.gz 4888506 BLAKE2B d262f087b4334c01ed927945aa0b072c90eaf7322af017030ef193b8b20fc7ce7008b69c483bc83d1dbe0ceab5bcb7e894e5085cae853a1d9d74f72b9c8a360e SHA512 adfd21834ccf06277903712b3c5e328b29c56f3b30ee68f6802dca0820823b627622e55f53238690525d1d19df2a59cb57f9d80a1bb2e99da37fb7d963ee16ee
EBUILD exiftool-12.08.ebuild 543 BLAKE2B 3c64bd7b7a5a26358572ebb599df5c815200cee69bb7121a60d51f94eac2ffec1d6b19027150acf57474e05d8921272c1012dc71d95b1bfcf4abe54d2be44d2d SHA512 d98a45ba549b24053b9fb21a2bf61250fd73f5ca478dd24db1f1925e7d0c6956d183f235b7a4542b96794500284916e10d6c2eef73a82ea94338f74f5c35dfac
+EBUILD exiftool-12.16-r1.ebuild 609 BLAKE2B 0f00d05c49ab0bd21777725ef01e8198bcd5b4b56811d579c11628f81726dfbe9f70b2f927a796f1c5c66170d54f05de238dc065fad420822b19543368ab4d90 SHA512 e946de1f26f99ae982ee2b27e281158415bd2b675b680fbe9304cd9d52818762c227954530b471f13a5b894fc496b549088633d900e109296120e4bc5584175e
EBUILD exiftool-12.16.ebuild 548 BLAKE2B 4fe20c6aff48822e2830453d416740ccbd257ef0fb28164793f8cc3ff9e4ccd5448983e2a2008546f9ccd57a8e57685f2e06d01d5d7ab6bd5caae0f0fab79aeb SHA512 8ee2add456ad6eb6ce386075e6498e9cdd250434e0e881a6201febdc8fa9abfa1b7e5041d63bad0907c23df0e8d412476081bc33c1bf17ea6a9f664fcdd0c842
MISC metadata.xml 10039 BLAKE2B da44aad7d46d49683f89fa75db8c92230b9088cd14a5c8715a9f3a982843d8a348393f1bd10bdcc08d5d6dc4e5f2fbf0fdd517ce88df2180807796fbd5c06b32 SHA512 c4647e7055ffcae7226aa2bdff458576cc0fef14f6d782a16695902f4af96740a96f0388398eafbdca22ee76a0c808c81dafc2ccc583f8218c718f69c8fd0da9
diff --git a/media-libs/exiftool/exiftool-12.16-r1.ebuild b/media-libs/exiftool/exiftool-12.16-r1.ebuild
new file mode 100644
index 000000000000..3c8849a0fcc9
--- /dev/null
+++ b/media-libs/exiftool/exiftool-12.16-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DIST_NAME=Image-ExifTool
+inherit perl-module
+
+DESCRIPTION="Read and write meta information in image, audio and video files"
+HOMEPAGE="https://exiftool.org/"
+SRC_URI="https://exiftool.org/${DIST_P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ppc ~ppc64 ~x86 ~x64-macos"
+IUSE="doc"
+
+PATCHES=( "${FILESDIR}"/exiftool-12.16-CVE-2021-22204.patch )
+
+SRC_TEST="do"
+
+src_install() {
+ perl-module_src_install
+ use doc && dodoc -r html/
+
+ insinto /usr/share/${PN}
+ doins -r fmt_files config_files arg_files
+}
diff --git a/media-libs/exiftool/files/exiftool-12.16-CVE-2021-22204.patch b/media-libs/exiftool/files/exiftool-12.16-CVE-2021-22204.patch
new file mode 100644
index 000000000000..1c9e7921c6bb
--- /dev/null
+++ b/media-libs/exiftool/files/exiftool-12.16-CVE-2021-22204.patch
@@ -0,0 +1,30 @@
+Description: Fix 'eval injection".
+ CVE-2021-22204: Improper neutralization of user data in the DjVu file
+ format in ExifTool versions 7.44 and up allows arbitrary code execution
+ when parsing the malicious image
+Origin: upstream release 12.24
+Bug-Debian: https://bugs.debian.org/987505
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1925985
+Author: Phil Harvey <philharvey66@gmail.com>
+Reviewed-by: gregor herrmann <gregoa@debian.org>
+Last-Update: 2021-04-24
+Applied-Upstream: https://github.com/exiftool/exiftool/commit/cf0f4e7dcd024ca99615bfd1102a841a25dde031#diff-fa0d652d10dbcd246e6b1df16c1e992931d3bb717a7e36157596b76bdadb3800
+
+--- a/lib/Image/ExifTool/DjVu.pm
++++ b/lib/Image/ExifTool/DjVu.pm
+@@ -227,10 +227,11 @@
+ last unless $tok =~ /(\\+)$/ and length($1) & 0x01;
+ $tok .= '"'; # quote is part of the string
+ }
+- # must protect unescaped "$" and "@" symbols, and "\" at end of string
+- $tok =~ s{\\(.)|([\$\@]|\\$)}{'\\'.($2 || $1)}sge;
+- # convert C escape sequences (allowed in quoted text)
+- $tok = eval qq{"$tok"};
++ # convert C escape sequences, allowed in quoted text
++ # (note: this only converts a few of them!)
++ my %esc = ( a => "\a", b => "\b", f => "\f", n => "\n",
++ r => "\r", t => "\t", '"' => '"', '\\' => '\\' );
++ $tok =~ s/\\(.)/$esc{$1}||'\\'.$1/egs;
+ } else { # key name
+ pos($$dataPt) = pos($$dataPt) - 1;
+ # allow anything in key but whitespace, braces and double quotes
diff --git a/media-libs/freeglut/Manifest b/media-libs/freeglut/Manifest
index 918b7d96129e..29ea1ac28ef7 100644
--- a/media-libs/freeglut/Manifest
+++ b/media-libs/freeglut/Manifest
@@ -1,4 +1,4 @@
AUX freeglut-3.2.1-gcc10-fno-common.patch 3500 BLAKE2B 7163acef56f8f1bfebeaed554ecbe7a27dc3321bd19f5da5c1f482f52a447acf7bff3b8358d8023d8552fa5fa999475b70e3ec7242e8a127000ee7b49f2f751b SHA512 0845bc4c91c6233cab8c56d15d1efa8fcdac7ae12270a089f8dd20520fc5c94078b7abceadef304f8f42cd575a61ad5b1f444f21e0bbdd3ff310bcc40192336b
DIST freeglut-3.2.1.tar.gz 440228 BLAKE2B ed8a4b2361416cfee5540350ee50c32a56e5ea75d6834c677c5cec676967a04e13b2adf3da1cc9a3a2c73fbc6147b3b0bc91953a6edf1e35ce8c933eeff6f97a SHA512 aced4bbcd36269ce6f4ee1982e0f9e3fffbf18c94f785d3215ac9f4809b992e166c7ada496ed6174e13d77c0f7ef3ca4c57d8a282e96cbbe6ff086339ade3b08
-EBUILD freeglut-3.2.1.ebuild 1496 BLAKE2B 4caaa8ebb3687289b65a1affa82cca7dae944f211765eaf8def4876fd2e798da87a827b5d9ac9ac285c6ab0c68c36b659237632e9e277dd1cb9d596ae23cd353 SHA512 3e8e19d9dbd77c0b7efa554735804a52b70a46e0f6c9a76ca68477b06f83e62fabf492dab89454a82ba3aa9a50880c73aba2f9d82a2e26ab22e608f432f4190e
+EBUILD freeglut-3.2.1-r1.ebuild 1496 BLAKE2B 4caaa8ebb3687289b65a1affa82cca7dae944f211765eaf8def4876fd2e798da87a827b5d9ac9ac285c6ab0c68c36b659237632e9e277dd1cb9d596ae23cd353 SHA512 3e8e19d9dbd77c0b7efa554735804a52b70a46e0f6c9a76ca68477b06f83e62fabf492dab89454a82ba3aa9a50880c73aba2f9d82a2e26ab22e608f432f4190e
MISC metadata.xml 528 BLAKE2B ee8c09e46677ec77c1d6771b31ac1b28e75464d7e0e4405c41831e19446c5a442c782dbd32a79d0fe5e7ed85ecbd2404764f2121f5f4bff5483db4571fd89212 SHA512 94dc412f8f049bb88723fdba9f9b89645eb792547a768ea524a711ad9302c5cac38a7292ab09726154fc6829a05f41af05220f91d9f6eaed056e4cff8324370e
diff --git a/media-libs/freeglut/freeglut-3.2.1.ebuild b/media-libs/freeglut/freeglut-3.2.1-r1.ebuild
index 8cac34cf3c48..8cac34cf3c48 100644
--- a/media-libs/freeglut/freeglut-3.2.1.ebuild
+++ b/media-libs/freeglut/freeglut-3.2.1-r1.ebuild
diff --git a/media-libs/harfbuzz/Manifest b/media-libs/harfbuzz/Manifest
index a2d0c46878f7..9ab74435712c 100644
--- a/media-libs/harfbuzz/Manifest
+++ b/media-libs/harfbuzz/Manifest
@@ -1,6 +1,8 @@
DIST harfbuzz-2.7.4.tar.gz 16703694 BLAKE2B 9932c039bb27ee53179e500c80ae8bd24d4cb77d4fcd01c10b8b5f0fd55de6af3c265196aa80653835f464c5431f89a870a7112eaf2c715f05e1e084011fa240 SHA512 5b412e0f6d1c9142a0ef2713826cb8d6ebf348c5b64054a0676d3ce084bcff1de375dadf90e87dbbf6d0ec8e4a99339cb64b514d5464efb7e27037551e494099
DIST harfbuzz-2.8.0.tar.gz 17000989 BLAKE2B a2b29bccf394ad8836fb534af42aaa193addc02745ffe8a82294e571483b2eb1f7ece300dbae60a0c1b9e70235109e764ded16518ab2b17e4d3d319b43404faa SHA512 736e6829fd470d1647df2c7116b4e9e6186676bc33140b3913130a9f1818f7bef2415958cab8c6bf9c5b660f43e4924d3ca220970a5c48c0c1525f601e26fd48
+DIST harfbuzz-2.8.1.tar.gz 17939717 BLAKE2B 4e6eeb0beb45e88386d994eb219479a2ed68bd1b78af3becb4ef1c89152e21924319b415e194f57c7aa4acf8031ab4ae35725b873f36b6f816aaa33a7bbb86d9 SHA512 16e43b9182d3ebd2394c2c0e0df815ca9e715d55dc7e46de4eafcde49ddf59cccae69a5340e05c8aa2ee6bc2ba46d1cffae8252d1b2a004ffe9d70c62628cf73
EBUILD harfbuzz-2.7.4.ebuild 2767 BLAKE2B a1c4735ac9cbc60c398c2aecd86d6fdf700caf0c47d19cde266b3b471874e9761ad72f30299adc812ecbf9c65eb2c8928ebbe6c5f6d16d985812d0f1779d4dc0 SHA512 66f1d810305e2108de21d7fab29f499bb9992c32adbf88dcc37acc9aceee3c8feaca89ee9be8c85b30b6d358fe0d1c0e63af99cbc2d9847cf345e49e30aa84fc
EBUILD harfbuzz-2.8.0.ebuild 2775 BLAKE2B 09138736a479f0bbf49c50e232bf66cff70dfc78e46166f3be07231002b3a1c3813be2c04af35468f0fab9459f4a7e58dc7b8d70eb56ddd94a01b67d343a0ed3 SHA512 fdc7e80b435ac37008654bac7771a00a0e06878fb9ea217b914f57a954ddd1266cbfdf737cbccbe624596d4a14fa3ff49f13a69644ecee595c670593280d0ac8
+EBUILD harfbuzz-2.8.1.ebuild 2775 BLAKE2B 09138736a479f0bbf49c50e232bf66cff70dfc78e46166f3be07231002b3a1c3813be2c04af35468f0fab9459f4a7e58dc7b8d70eb56ddd94a01b67d343a0ed3 SHA512 fdc7e80b435ac37008654bac7771a00a0e06878fb9ea217b914f57a954ddd1266cbfdf737cbccbe624596d4a14fa3ff49f13a69644ecee595c670593280d0ac8
EBUILD harfbuzz-9999.ebuild 2775 BLAKE2B 09138736a479f0bbf49c50e232bf66cff70dfc78e46166f3be07231002b3a1c3813be2c04af35468f0fab9459f4a7e58dc7b8d70eb56ddd94a01b67d343a0ed3 SHA512 fdc7e80b435ac37008654bac7771a00a0e06878fb9ea217b914f57a954ddd1266cbfdf737cbccbe624596d4a14fa3ff49f13a69644ecee595c670593280d0ac8
MISC metadata.xml 739 BLAKE2B df7724d5cef26b569f76d41c808f99a1ecf44631f0bae96fbc2a9b4f5981061b55c60d69b1b64d966897f223a3d3b5cc4325a3ac780599ed76591fc2044b4988 SHA512 192f7abc191044f267bddb4db7d91f9b78926f4a361802f607bfe4635d7cf63398c289bc52009ad4d3bc6f92684cafd8b40e48f1e0f8cdaef9a4e27f538e7dbd
diff --git a/media-libs/harfbuzz/harfbuzz-2.8.1.ebuild b/media-libs/harfbuzz/harfbuzz-2.8.1.ebuild
new file mode 100644
index 000000000000..dd5ebd99dc19
--- /dev/null
+++ b/media-libs/harfbuzz/harfbuzz-2.8.1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+
+inherit flag-o-matic meson multilib-minimal python-any-r1 xdg-utils
+
+DESCRIPTION="An OpenType text shaping engine"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/HarfBuzz"
+
+if [[ ${PV} = 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/harfbuzz/harfbuzz.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="Old-MIT ISC icu"
+SLOT="0/0.9.18" # 0.9.18 introduced the harfbuzz-icu split; bug #472416
+
+IUSE="+cairo debug doc +glib +graphite icu +introspection static-libs test +truetype"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="introspection? ( glib )"
+
+RDEPEND="
+ cairo? ( x11-libs/cairo:= )
+ glib? ( >=dev-libs/glib-2.38:2[${MULTILIB_USEDEP}] )
+ graphite? ( >=media-gfx/graphite2-1.2.1:=[${MULTILIB_USEDEP}] )
+ icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
+ introspection? ( >=dev-libs/gobject-introspection-1.34:= )
+ truetype? ( >=media-libs/freetype-2.5.0.1:2=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ >=dev-libs/gobject-introspection-common-1.34
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/pkgconfig
+ doc? ( dev-util/gtk-doc )
+ introspection? ( dev-util/glib-utils )
+"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+ if ! use debug ; then
+ append-cppflags -DHB_NDEBUG
+ fi
+}
+
+src_prepare() {
+ default
+
+ xdg_environment_reset
+
+ sed -i \
+ -e 's:tests/macos.tests::' \
+ test/shaping/data/in-house/Makefile.sources \
+ || die # bug 726120
+
+ # bug 618772
+ append-cxxflags -std=c++14
+
+ # bug 762415
+ local pyscript
+ for pyscript in $(find -type f -name "*.py") ; do
+ python_fix_shebang -q "${pyscript}"
+ done
+}
+
+meson_multilib_native_feature() {
+ if multilib_is_native_abi && use "$1" ; then
+ echo "enabled"
+ else
+ echo "disabled"
+ fi
+}
+
+multilib_src_configure() {
+ # harfbuzz-gobject only used for instrospection, bug #535852
+ local emesonargs=(
+ -Dcairo="$(meson_multilib_native_feature cairo)"
+ -Dcoretext="disabled"
+ -Ddocs="$(meson_multilib_native_feature doc)"
+ -Dfontconfig="disabled" #609300
+ -Dintrospection="$(meson_multilib_native_feature introspection)"
+ -Dstatic="$(usex static-libs true false)"
+ $(meson_feature glib)
+ $(meson_feature graphite)
+ $(meson_feature icu)
+ $(meson_feature introspection gobject)
+ $(meson_feature test tests)
+ $(meson_feature truetype freetype)
+ )
+ meson_src_configure
+}
+
+multilib_src_compile() {
+ meson_src_compile
+}
+
+multilib_src_install() {
+ meson_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+}
diff --git a/media-libs/libass/Manifest b/media-libs/libass/Manifest
index 8646c491d887..4b634473967c 100644
--- a/media-libs/libass/Manifest
+++ b/media-libs/libass/Manifest
@@ -1,3 +1,5 @@
DIST libass-0.15.0.tar.xz 367848 BLAKE2B 1ba444d9d718eb364cf0d3ee743404adda36384432dcdfb350db59c1769042b7bbedf1610ecc1b89c2a6c98921710d71ceeac9888371e0774c30f4701746096a SHA512 067ed519e64da7e2e45436bb09e390f1a77d966aeb9420729f36c9725d89491655ead69eb61b43f3220b8ff8f9de3891911b62757466f843ab13ee7149d88459
+DIST libass-0.15.1.tar.xz 369884 BLAKE2B d5b7a4e474aa847ace6ba36085b7c2ef6de3e70fe00e3ea99be0f6c54d807969d90bb08d651357445e2158b01058f4c2995e1bb1d5f895479cdc0fb67fa3495e SHA512 e5a1cca7a72b21de7da2f83fc46db6b35e822593b67fa16563451f4121965e16e825a1665996a0e6022992e6b0365fc2b9b898932dd8086d2ee87b48851ef307
EBUILD libass-0.15.0.ebuild 1182 BLAKE2B b38bf831d8aa357eff1c91603fc84b426b69d49ff04f94b2153927754e76d6df5e6db4e8ecac2497ecd3ac227f15ce1b30aa493483779044c15a142ec62eec04 SHA512 e68d3dcd3d020126d68d9d502d3c6f027825e4b39d4389761404b7474d394f6bf68ff2640ed2f44bef301e5c0cd67b75cbb39b34ae30617911a7b5e7ce162b55
+EBUILD libass-0.15.1-r1.ebuild 1193 BLAKE2B e017730cd29c146cb232a56d7bcc2542eb9ae8b846903f63519513119e349a2fa0ecf1a879626b6729e05a59123bb68932590259e6024ff96d92a9b5ceb353f9 SHA512 429e1cdaef9c5c03fca08d4a866ee2a694fe0aec9b46afa3362611e3e4bb0f0184f9f2f6ebea49fe199b37478124454eca9b25bcf4989165fb933b82ed6c0fe1
MISC metadata.xml 309 BLAKE2B a2a606460c51302aa57936da38c4e15105eeaa9615c700f0df4a5454124a719377e4bf3d47a40ba876791e2d2c8aa92fa042eb9309ad2390963fd6014db5507a SHA512 d8e6dd073dd6334784f165bca935396edf8ce217f5f3495b0ed9d80ae84b784b16ab252a7ed18af23b4ea8ec9190d42b2c75aeb9467ef7c5a387d042e9d7676c
diff --git a/media-libs/libass/libass-0.15.1-r1.ebuild b/media-libs/libass/libass-0.15.1-r1.ebuild
new file mode 100644
index 000000000000..56820c46a621
--- /dev/null
+++ b/media-libs/libass/libass-0.15.1-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib-minimal
+
+DESCRIPTION="Library for SSA/ASS subtitles rendering"
+HOMEPAGE="https://github.com/libass/libass"
+SRC_URI="https://github.com/libass/libass/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="ISC"
+SLOT="0/9" # subslot = libass soname version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="+fontconfig"
+
+BDEPEND="
+ amd64? ( dev-lang/nasm )
+ x86? ( dev-lang/nasm )
+ virtual/pkgconfig"
+RDEPEND="
+ >=dev-libs/fribidi-0.19.5-r1[${MULTILIB_USEDEP}]
+ >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}]
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ >=media-libs/harfbuzz-0.9.12[truetype,${MULTILIB_USEDEP}]
+ fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( Changelog )
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable fontconfig) \
+ --disable-static \
+ --disable-require-system-font-provider
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find "${ED}" -name '*.la' -type f -delete || die
+}
diff --git a/media-libs/libepoxy/Manifest b/media-libs/libepoxy/Manifest
index cc36729f1a55..a9a1c7dcbfd0 100644
--- a/media-libs/libepoxy/Manifest
+++ b/media-libs/libepoxy/Manifest
@@ -1,6 +1,8 @@
DIST libepoxy-1.5.4.tar.gz 337615 BLAKE2B 2793fde6da59079dfadc653c9f0712b0bd2ca1455a8cda7982bce61c35a3629641a30a76db059af635c1fa0076b4e6c56874b199b41d548afbbad8f6e43384e3 SHA512 c8b03f0a39df320fdd163a34c35f9ffbed51bc0174fd89a7dc4b3ab2439413087e1e1a2fe57418520074abd435051cbf03eb2a7bf8897da1712bbbc69cf27cc5
DIST libepoxy-1.5.5.tar.gz 332057 BLAKE2B bf9a1e089c620e710caa7d4b7d5d0ec0cef186c7881b1a61aa22f58d8e023706087c766ad970ea8950752d87d2f32d12e2ded3137502f35991afb5b4fb3648cd SHA512 9056840d887f06c6422f61e65ea02511ed37b866a234d49bf78dc5f2f46e8dd9f029405387da14dced639e6a5740b5c56ab6d88ca23ea3270fc6db6a570b0c45
+DIST libepoxy-1.5.7.tar.gz 331868 BLAKE2B 95bb7637f4254aaff051ca8c896e0aa80cfbeca6e12ae87515e97ebeb2f40a41c60c3a0a7a106d8a375eb3d5a77e363442afb4644725e1d8491a335e70998c51 SHA512 7f7cda8eeb2d93d56d5d8ad9f76e186285d024b6f9b211db89c18d5bdfd1e85e7ec08c421913877a153edc8c25ecbccc205303d57d19bb8f98f4c5f93ed492bb
EBUILD libepoxy-1.5.4.ebuild 1141 BLAKE2B 3ab8f35d56300ea3056e3d7f97b9cf5fe95a22a7059710f87800de978b11db4448d17b61e51f5e9e86ad750005d7d113a2dde5acfb02d82d98dcd4e163315f68 SHA512 d1467370eea40684490e64712f11451ce6bfd680cd23e13304e4214825670e2e9054952f31db9c094841e35ff1eb561146850be1747e48c4e414af6e62d1ee73
EBUILD libepoxy-1.5.5.ebuild 1156 BLAKE2B 2bd43d9cc3e7f034d71776be9e495df858d65ada04936c042c9d228d28cdb03a56245005fdd1e6b3360c9dd21e78e6497cd5b4e97d3ad5737247bfc2daff4ffd SHA512 329b484e9f948a65845ee642c986ce5a2601e3344145a479c67e386c64dab8464dbc8efe4c20815fbd814fc8e92bb49cd5183506c8c12a10318aefea33b5271f
+EBUILD libepoxy-1.5.7.ebuild 1163 BLAKE2B a8f16a9e1d5e774dcfd3471a8a306e073f3cb80eb30aa6e39e2e8d6d05e1c4265f84a65200648d289fbef74ccf64895c8cdadbadc1a12da556ad46915c08d37d SHA512 77284e95438aa57ea62d683de5728e4833e022ce65e50aa4e1004444e9409e68f68cb51538100c25537bc7528a856ecfa53aaa1ec67160f06c577ba8843db029
EBUILD libepoxy-9999.ebuild 1163 BLAKE2B 78abc721431b4c827905c43beb28d28977b4c934bd2725469b758ec2d5a7f56ad9bb7f1f5c769695a58ad0a7f57d9ecc2fefaca39be03f5e6aa8ec8061d39a67 SHA512 9f5bfce5549c057eb5688b593c16d410d8ee2708f597fedfb0d16aa42e6741a3a9d60c4f4386a51a7acb1c090965678198a2add521bcd6a7b8e336227893aaa3
MISC metadata.xml 375 BLAKE2B 09993b726e54558d32b0dfb2a221bdd8928b85f55bdaaeb2faf30a0711ed58b05022a9fb669ec43806aff223860e47db53226a0f8f34d7b35edf0a842ab45923 SHA512 fec0ce8c99534083afc197c156a7fbaf2e83b2e22887ef134984ea7a4e6226f2714db399a118cd96f22b20012e7b7572156fc13aa72516e2557880c716140ad6
diff --git a/media-libs/libepoxy/libepoxy-1.5.7.ebuild b/media-libs/libepoxy/libepoxy-1.5.7.ebuild
new file mode 100644
index 000000000000..ec9f392345c3
--- /dev/null
+++ b/media-libs/libepoxy/libepoxy-1.5.7.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_REQ_USE='xml(+)'
+inherit meson multilib-minimal python-any-r1 virtualx
+
+if [[ ${PV} = 9999* ]]; then
+ EGIT_REPO_URI="https://github.com/anholt/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/anholt/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="Library for handling OpenGL function pointer management"
+HOMEPAGE="https://github.com/anholt/libepoxy"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="+egl test +X"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ egl? ( media-libs/mesa[egl,${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ X? ( x11-libs/libX11[${MULTILIB_USEDEP}] )"
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Degl=$(usex egl)
+ -Dglx=$(usex X)
+ $(meson_use X x11)
+ $(meson_use test tests)
+ )
+ meson_src_configure
+}
+
+multilib_src_compile() {
+ meson_src_compile
+}
+
+multilib_src_test() {
+ virtx meson_src_test
+}
+
+multilib_src_install() {
+ meson_src_install
+}
diff --git a/media-libs/libglvnd/Manifest b/media-libs/libglvnd/Manifest
index edea1955521a..1af9a854b5f7 100644
--- a/media-libs/libglvnd/Manifest
+++ b/media-libs/libglvnd/Manifest
@@ -1,4 +1,6 @@
DIST libglvnd-1.3.2.tar.bz2 715212 BLAKE2B 4f8d32d630a94dbce3d87926a25941fb915f9b1bb8ba167ee7392e32e55b26c5bb80db4000dd11188449f662b810f0c986b6ecf7f4c5ebf05d7a895b0fdb3c82 SHA512 4fea59150a7dd2c710ded26270e74ae73af00cc127d7141fe70e31263fb492c5c43eabc8ab27d5a568d12394a95023c22f1b60968f4c403dcf6ad6202bec508c
+DIST libglvnd-1.3.3.tar.bz2 715179 BLAKE2B 781550cbda489dca31596115c78edd1d4f1fe66062218c83ccf6cb34707501fce839b649c2b0aee3621c283397acca8fb40ad16c0388551ce7caa7fd79b7dbf5 SHA512 7da9e12c010a8f109cd24ca4c2ffc846dd7d23f82157e1e39b8ae69575fabcc9592c0b639b23d2112fe2026b679f1536f1b705a5c948fefea105418803e1b629
EBUILD libglvnd-1.3.2-r2.ebuild 1528 BLAKE2B 592e19b30551860fbfb735e2e4b6eed4d293ffb28b68c2653ecaf16722a396971203e6a3b52577cf524e599d9f037852d9434f4038bbc0e43ce40a0db5944de6 SHA512 460609a9aba15122b3a05cc5ab7fbfda83eaa731188f58d51dda5b51910a332964a286d840a12dc6c86e2c397a169d095bfc5b82282b21d34cbaa1972cf09e27
-EBUILD libglvnd-9999.ebuild 1535 BLAKE2B ba68151edcded5eedc994b1c0e140929de294515a37de46f991bec806c78a751fef009d05b4069cbf5738ae55d2159d2194fb5f522ea554b998cba9d667dac0f SHA512 a48b8cf5d458541ce8b75947742471fd6e3c679d34e9c5505b2570c4610bf6f421c18ce75c0663545e15329a3abd7394357c5a793e7275fedc059f30f1422747
+EBUILD libglvnd-1.3.3.ebuild 1535 BLAKE2B 33d8925075c50b240597fca54aa6a804bc6c4e79a0afae8b263ee9c222e52973adf51a944b4463071395062a3a46bcf5c010eec0a7b990f6fb8dc3a789bf8fbe SHA512 b977631fe3c0317c6efbc72f32fd0dee4405c14b05594acee42043d3b3675d08eea7c6c4698b29efae392f44c31ef2b509ca83720aa6e72605d8f7e2bd0089c1
+EBUILD libglvnd-9999.ebuild 1535 BLAKE2B 33d8925075c50b240597fca54aa6a804bc6c4e79a0afae8b263ee9c222e52973adf51a944b4463071395062a3a46bcf5c010eec0a7b990f6fb8dc3a789bf8fbe SHA512 b977631fe3c0317c6efbc72f32fd0dee4405c14b05594acee42043d3b3675d08eea7c6c4698b29efae392f44c31ef2b509ca83720aa6e72605d8f7e2bd0089c1
MISC metadata.xml 314 BLAKE2B 34c95a3e321c3059bca39c7beb5b7b15e8085b54affb267947fb3676018fa183040a157716e979c5e0381acdea6e738294b37841e75da308c3632fb3587dec33 SHA512 fa12f7fa880b0721baf2eb40b9fd8a68e51c143dd8ede7a199c5afcd5a208f84c51a80fc1f4bc68b266338bac8bf4137b2443d88567150f2c54b2f11913df89c
diff --git a/media-libs/libglvnd/libglvnd-1.3.3.ebuild b/media-libs/libglvnd/libglvnd-1.3.3.ebuild
new file mode 100644
index 000000000000..ffdb47646a23
--- /dev/null
+++ b/media-libs/libglvnd/libglvnd-1.3.3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2018-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_REPO_URI="https://gitlab.freedesktop.org/glvnd/libglvnd.git"
+
+if [[ ${PV} = 9999* ]]; then
+ GIT_ECLASS="git-r3"
+fi
+
+PYTHON_COMPAT=( python3_{7..9} )
+VIRTUALX_REQUIRED=manual
+
+inherit ${GIT_ECLASS} meson multilib-minimal python-any-r1 virtualx
+
+DESCRIPTION="The GL Vendor-Neutral Dispatch library"
+HOMEPAGE="https://gitlab.freedesktop.org/glvnd/libglvnd"
+if [[ ${PV} = 9999* ]]; then
+ SRC_URI=""
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://gitlab.freedesktop.org/glvnd/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+ S=${WORKDIR}/${PN}-v${PV}
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test X"
+RESTRICT="!test? ( test )"
+
+BDEPEND="${PYTHON_DEPS}
+ test? ( X? ( ${VIRTUALX_DEPEND} ) )"
+RDEPEND="
+ !media-libs/mesa[-libglvnd(+)]
+ X? (
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ )"
+DEPEND="${RDEPEND}
+ X? ( x11-base/xorg-proto )"
+
+src_prepare() {
+ default
+ sed -i -e "/^PLATFORM_SYMBOLS/a \ '__gentoo_check_ldflags__'," \
+ bin/symbols-check.py || die
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_feature X x11)
+ $(meson_feature X glx)
+ )
+ use elibc_musl && emesonargs+=( -Dtls=disabled )
+
+ meson_src_configure
+}
+
+multilib_src_compile() {
+ meson_src_compile
+}
+
+multilib_src_test() {
+ if use X; then
+ virtx meson_src_test
+ else
+ meson_src_test
+ fi
+}
+
+multilib_src_install() {
+ meson_src_install
+}
diff --git a/media-libs/libglvnd/libglvnd-9999.ebuild b/media-libs/libglvnd/libglvnd-9999.ebuild
index b11f59ab1c2c..ffdb47646a23 100644
--- a/media-libs/libglvnd/libglvnd-9999.ebuild
+++ b/media-libs/libglvnd/libglvnd-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2018-2020 Gentoo Authors
+# Copyright 2018-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
diff --git a/media-libs/libldac/Manifest b/media-libs/libldac/Manifest
index 0685cbadfb77..ed076a3c1bf8 100644
--- a/media-libs/libldac/Manifest
+++ b/media-libs/libldac/Manifest
@@ -1,5 +1,3 @@
DIST ldacBT-2.0.2.3.tar.gz 75708 BLAKE2B 9f9ec1aa8a9603927067cd01058745db615a89652d16e870d9eb0a4db270a4076b7bb70ba091948249969087e5b26b86e22656314e3d26e43311fae982472347 SHA512 0e42723a1e7d748b28b13d73823fd5378a64100d5e27ae90cf3214494f3e199c526e219efd1329b2ec2b3195e1a6b3c98c8210ab7e4e6b98077199ef0f64c02e
-DIST libldac-2.0.2-1.1.tar.gz 282323 BLAKE2B f8e4a05130b47e4c46070c3a9f0a085451bf480e3d90579342f66edeb77df665c89bf1c81d65d5366e704c5396335de8263ebd6ac1e1d1350714acb3775511e9 SHA512 f1aedb3edc0421b7a9d49a9d2e347d8ab19d54e37f0e77b3673f92413eaccdbbacb678e2e89a23016b22c768156148a82b7fc996bebc3a4cd4451ffb606dba3e
-EBUILD libldac-2.0.2-r1.ebuild 747 BLAKE2B e6cb9eb76663000abb0ea602b6cfad1b257a211f89685048a65fbb771001b106c294092a09eebbdf766173ebd3f44e4954366f9b4d38574ee0b69569342158a4 SHA512 034a41b665cfb4d3b6c6b7a5e7546696ccfebeebda6280e470e392d4f58d098d4f263ecfaaf0687b4bb3cbf967fffcac7ba3213b8ade8ec1a5f517493245f0e4
-EBUILD libldac-2.0.2.3.ebuild 610 BLAKE2B 11becbeb1b6b48316c6af6eebf98970ba8109d14d300bc070d5e1ff47386b732fd9a70e95de1f5471bf5eb5e4eb0b5affcaf8b98414dc93326aff924182d011c SHA512 b93edd1a69b3ee58ce159fe57011b9618260c10f9380abc8d22750c112d91997a0991ff7617740f7f992e636b27deddbaeaaa4d3b17af799eefa42855c8f5c15
+EBUILD libldac-2.0.2.3.ebuild 608 BLAKE2B 69235a995ed37a3ff78a876a81dec9dc2ec94b13d11659ec73a787ca0b07bcce72e45a1826a4d2f59e0b21ae2229a8c3f42120cb8e21e3c457ca508a7c7cbe59 SHA512 9157bf3b196a6995fd79bd59dc94a85b803ce1df3344e2db87dde983674f982f6b6630356a67ddeca7b967fed8f2950d2e4ca70a8a028974ba13cb9c8d3ddf05
MISC metadata.xml 294 BLAKE2B b538426aee9fd5b62c00e4ff45c2ad8f1debc01fd47c73888f00bc8af07565f0d64adcaab29836efa44dc78ee286bdca31302230fb3de99e48bfcfb91be3ae8d SHA512 a0446763cd8f9d5650a05beea3fc24712565c60585b70d2f1b704bc606f9fbb62a8905da2bd392b45c0b6f3855c23d4eb6139a58c005c705aecd64212a7fd47d
diff --git a/media-libs/libldac/libldac-2.0.2-r1.ebuild b/media-libs/libldac/libldac-2.0.2-r1.ebuild
deleted file mode 100644
index 572ece143013..000000000000
--- a/media-libs/libldac/libldac-2.0.2-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake-utils
-
-PACKAGING_VERSION="1.1"
-
-DESCRIPTION="LDAC codec library from AOSP"
-HOMEPAGE="https://android.googlesource.com/platform/external/libldac/"
-SRC_URI="https://github.com/EHfive/ldacBT/releases/download/${PACKAGING_VERSION}-ldac.${PV}/ldacBT.tar.gz -> ${P}-${PACKAGING_VERSION}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND=""
-
-S="${WORKDIR}/ldacBT"
-
-src_prepare() {
- eapply_user
- mycmakeargs=( -DLDAC_SOFT_FLOAT=OFF -DINSTALL_LIBDIR=/usr/$(get_libdir) )
- cmake-utils_src_prepare
-}
diff --git a/media-libs/libldac/libldac-2.0.2.3.ebuild b/media-libs/libldac/libldac-2.0.2.3.ebuild
index 2be002228f12..06be1dbec91a 100644
--- a/media-libs/libldac/libldac-2.0.2.3.ebuild
+++ b/media-libs/libldac/libldac-2.0.2.3.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/EHfive/ldacBT/releases/download/v${PV}/ldacBT-${PV}.
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
S="${WORKDIR}/ldacBT"
diff --git a/media-libs/libmatroska/Manifest b/media-libs/libmatroska/Manifest
index 296f89fb391f..0388ef1e755f 100644
--- a/media-libs/libmatroska/Manifest
+++ b/media-libs/libmatroska/Manifest
@@ -1,5 +1,5 @@
DIST libmatroska-1.6.2.tar.xz 65460 BLAKE2B f746f0dd519b8e3b4f98057d3f83e23a79595ab95e71f0c45c1128b2cbe093d5955a38d9d0565be9336f3d53279e20bddf0a2b4a54378c78faf4ee8f94586686 SHA512 c0b2b475f01e01b064348e96a4cd25f594e93b21ab6f66236d6872d1242b6076d501c155a19dedd642ded8338c0a71be09450fc086e77802099413c8849abab1
DIST libmatroska-1.6.3.tar.xz 65612 BLAKE2B b72553ba32358b996b98fb1b4a3d05b4026c95406c31312d43cf7ad875192683de05d8813e5f0bed04502543c80b83524b02c7caeb860f79860760d926b92754 SHA512 271557c4f8836411782991c069a16cd49d7f9b6f209d1f96f6694f0e8bdfdcda3bbf76512c328555252a8c3e45c5adfcfab1e738304bb2ea85786a6f45af3f41
EBUILD libmatroska-1.6.2.ebuild 629 BLAKE2B ac32392e700a32fad8bf0c12f43a6a784d77590370a94286b76dfbab95636c2db91d3919eda79c5a3f862d3f0c9a39518ec80d927d1b4d83b488c31b7ed42788 SHA512 250be02d4b44d04d462f336cc5f0850ac3d7464ea89ea3c4f413d44ea8a0458f7eedd54dd88dd33616094397a59d4243f90badabdf2a5220029226031a0c602a
-EBUILD libmatroska-1.6.3.ebuild 636 BLAKE2B 016f3cd183ef4909091ea135ac81b9321c2d2a4d8a0115e85319e888267ff04df95e8436071f3db322febd73784377e2925999573f9251e2fccb98f28641f33e SHA512 e92ce03c22b8738110096736da63b8829d2cb56c124565635eabe9d69a3aeb81bc2bd06fe6fe48912776bd7fd5073f657f470cce7d9738bfdbd3b669d89c07e8
+EBUILD libmatroska-1.6.3.ebuild 628 BLAKE2B 22ddfa9eccc8c67b03b3835a731c00f507429714b62c99fa45258bd07fa176e17c1205f5dc944f6b6c792352fdb643d6ecb495a39e848b96e583ffc7fd58ea6c SHA512 a19640eb35d5b01519722a70d946ca728a16200f7de9838b3099c7046b6ba01145086c270aa3ea894f0eccd8feb2a3b2594cb3389a7cca90fec377821e477b64
MISC metadata.xml 320 BLAKE2B edd6b2e35a7833d3510edec80f3771a319cbb257cbb203e0f71f33636431496c620cb3307b2bebb44360d6932a7e4376b0d134f3f42d26fc9271423c2eed11f6 SHA512 5c1dad06e1fef24b1ec68fb6b12d0d17b4bd05f22b1953f713c25a513340cb08540eebaec32fbe7c6607ba2142a057b8e6e5743a929b7368665d91bc014f35a9
diff --git a/media-libs/libmatroska/libmatroska-1.6.3.ebuild b/media-libs/libmatroska/libmatroska-1.6.3.ebuild
index 8db09a789117..bc20ca165771 100644
--- a/media-libs/libmatroska/libmatroska-1.6.3.ebuild
+++ b/media-libs/libmatroska/libmatroska-1.6.3.ebuild
@@ -12,9 +12,8 @@ SRC_URI="https://dl.matroska.org/downloads/${PN}/${P}.tar.xz"
LICENSE="LGPL-2.1"
SLOT="0/7" # subslot = soname major version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-linux"
-IUSE=""
-RDEPEND=">=dev-libs/libebml-1.4.0:="
+RDEPEND=">=dev-libs/libebml-1.4.2:="
DEPEND="${RDEPEND}"
src_configure() {
diff --git a/media-libs/libopenaptx/Manifest b/media-libs/libopenaptx/Manifest
index 173b7bebbbbd..e178c6832ae7 100644
--- a/media-libs/libopenaptx/Manifest
+++ b/media-libs/libopenaptx/Manifest
@@ -1,4 +1,6 @@
DIST libopenaptx-0.2.0.tar.gz 27797 BLAKE2B b178a9aaf78796c9219d9e7066ff985ce9f5dd86a6926ae22e373f2822090ad313efe04d5cf607940f1042bd27ddf5484d7e8298dfff91a8ae5596cec7ad5fa9 SHA512 d57e5084b398eec2ad49c9893baa496651c139abfb95692c834a4691bc4bb951d0b1afdd499a8b67c84b873407b584965d3a045d8ef3d9e62b3ccf45de22809a
+DIST libopenaptx-0.2.1.tar.gz 31575 BLAKE2B 531a1b4e8f4a711bf1b36dfea2424b23821dd4f0b50cc367e1298fc7a41f32ec494fdb25907173d1e2685bd0af74d3ebe5a7a3f221f2e57e92bd6d6e2b8b80c8 SHA512 7c7f515585ed41cd276cd3141037ce21e3ebdb713dc932bcdb33320d9910c734bc81e581e2c09b3399b3516c789e5da7128fdab5ab6b5e4f42a86b6ac6d3f28c
EBUILD libopenaptx-0.2.0.ebuild 1051 BLAKE2B d59142413d5366e0f3b324499e49ba72e39764c746fb7b1add12a2e10b5dbe5864a829f359e8a397bc9400e235b9e4378b5f29c95e7d8e8601af7edcb73495e8 SHA512 dbcfbe7e5ac7ec5681a75012ea7a38e0049f3f2b90a425c1f0aa9506ab378fc6a3101bff86616e7e042c74f79fa21762f2fee0ee075c7e98db8fd72d5847882e
+EBUILD libopenaptx-0.2.1.ebuild 1005 BLAKE2B cd47a46e7e6ca06e1007e2f10a0da8000bddfc0eb4b8d6242816e387dd88d6c4242875fc9c1546753651fca17c495b1485f59ff1ba7541046584531f3e1944b8 SHA512 0aeac424ce3c78db1c5d8853c35b39fdd2748cef984db7c5e20ca5dd298506a508712e2b09274ba6e23fdb5f604305dc84d30b06d22fc1ac6f951205697a5fc8
EBUILD libopenaptx-9999.ebuild 1022 BLAKE2B ed3d85400142cf3d3fd9de1bf37e2cda897a952f07d2168252c575b0701d5a9003846f4b5605690512bf42f76c69b1f25c9e3a8ca2f0e52943dead7930504179 SHA512 4e9477a48a0cf0d4daea89bef6819b23eefbd8e619cf0973554e56306a450090a3ee7d723d23cb6be7b02c901136cff38c6be8f72844a01c76104b86f34992e9
MISC metadata.xml 475 BLAKE2B ce3ccc5f113c6178230b372c55e9992731ff55477bdde2efcca199b73d7b2ec66419dcba89c3f368ff9b7ef54011bd92c6cecaf9b3cd64b5a6ab8ea2e0b0d1ec SHA512 7bde88afdf7a137ea5ec1b491dda467eec36d2897f0bd009ca22066614db64531fe5b343cdb426b1e80ef6cf8011db1c43a0a525b9b302496e04cd7d2e97dbc0
diff --git a/media-libs/libopenaptx/libopenaptx-0.2.1.ebuild b/media-libs/libopenaptx/libopenaptx-0.2.1.ebuild
new file mode 100644
index 000000000000..534df52cba0c
--- /dev/null
+++ b/media-libs/libopenaptx/libopenaptx-0.2.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Reverse-engineered aptX and aptX HD library"
+HOMEPAGE="https://github.com/pali/libopenaptx"
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/pali/${PN}"
+else
+ SRC_URI="https://github.com/pali/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+
+IUSE="cpu_flags_x86_avx2"
+
+src_compile() {
+ tc-export CC AR
+
+ use cpu_flags_x86_avx2 && append-cflags "-mavx2"
+
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ LIBDIR=$(get_libdir) \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ ARFLAGS="${ARFLAGS} -rcs" \
+ all
+}
+
+src_install() {
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ DESTDIR="${D}" \
+ LIBDIR="$(get_libdir)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ ARFLAGS="${ARFLAGS} -rcs" \
+ install
+
+ find "${ED}" -name '*.a' -delete || die
+}
diff --git a/media-libs/libsdl2/Manifest b/media-libs/libsdl2/Manifest
index 1d599af52c70..d740c4cfd27c 100644
--- a/media-libs/libsdl2/Manifest
+++ b/media-libs/libsdl2/Manifest
@@ -5,6 +5,6 @@ AUX libsdl2-2.0.14-static-libs.patch 1812 BLAKE2B 47f2e3f2d9c5d7c86d2cd046c0d401
AUX libsdl2-2.0.14-vulkan.patch 554 BLAKE2B 654415d20fc1782ee8d3a979355dcb743537cad60bebf4edf5299feec821cacbd75c45247820d1c41cb4c706b3bbf58fd2e33ed38b1150a50b0be0aab9d3f536 SHA512 d379da36a27c82c8e178f05ba572022119c012b304ffa672529d652c41d00ee7ad00ce715892306c7e6e914a3071d2879c67f37198139d5a786ce4da442309c0
DIST SDL2-2.0.12.tar.gz 5720162 BLAKE2B 1e50d2d3060c38faadfc6610e3af7b0e54ce880101f8ca441b84431fb5f683cc6353402025be2eecbb8b9f85bb3982c9aea36e96067a97d079d39f9cd44964a0 SHA512 3f1f04af0f3d9dda9c84a2e9274ae8d83ea0da3fc367970a820036cc4dc1dbf990cfc37e4975ae05f0b45a4ffa739c6c19e470c00bf3f2bce9b8b63717b8b317
DIST SDL2-2.0.14.tar.gz 6089974 BLAKE2B 5982c66430f8ae62094dbc216781efafd3a07c50efd16bc8307d5048227011d4710d5af1b15be01a55fa6f3ae41eedf9c2df67bafd98042e3b2978a05e7ffd27 SHA512 ebc482585bd565bf3003fbcedd91058b2183e333b9ea566d2f386da0298ff970645d9d25c1aa4459c7c96e9ea839fd1c5f2da0242a56892865b2e456cdd027ee
-EBUILD libsdl2-2.0.12-r2.ebuild 5895 BLAKE2B 4ef95d547e288bd1ae52a35aaf20e2c679655c51e7c749327ce089644aa02c799bd8461033e918c327bf455dd5e7f97448a3ccf1c3fb327aeadea6b5139eafbe SHA512 54e4c662d6ced0f013e87310639154b9d1900a9ecd3bdfda48cfa54fbc5e0d793fee512e393a37d13a6e7f05ec621613b7c4f8b551d21713b30d8c4d8cd00091
-EBUILD libsdl2-2.0.14-r1.ebuild 6061 BLAKE2B 14e534a1cb0f97092c0a71c715e5c69c8d2d0069a275dac254d2c52d9f2b7e39d944447e6363a2675133edff7fe9e34d04f2084736a30f0e847cac897f482ac9 SHA512 333006640172dd85d3f4b08b708d265b33b179d184c8978b6355f2b09399f247579fe62089dbb2e79559fc7826f3a375d919fa19942cd14d94e368892170f2d0
+EBUILD libsdl2-2.0.12-r2.ebuild 5880 BLAKE2B b762d683d18fca57041ef5abdc328258bd8ae7f9bb79f1b3baae9aa40337acc873a71ba1c558754bb08862b5e39bcce37d68625fd770965bac3cdcc5f65a249b SHA512 4c5ce2040cbedede83c4103aaa6a4fea4c4d26d654b0ae3da1ea8d704d64e3e7b9f7f7cf89b208d8900c61a29ba85ad2f5948ad2905ba499ba8017dd2574c8dd
+EBUILD libsdl2-2.0.14-r1.ebuild 6044 BLAKE2B 6f1d14633d639be3b4d22f106d565f1a8f4f1b0b89d9b43eaa9a414c3260957befc66c4b784428c078e960f6456d5a2937becddc0968b7591c840819d88f3e4d SHA512 91d0b11e46775ce431376d02cc7620a34eeb4923f23ef99aad4b4022304c3df5eb9ac73428a7754fb9ccd715b2ae4f5c6739e862c1a13dbe433ad8ec88ee2417
MISC metadata.xml 1805 BLAKE2B 16d4961cf6d0c9997fe706dd5deb51b98f153135cb4f0bedbc29e842d485ba2f4493003830385957b7ac92fd9f6d31bcf4319d800a7f2bd46a9a1772b86f3e5a SHA512 37e976d6a469c6e17e3efb178a189903c3ac2baf99d0e3aa7fb80bfc6d297e52c910ae6361e119fe1173d6d8a9d2aef47172bb4a1185ef4f99f36c75d1f8c19f
diff --git a/media-libs/libsdl2/libsdl2-2.0.12-r2.ebuild b/media-libs/libsdl2/libsdl2-2.0.12-r2.ebuild
index 04fbc2536369..a2ca8ec47516 100644
--- a/media-libs/libsdl2/libsdl2-2.0.12-r2.ebuild
+++ b/media-libs/libsdl2/libsdl2-2.0.12-r2.ebuild
@@ -2,7 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+
+inherit autotools flag-o-matic multilib-minimal
MY_P="SDL2-${PV}"
DESCRIPTION="Simple Direct Media Layer"
diff --git a/media-libs/libsdl2/libsdl2-2.0.14-r1.ebuild b/media-libs/libsdl2/libsdl2-2.0.14-r1.ebuild
index a7e5d16fe307..0d805f40676d 100644
--- a/media-libs/libsdl2/libsdl2-2.0.14-r1.ebuild
+++ b/media-libs/libsdl2/libsdl2-2.0.14-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+inherit autotools flag-o-matic multilib-minimal
MY_P="SDL2-${PV}"
DESCRIPTION="Simple Direct Media Layer"
@@ -12,7 +12,7 @@ SRC_URI="https://www.libsdl.org/release/${MY_P}.tar.gz"
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ppc ~ppc64 sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ~ppc64 sparc ~x86"
IUSE="alsa aqua cpu_flags_ppc_altivec cpu_flags_x86_3dnow cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 custom-cflags dbus fcitx4 gles2 haptic ibus jack +joystick kms libsamplerate nas opengl oss pulseaudio +sound static-libs +threads udev +video video_cards_vc4 vulkan wayland X xinerama xscreensaver"
REQUIRED_USE="
diff --git a/media-libs/libshout/Manifest b/media-libs/libshout/Manifest
index a57aadb3077a..00086fe7bf8a 100644
--- a/media-libs/libshout/Manifest
+++ b/media-libs/libshout/Manifest
@@ -1,3 +1,3 @@
DIST libshout-2.4.5.tar.gz 543991 BLAKE2B a3ceabd150413e9d1cee2118fe9576959bfa05d86e261b2574969a9a665aba3da4ac1c39db2b27d033fe587232a69a569d80362f856bba667277b5454dd170ca SHA512 290844185da16961f03434d3e341573dd6cb0139e5fa81902903021b641382d2629302d7c356bc591b35656754e07f4e44a8d9e782e092b17a051b9ae8f54341
-EBUILD libshout-2.4.5.ebuild 1232 BLAKE2B 8cc0aaf280320e3e36ac89892a273d801999257f8f983666cff99920d297190ae4a49d2ad1910a902eb1abfb627737946ada9e808700144280f60c9fe0919d10 SHA512 0978109abab884d5a6134b72b02ad31836fd6c819d42d968f710ee369d0639837e98ae1d114e31fad957ce9bbea3be89da8f18700b85ddc3defa6725260602a9
+EBUILD libshout-2.4.5.ebuild 1172 BLAKE2B 260842238e54fca2b41f9dddb67c52f1133e7b6fa46e4ff146e9954c8220532446885a7d94a60a4fd144022f19dd405610734fe090889d1247744c4f22f9ac56 SHA512 20b3ba00c1de22f425aaea0a70d86c47573c40ca17cc748b337f5b1a4b02674e35e9720f000e203dca6d37ab58087621f8192f0f07c2d3e13d91b49ca5e0c423
MISC metadata.xml 249 BLAKE2B f7f8f071ecba933f3d39b0b60983281d59299b92de9375a60ab4109d7202800cb790bce0c426227f04b3e2624b1adb20876145741355abc6a4938b8b9698d144 SHA512 9a100fb26586365eda99724330a03a512f4d0be18d39c3a195ba02c2fc841edeee99d22512acf5a058a3b978d3a74f4d963a5aff9aa343b6cb4086cdfefe6343
diff --git a/media-libs/libshout/libshout-2.4.5.ebuild b/media-libs/libshout/libshout-2.4.5.ebuild
index 847b1829fedb..d3776d970c7c 100644
--- a/media-libs/libshout/libshout-2.4.5.ebuild
+++ b/media-libs/libshout/libshout-2.4.5.ebuild
@@ -12,13 +12,12 @@ SRC_URI="http://downloads.xiph.org/releases/${PN}/${P}.tar.gz"
LICENSE="LGPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="libressl speex static-libs theora"
+IUSE="speex static-libs theora"
RDEPEND="
>=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
>=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
speex? ( media-libs/speex[${MULTILIB_USEDEP}] )
theora? ( media-libs/libtheora[${MULTILIB_USEDEP}] )
"
diff --git a/media-libs/libtgvoip/Manifest b/media-libs/libtgvoip/Manifest
index fffe65e91039..5d48ce42a842 100644
--- a/media-libs/libtgvoip/Manifest
+++ b/media-libs/libtgvoip/Manifest
@@ -1,3 +1,4 @@
DIST libtgvoip-2.4.4_p20210302.tar.gz 1097895 BLAKE2B 36551fb915ee5b5895d8ea68196be5a910739e46886c879bd9f932fa2294a94c22ec3215a94d9bad05a5d24519291676a686c594b74f513f594eb063c83de012 SHA512 d8e27be18e521f367a30c63665300496dbd8fe250261fddf5576325afc27d855e280ee31e46d5fcc2294d79a91c4003732e22f2bfb6db0472e357508b5053d29
-EBUILD libtgvoip-2.4.4_p20210302.ebuild 1509 BLAKE2B ac52b621918606c2596e89073fe0a2fb72f01fcb1b57d38089bae921e2a2f42dbb3cdea3f382013fd0ffad067c78a281af57365931f678a19d69a6b1e9e93e5a SHA512 35ff95953390016469e704c3b22ffd5ee94d31f00eb72340e49bb2db3507b777ca81fbe3ec022d08e695e14ad8c74460c55f8b4962373aa97682d7e6e3d6fa53
+EBUILD libtgvoip-2.4.4_p20210302-r1.ebuild 1437 BLAKE2B 806ce3ddd3a3bf23548f93caec64b32371d4780ca044dfb92838c40d25524bca5ac90bb74c75ded1cfd98533959f5e9f70e1ed469668ec1edc3c8ac51c2cb185 SHA512 32384f8f0149c754c773bb74a5a7c6ad9cd348729981f48c2c55e545d484a33bc978c0df152ea12c0ba4d4da1ba90f661f2a8970866d037a80ef7cf23d90e84b
+EBUILD libtgvoip-2.4.4_p20210302.ebuild 1449 BLAKE2B 856046ffa58f3f0064b381b35da7ef356641d0b8212737d9939d2c8e4c3490b85b0297f01dcc475a5e14bec2253590383ec8205686ffcb1294ae7c5a9c96f346 SHA512 594e3ca3432dbd336b03a9c630be73d5e8c7a9256927f8c0cccfb4a148d1f5ab88fa500c9a221576dc4b7e427086e7cf8c94f725f416baf38d8756c482395c3e
MISC metadata.xml 542 BLAKE2B ddf38189857cb4216e85e9a958daa176e8d030b907735f9d57e25ce5b71d0a6179300bb9064960e4a82532dedf329fc85ee98025faf0494b17b74a00fcb8d056 SHA512 e455e7c38f6171064d6c3923fa04373bd6e902e40d6e2c63f7a1ca8adc8245b93ef5b67051ee3fd3986a3efd0868c3c631b7ae36613f7978eba7441322711c72
diff --git a/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302-r1.ebuild b/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302-r1.ebuild
new file mode 100644
index 000000000000..61e1244e5dd3
--- /dev/null
+++ b/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic autotools
+
+LIBTGVOIP_COMMIT="0c0a6e476df58ee441490da72ca7a32f83e68dbd"
+
+DESCRIPTION="VoIP library for Telegram clients"
+HOMEPAGE="https://github.com/telegramdesktop/libtgvoip"
+SRC_URI="https://github.com/telegramdesktop/libtgvoip/archive/${LIBTGVOIP_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="+dsp +alsa pulseaudio"
+
+DEPEND="
+ media-libs/opus:=
+ alsa? ( media-libs/alsa-lib )
+ dsp? ( media-libs/tg_owt )
+ pulseaudio? ( media-sound/pulseaudio )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+REQUIRED_USE="
+ || ( alsa pulseaudio )
+"
+
+S="${WORKDIR}/${PN}-${LIBTGVOIP_COMMIT}"
+
+src_prepare() {
+ # Will be controlled by us
+ sed -i -e '/^CFLAGS += -DTGVOIP_NO_DSP/d' Makefile.am || die
+ default
+ # https://bugs.gentoo.org/717210
+ echo 'libtgvoip_la_LIBTOOLFLAGS = --tag=CXX' >> Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ --disable-static
+ --disable-dsp # WebRTC is linked from tg_owt
+ $(use_with alsa)
+ $(use_with pulseaudio pulse)
+ )
+ if use dsp; then
+ append-cppflags '-I/usr/include/tg_owt'
+ append-cppflags '-I/usr/include/tg_owt/third_party/abseil-cpp'
+ append-libs '-ltg_owt'
+ else
+ append-cppflags '-DTGVOIP_NO_DSP'
+ fi
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302.ebuild b/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302.ebuild
index b3f91097b27a..05168f911606 100644
--- a/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302.ebuild
+++ b/media-libs/libtgvoip/libtgvoip-2.4.4_p20210302.ebuild
@@ -14,11 +14,10 @@ SRC_URI="https://github.com/telegramdesktop/libtgvoip/archive/${LIBTGVOIP_COMMIT
LICENSE="Unlicense"
SLOT="0"
KEYWORDS="amd64 ~ppc64"
-IUSE="+dsp libressl pulseaudio"
+IUSE="+dsp pulseaudio"
DEPEND="
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
media-libs/opus:=
media-libs/alsa-lib
!pulseaudio? ( media-sound/apulse[sdk] )
diff --git a/media-libs/libuninameslist/Manifest b/media-libs/libuninameslist/Manifest
index b318aca70324..e22d858832e0 100644
--- a/media-libs/libuninameslist/Manifest
+++ b/media-libs/libuninameslist/Manifest
@@ -1,5 +1,5 @@
DIST libuninameslist-20091231.tar.bz2 568820 BLAKE2B 09574729cc8b655bc9921c49b6f81a7c242a761d70865a0ca6b9ef479582f158f05580e81b94100994ede623ebf8e16f482ae2bacbd596d195b2201023a8ee7e SHA512 3780759428ef2bf2fd808de6ea87a44cf85952f926240ea355d692ef08b5e50c1cf068a2ee05b00cf0fc6b725d71142306aae01e9d6e5144291f6e5dc4505bc2
DIST libuninameslist-dist-20200413.tar.gz 1210689 BLAKE2B 10577d930e4f1e2d8dc41d7df684b63897f62dae31d0bb2208b26ec9102ecc2fd0181d7d3d05c6c678de69b4f379805bfcbf0a484fd0076ff65ee2fa1e9d1368 SHA512 88befff4bf7efed149b4e3a5d58a733b2cb6477e103ec34529ff02a88f8c72a6fc9d7b0be9e97cd539a75c8ebe5e4127cdf03a568da2f219157174b9b585b2a3
EBUILD libuninameslist-20091231-r1.ebuild 569 BLAKE2B c6c7756ff1750da6071383171f22fdc2aba91bfb73291ba76deb5108ad24760691b9d3e75fc9a69532b82dc9590d000183b59788c533e260033d0e64d57d9e90 SHA512 94ccdd53e367cbd45c8914137d3935c1730c50bf17e6f53b56430b7442a887f9d038c2bb831cb5a0c04d104d1e6b305dcaa9a75cd590e260f56c4eeedca91c36
-EBUILD libuninameslist-20200413-r1.ebuild 606 BLAKE2B 001abbc98a470b98ee4f06d816dbfac1b065eec24599159021a076d0c0d7af07fc877dc0373e75310db29de931f8d7d8ffa2f344104412a08801f9e1a01c8182 SHA512 5cbbcbce1c26dac491d5774e86b2a23514aaa6b06a219002d842cc2a50e4eaddfcfd346b27c7f7baf0452a37e775d01981eb58f1f789c9905e7b1d56fed86129
+EBUILD libuninameslist-20200413-r1.ebuild 605 BLAKE2B 062888fe1fbf975960cb639246bef0d648704f885c6cb47d90d1bdd42150cfd9dded7d5fe3325f36c26e05783726e486c63f179aa17edb548eac825169ad2a7a SHA512 fc9cd3fc1462ce1dc36b9253c1a40d691be5d42bcd10719fa1f50a545b321a3ec39e477188b76a862e94e1e41216d0c9f2b765b666e27703f93f40e9d5ea0a61
MISC metadata.xml 483 BLAKE2B bf0ffb6a5095fd83a532b7ac3c1b07509a88970787a9624fd82e0b577634f807f4154180c44275c97f1981cfd306f94358e19f614b00daa32b20a9b61bbe6808 SHA512 7ff44828584d7eeee4081961dd9dbdb8c54086fbed3328c21fa12298f6f8ac23e963dcd399df604956c5dccd1b1c3dc9396c063fa4f5b53ac66951db6f8edafe
diff --git a/media-libs/libuninameslist/libuninameslist-20200413-r1.ebuild b/media-libs/libuninameslist/libuninameslist-20200413-r1.ebuild
index 4c5da330a82b..838cc06a9b51 100644
--- a/media-libs/libuninameslist/libuninameslist-20200413-r1.ebuild
+++ b/media-libs/libuninameslist/libuninameslist-20200413-r1.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/fontforge/libuninameslist/releases/download/${PV}/${
LICENSE="BSD"
SLOT="0/1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
+KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
src_configure() {
econf --disable-static
diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest
index bd875a69dfd7..fe7dc537c81b 100644
--- a/media-libs/mesa/Manifest
+++ b/media-libs/mesa/Manifest
@@ -1,12 +1,8 @@
DIST mesa-20.3.5.tar.xz 14367412 BLAKE2B 7bad876ce702158e727a752eda6722e7165b497fd3a485dae4e989f22b13288a93f51bcd5e6a69b979f0bbe41599fa237c08f3bbb81cb9c6dc4c06827f8ad5f4 SHA512 481e710ed80d8f215a8d541cfe51b960862c2403c2b9e7e6932c8236b8decb5d478871d6c73559d6d795ada143803764f3a93b2329588c80f62e2e5ec98c78a9
-DIST mesa-21.0.1.tar.xz 14648932 BLAKE2B 70e1277336320d7b4351c72f42a72cbcb91dcbc46cc1bf30996b8895bbc30552265404508130c828b67a7d045c9f6eece5ac3d07c2443cea581774c585ba0b69 SHA512 b31b78778b6092dfaf0712f90de3074217574389c4236f8379c127739874f6bd1b47883140a26445d25e58df87e6207278efd048453096ee710d334b1dcfe419
-DIST mesa-21.0.2.tar.xz 14671512 BLAKE2B 5733e65e7e8ffe3e6bed17f499c4d40d2dfbd3dafef967f6b1dbbd14089734640aed02d39568a32d362cc27b4125f425874c25625fd58731500910427dc6c594 SHA512 c3d7969b56e1c31ee642e3b7143d565c4233173dab7cc5576b686c873c27134dc8292a9f2caa0a0dd3c54d0c89d27d6030f36a2c84f85dcedee7ae80b19e5c3b
DIST mesa-21.0.3.tar.xz 14710004 BLAKE2B f2165da4487824931d8ff90e4f13624546a297b0d3577d69b7cfd6078a965282b4a732cb720cbb08ea83a3a987603cfe67876fb18022fa444b011fcc9b7df352 SHA512 4a8aee48a8ea7f32e8aa3bbbd91db26c6053b9a43e62ff88256929e6bc147884f0fef988726b5a3d59d7008663f017c746a0352fd3fcc1c476b8190af4a2531f
-DIST mesa-21.1.0-rc2.tar.xz 15053612 BLAKE2B 25d83aebf4498e1e0ad096999a97b8b8e336b066c19507ee104191d64c495208711e2bb91a62d8dfc4d7b1654dc623a94ad54c9d1951b37182dd8291fff82cd9 SHA512 1f8cbbbc597519a025e9adf34e65b176781ebdab3d3b7ed20312bef79d727da4c778ac7daf94cef8d652c0e05f77fe534cf347d4bebeb00c682d0d807a148f5d
+DIST mesa-21.1.0-rc3.tar.xz 15062052 BLAKE2B 6f53346e80625b84b090d295dc8e2e2682796cf85bedac97838cd72edc95eebf929583fd3a6702e6eb05f839bf9d059bf3c4c39eb32500e5a1a779774440a59a SHA512 1668fa8ef1ad61ccf2da243f0c773b1e6f1e54f1cd3637de0567fd1c91e7e7a37d53c6e4cde6c9e487a012317323e2eb81046aacbad1b623b9dbc68abe8b22a1
EBUILD mesa-20.3.5.ebuild 15063 BLAKE2B cbf593097a3b3a98f9e658f4e5e1d2bb29e7d7f977dffbb130dfd84afbfea76e10b997ec119a65450e687c101da1de199fff987f6aacfb995f4cf7551868050a SHA512 5399d4cffa57c5b1c6b089a6a0187c1aea2ee6334e8b560a8e1a7724c636538351d8d649f84fdd0d929b6c4f47c5b58cb5ebbb413a72577ca1d46db141242e47
-EBUILD mesa-21.0.1.ebuild 14981 BLAKE2B 1bcef01ce9f3df45e43f86c012249f9974e7d01b06bc5c9ba329b27efa576f699656d5b4a05025a99f991156291e5203ebfd6aa4afde4c28b2800d731589313d SHA512 7fa89a752fa2ef3b65dfed8965b76ac3a3cfe9edc9862fac408439fbeb464415084c0f253aeae524b1c92b9447e86d53fe28eaff50201090ae452329e7a39020
-EBUILD mesa-21.0.2.ebuild 14981 BLAKE2B 1bcef01ce9f3df45e43f86c012249f9974e7d01b06bc5c9ba329b27efa576f699656d5b4a05025a99f991156291e5203ebfd6aa4afde4c28b2800d731589313d SHA512 7fa89a752fa2ef3b65dfed8965b76ac3a3cfe9edc9862fac408439fbeb464415084c0f253aeae524b1c92b9447e86d53fe28eaff50201090ae452329e7a39020
EBUILD mesa-21.0.3.ebuild 14981 BLAKE2B 1bcef01ce9f3df45e43f86c012249f9974e7d01b06bc5c9ba329b27efa576f699656d5b4a05025a99f991156291e5203ebfd6aa4afde4c28b2800d731589313d SHA512 7fa89a752fa2ef3b65dfed8965b76ac3a3cfe9edc9862fac408439fbeb464415084c0f253aeae524b1c92b9447e86d53fe28eaff50201090ae452329e7a39020
-EBUILD mesa-21.1.0_rc2.ebuild 14981 BLAKE2B fc836a8e9dde7326f5e2a5793c1602ad30b02373df690efca5e37a1d1b21c79786e4699c14cfef5df21bdea6c56c05f2f62b043428e3a33e43b79b332f3b90c0 SHA512 320e890922b63d9b41acf2f248448a77eeed0e3f977065089d9b9e4f11ad5a2bf16a47c51fc254bf8f5fa4fee9be1bb3325888d94b4f497d80e182b11fbd87a9
+EBUILD mesa-21.1.0_rc3.ebuild 15021 BLAKE2B 6b8ef24e6e5d64b5c22edc76157924c8189bd7be957d06bf81011ab4b8d701c1393d22ad7a5301fe280f453af6aa1191563b798e6a8ded2c67b477a1ff7532af SHA512 d57fbefed59d1328bc915fb8435457a9c09e917a86fc6c1225e7ea942ee2a41ef093965b386b8a3aa5fb1baa466162683c39ef319380e5e7c27425b958c92907
EBUILD mesa-9999.ebuild 14981 BLAKE2B df68d9a7fa62672d81582f8a43c3ff125abdd134b83683bc5bd24c2b9c457b3fc1b925102c33777d7ba121e2be6d507febec0d7ac1a32f17b738bd1785623540 SHA512 d0385e88dd4c47e499a353beeb891fb3dad9c8008642ca325402af53bb5da42243e771fcfb8088dead4c08d6ba590cef67fa6d4b86a80e383c4fbd9a25877c40
MISC metadata.xml 1895 BLAKE2B abf62dda9b9eba657e310c68fdd86aaa49c550dc34ef624e8feb038e0412f0da786e1120dc16631399cb2c83961b88e78571347c3e6d464c2cf3a343bc0f1483 SHA512 7758641386100e07c1112afe04a8613de8ae1e35a8e940f0eefcfc7daa829789c42b903320339b04b44c2400f0857c180740407abd171e9773a9f51e3dd9468a
diff --git a/media-libs/mesa/mesa-21.0.1.ebuild b/media-libs/mesa/mesa-21.0.1.ebuild
deleted file mode 100644
index ebeac9698ee4..000000000000
--- a/media-libs/mesa/mesa-21.0.1.ebuild
+++ /dev/null
@@ -1,564 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit llvm meson multilib-minimal python-any-r1 linux-info
-
-OPENGL_DIR="xorg-x11"
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="
- !test? ( test )
-"
-
-RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} freedreno i915 i965 intel iris lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 +gles2 +llvm
- lm-sensors opencl osmesa selinux test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa xvmc zink +zstd"
-
-REQUIRED_USE="
- d3d9? ( dri3 || ( video_cards_iris video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
- gles1? ( egl )
- gles2? ( egl )
- osmesa? ( gallium )
- vulkan? ( dri3
- video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- wayland? ( egl gbm )
- video_cards_freedreno? ( gallium )
- video_cards_intel? ( classic )
- video_cards_i915? ( || ( classic gallium ) )
- video_cards_i965? ( classic )
- video_cards_iris? ( gallium )
- video_cards_lima? ( gallium )
- video_cards_nouveau? ( || ( classic gallium ) )
- video_cards_panfrost? ( gallium )
- video_cards_radeon? ( || ( classic gallium )
- gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
- video_cards_r100? ( classic )
- video_cards_r200? ( classic )
- video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r600? ( gallium )
- video_cards_radeonsi? ( gallium llvm )
- video_cards_v3d? ( gallium )
- video_cards_vc4? ( gallium )
- video_cards_virgl? ( gallium )
- video_cards_vivante? ( gallium gbm )
- video_cards_vmware? ( gallium )
- xa? ( X )
- xvmc? ( X )
- zink? ( gallium vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.100"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- gallium? (
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3[${MULTILIB_USEDEP}]
- dev-libs/libclc
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- vaapi? (
- >=x11-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? (
- >=dev-libs/wayland-1.18.0:=[${MULTILIB_USEDEP}]
- >=dev-libs/wayland-protocols-1.8
- )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- video_cards_intel? (
- !video_cards_i965? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- )
- video_cards_i915? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- vulkan-overlay? ( dev-util/glslang:0=[${MULTILIB_USEDEP}] )
- X? (
- >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="11"
-LLVM_DEPSTR="
- || (
- sys-devel/llvm:11[${MULTILIB_USEDEP}]
- sys-devel/llvm:10[${MULTILIB_USEDEP}]
- )
- <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${MULTILIB_USEDEP}]
-"
-LLVM_DEPSTR_AMDGPU=${LLVM_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-CLANG_DEPSTR=${LLVM_DEPSTR//llvm/clang}
-CLANG_DEPSTR_AMDGPU=${CLANG_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-RDEPEND="${RDEPEND}
- gallium? (
- llvm? (
- opencl? (
- video_cards_r600? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${CLANG_DEPSTR}
- )
- )
- )
- )
- !opencl? (
- video_cards_r600? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${LLVM_DEPSTR}
- )
- )
- )
- )
- )
- )
-"
-unset {LLVM,CLANG}_DEPSTR{,_AMDGPU}
-
-DEPEND="${RDEPEND}
- valgrind? ( dev-util/valgrind )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- opencl? (
- >=sys-devel/gcc-4.6
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- wayland? ( dev-util/wayland-scanner[${MULTILIB_USEDEP}] )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib*/libglapi.so.0.0.0
- usr/lib*/libGLESv1_CM.so.1.1.0
- usr/lib*/libGLESv2.so.2.0.0
- usr/lib*/libGL.so.1.2.0
- usr/lib*/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- local flags=${MULTILIB_USEDEP}
- if use video_cards_r600 || use video_cards_radeon || use video_cards_radeonsi
- then
- flags+=",llvm_targets_AMDGPU(-)"
- fi
-
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${flags}]" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${flags}]"
-}
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_i965 &&
- ! use video_cards_iris &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain i965, iris, radeonsi, or v3d"
- fi
- fi
-
- if use opencl; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=opencl since VIDEO_CARDS does not contain r600 or radeonsi"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if use xvmc; then
- if ! use video_cards_r600 &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=xvmc since VIDEO_CARDS does not contain r600 or nouveau"
- fi
- fi
-
- if ! use gallium; then
- use lm-sensors && ewarn "Ignoring USE=lm-sensors since USE does not contain gallium"
- use llvm && ewarn "Ignoring USE=llvm since USE does not contain gallium"
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain gallium"
- use vaapi && ewarn "Ignoring USE=vaapi since USE does not contain gallium"
- use vdpau && ewarn "Ignoring USE=vdpau since USE does not contain gallium"
- use unwind && ewarn "Ignoring USE=unwind since USE does not contain gallium"
- use xa && ewarn "Ignoring USE=xa since USE does not contain gallium"
- use xvmc && ewarn "Ignoring USE=xvmc since USE does not contain gallium"
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_i965 ||
- use video_cards_iris ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use gallium && use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- if use classic; then
- # Intel code
- dri_driver_enable video_cards_i915 i915
- dri_driver_enable video_cards_i965 i965
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- dri_driver_enable video_cards_intel i915 i965
- fi
-
- # Nouveau code
- dri_driver_enable video_cards_nouveau nouveau
-
- # ATI code
- dri_driver_enable video_cards_r100 r100
- dri_driver_enable video_cards_r200 r200
- if ! use video_cards_r100 && \
- ! use video_cards_r200; then
- dri_driver_enable video_cards_radeon r100 r200
- fi
- fi
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use X || use egl; then
- emesonargs+=(-Dglvnd=true)
- else
- emesonargs+=(-Dglvnd=false)
- fi
-
- if use gallium; then
- emesonargs+=(
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_feature unwind libunwind)
- )
-
- if use video_cards_iris ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_r600 ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature xvmc gallium-xvmc))
- else
- emesonargs+=(-Dgallium-xvmc=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable video_cards_nouveau nouveau
- gallium_enable zink zink
-
- # Only one i915 driver (classic vs gallium). Default to classic.
- if ! use classic; then
- gallium_enable video_cards_i915 i915
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- gallium_enable video_cards_intel i915
- fi
- fi
-
- gallium_enable video_cards_iris iris
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_virgl virgl
-
- # opencl stuff
- emesonargs+=(
- -Dgallium-opencl="$(usex opencl icd disabled)"
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_i965 intel
- vulkan_enable video_cards_iris intel
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- $(meson_feature dri3)
- $(meson_feature egl)
- $(meson_feature gbm)
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature zstd)
- -Dvalgrind=$(usex valgrind auto false)
- -Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- $(meson_use vulkan vulkan-device-select-layer)
- $(meson_use vulkan-overlay vulkan-overlay-layer)
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_compile() {
- meson_src_compile
-}
-
-multilib_src_install() {
- meson_src_install
-}
-
-multilib_src_install_all() {
- einstalldocs
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- DRI_DRIVERS+=("$@")
- fi
-}
-
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-21.0.2.ebuild b/media-libs/mesa/mesa-21.0.2.ebuild
deleted file mode 100644
index ebeac9698ee4..000000000000
--- a/media-libs/mesa/mesa-21.0.2.ebuild
+++ /dev/null
@@ -1,564 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit llvm meson multilib-minimal python-any-r1 linux-info
-
-OPENGL_DIR="xorg-x11"
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="
- !test? ( test )
-"
-
-RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} freedreno i915 i965 intel iris lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 +gles2 +llvm
- lm-sensors opencl osmesa selinux test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa xvmc zink +zstd"
-
-REQUIRED_USE="
- d3d9? ( dri3 || ( video_cards_iris video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
- gles1? ( egl )
- gles2? ( egl )
- osmesa? ( gallium )
- vulkan? ( dri3
- video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- wayland? ( egl gbm )
- video_cards_freedreno? ( gallium )
- video_cards_intel? ( classic )
- video_cards_i915? ( || ( classic gallium ) )
- video_cards_i965? ( classic )
- video_cards_iris? ( gallium )
- video_cards_lima? ( gallium )
- video_cards_nouveau? ( || ( classic gallium ) )
- video_cards_panfrost? ( gallium )
- video_cards_radeon? ( || ( classic gallium )
- gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
- video_cards_r100? ( classic )
- video_cards_r200? ( classic )
- video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r600? ( gallium )
- video_cards_radeonsi? ( gallium llvm )
- video_cards_v3d? ( gallium )
- video_cards_vc4? ( gallium )
- video_cards_virgl? ( gallium )
- video_cards_vivante? ( gallium gbm )
- video_cards_vmware? ( gallium )
- xa? ( X )
- xvmc? ( X )
- zink? ( gallium vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.100"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- gallium? (
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3[${MULTILIB_USEDEP}]
- dev-libs/libclc
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- vaapi? (
- >=x11-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? (
- >=dev-libs/wayland-1.18.0:=[${MULTILIB_USEDEP}]
- >=dev-libs/wayland-protocols-1.8
- )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- video_cards_intel? (
- !video_cards_i965? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- )
- video_cards_i915? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
- vulkan-overlay? ( dev-util/glslang:0=[${MULTILIB_USEDEP}] )
- X? (
- >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="11"
-LLVM_DEPSTR="
- || (
- sys-devel/llvm:11[${MULTILIB_USEDEP}]
- sys-devel/llvm:10[${MULTILIB_USEDEP}]
- )
- <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${MULTILIB_USEDEP}]
-"
-LLVM_DEPSTR_AMDGPU=${LLVM_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-CLANG_DEPSTR=${LLVM_DEPSTR//llvm/clang}
-CLANG_DEPSTR_AMDGPU=${CLANG_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-RDEPEND="${RDEPEND}
- gallium? (
- llvm? (
- opencl? (
- video_cards_r600? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${CLANG_DEPSTR}
- )
- )
- )
- )
- !opencl? (
- video_cards_r600? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${LLVM_DEPSTR}
- )
- )
- )
- )
- )
- )
-"
-unset {LLVM,CLANG}_DEPSTR{,_AMDGPU}
-
-DEPEND="${RDEPEND}
- valgrind? ( dev-util/valgrind )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- opencl? (
- >=sys-devel/gcc-4.6
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- wayland? ( dev-util/wayland-scanner[${MULTILIB_USEDEP}] )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib*/libglapi.so.0.0.0
- usr/lib*/libGLESv1_CM.so.1.1.0
- usr/lib*/libGLESv2.so.2.0.0
- usr/lib*/libGL.so.1.2.0
- usr/lib*/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- local flags=${MULTILIB_USEDEP}
- if use video_cards_r600 || use video_cards_radeon || use video_cards_radeonsi
- then
- flags+=",llvm_targets_AMDGPU(-)"
- fi
-
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${flags}]" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${flags}]"
-}
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_i965 &&
- ! use video_cards_iris &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain i965, iris, radeonsi, or v3d"
- fi
- fi
-
- if use opencl; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=opencl since VIDEO_CARDS does not contain r600 or radeonsi"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if use xvmc; then
- if ! use video_cards_r600 &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=xvmc since VIDEO_CARDS does not contain r600 or nouveau"
- fi
- fi
-
- if ! use gallium; then
- use lm-sensors && ewarn "Ignoring USE=lm-sensors since USE does not contain gallium"
- use llvm && ewarn "Ignoring USE=llvm since USE does not contain gallium"
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain gallium"
- use vaapi && ewarn "Ignoring USE=vaapi since USE does not contain gallium"
- use vdpau && ewarn "Ignoring USE=vdpau since USE does not contain gallium"
- use unwind && ewarn "Ignoring USE=unwind since USE does not contain gallium"
- use xa && ewarn "Ignoring USE=xa since USE does not contain gallium"
- use xvmc && ewarn "Ignoring USE=xvmc since USE does not contain gallium"
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_i965 ||
- use video_cards_iris ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use gallium && use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- if use classic; then
- # Intel code
- dri_driver_enable video_cards_i915 i915
- dri_driver_enable video_cards_i965 i965
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- dri_driver_enable video_cards_intel i915 i965
- fi
-
- # Nouveau code
- dri_driver_enable video_cards_nouveau nouveau
-
- # ATI code
- dri_driver_enable video_cards_r100 r100
- dri_driver_enable video_cards_r200 r200
- if ! use video_cards_r100 && \
- ! use video_cards_r200; then
- dri_driver_enable video_cards_radeon r100 r200
- fi
- fi
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use X || use egl; then
- emesonargs+=(-Dglvnd=true)
- else
- emesonargs+=(-Dglvnd=false)
- fi
-
- if use gallium; then
- emesonargs+=(
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_feature unwind libunwind)
- )
-
- if use video_cards_iris ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_r600 ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature xvmc gallium-xvmc))
- else
- emesonargs+=(-Dgallium-xvmc=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable video_cards_nouveau nouveau
- gallium_enable zink zink
-
- # Only one i915 driver (classic vs gallium). Default to classic.
- if ! use classic; then
- gallium_enable video_cards_i915 i915
- if ! use video_cards_i915 && \
- ! use video_cards_i965; then
- gallium_enable video_cards_intel i915
- fi
- fi
-
- gallium_enable video_cards_iris iris
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_virgl virgl
-
- # opencl stuff
- emesonargs+=(
- -Dgallium-opencl="$(usex opencl icd disabled)"
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_i965 intel
- vulkan_enable video_cards_iris intel
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- $(meson_feature dri3)
- $(meson_feature egl)
- $(meson_feature gbm)
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature zstd)
- -Dvalgrind=$(usex valgrind auto false)
- -Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- $(meson_use vulkan vulkan-device-select-layer)
- $(meson_use vulkan-overlay vulkan-overlay-layer)
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_compile() {
- meson_src_compile
-}
-
-multilib_src_install() {
- meson_src_install
-}
-
-multilib_src_install_all() {
- einstalldocs
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- DRI_DRIVERS+=("$@")
- fi
-}
-
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-21.1.0_rc2.ebuild b/media-libs/mesa/mesa-21.1.0_rc3.ebuild
index 1c0e0aaca5d4..c15b166a9280 100644
--- a/media-libs/mesa/mesa-21.1.0_rc2.ebuild
+++ b/media-libs/mesa/mesa-21.1.0_rc3.ebuild
@@ -142,9 +142,10 @@ RDEPEND="${RDEPEND}
# 1. List all the working slots (with min versions) in ||, newest first.
# 2. Update the := to specify *max* version, e.g. < 10.
# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="11"
+LLVM_MAX_SLOT="12"
LLVM_DEPSTR="
|| (
+ sys-devel/llvm:12[${MULTILIB_USEDEP}]
sys-devel/llvm:11[${MULTILIB_USEDEP}]
sys-devel/llvm:10[${MULTILIB_USEDEP}]
)
diff --git a/media-libs/openglide/Manifest b/media-libs/openglide/Manifest
index d25147314336..6cfaf32374c4 100644
--- a/media-libs/openglide/Manifest
+++ b/media-libs/openglide/Manifest
@@ -1,4 +1,4 @@
AUX OpenGLid.ini 605 BLAKE2B 5f51d0a6d15e253bffb0919ec078b2081005fc1f86f8058ec969820e32f3bea621b5dc941cec23a24595c01dd87f8f37db582b5307ada6a52a34d28f7c123f22 SHA512 dbd4ab26d5a556fcd9656f151c156dd29eaa1b815d1a5eaf841cc23f2c8aee5f385f085febfeabe900014b63c5cc2234aafc9388e1940fa72cb7a4aaab2cf14c
DIST openglide-0.09_rc9_p20191120.tar.gz 470278 BLAKE2B 234b83b4688e120f6ea00f5583c7546d8a7a4d2ca7ab12d52a7a4f52a5375508418866b7c9547ba495c48abe9ff4caf49a104de1a34f208db1028082bb71fb46 SHA512 c83c1c04aa77fe47f381385c8d946da49c2eb8ceba0164b660af1564bfb580015f196cd4063bb73f2c76405517f90e8b5a6e7969afbdd7ef2c9fce7520227478
-EBUILD openglide-0.09_rc9_p20191120.ebuild 1358 BLAKE2B 3f631d99caea24501b0f71ff2e625fbe5b4fca5c751f51bbcc5343a31acac4232f28eea3618c24afc3a4dde7b676c2342124a769bdc2ab36be4cc524403faac0 SHA512 1f3587048c290101438c11179170610f0df22ea38e9ec811deae2d767d56ca6a4a30901f3d025099ffcc17440ac003bbe9bc7b1ddbefec6b28d5b95b4685e049
+EBUILD openglide-0.09_rc9_p20191120.ebuild 1350 BLAKE2B 23e63a513bb9a4eea96996dca951c30f4222ee25423b1d85f4d696cd82aba81f0c0b7c6ecf8d559d4f0c85db621633285b870b1188560876375d87def3fc6299 SHA512 4a16a4734c4a202dfc282e4ecf4b687f9cb8b5e9f0a47e1c244499fbca02893083d8f6230c605f007515803363b8efb7ff0da4312ab56dd0c331899747babeaa
MISC metadata.xml 693 BLAKE2B 92dde15413f18f0bc359c3ef821e8a62fd70bc621c4de1a3d5c85bfb88410c80d99111dea375509617d8d81eedad447b7422dba9b22fb206e12ec77a01fb13c3 SHA512 9d5f988dac6a2a3c0556718c3ce5e883931b68175d9c6bb6e3a9c5b5bcec10f144d8df9a6fc95a447ba6e6d5a5860d3c8456480273c3cab4a6914129e4ac102d
diff --git a/media-libs/openglide/openglide-0.09_rc9_p20191120.ebuild b/media-libs/openglide/openglide-0.09_rc9_p20191120.ebuild
index c51f646d46f9..3df9c4f42c58 100644
--- a/media-libs/openglide/openglide-0.09_rc9_p20191120.ebuild
+++ b/media-libs/openglide/openglide-0.09_rc9_p20191120.ebuild
@@ -5,11 +5,12 @@ EAPI=7
COMMIT="c300160d0a8292bc04e79dd59e6cc178aa648dec"
-inherit autotools eutils multilib-minimal
+inherit autotools multilib-minimal
-DESCRIPTION="A Glide to OpenGL wrapper"
+DESCRIPTION="Glide to OpenGL wrapper"
HOMEPAGE="http://openglide.sourceforge.net/"
SRC_URI="https://github.com/voyageur/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~x86"
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest
index c44422882b9c..0a87a2ef2b62 100644
--- a/media-libs/openimageio/Manifest
+++ b/media-libs/openimageio/Manifest
@@ -7,7 +7,7 @@ DIST openimageio-2.2.9.0.tar.gz 29216767 BLAKE2B 92c17de4687d3d7390602a02dedc5af
EBUILD openimageio-2.2.10.0.ebuild 3688 BLAKE2B d5a87f880c41031f38540db419869546471b0bed383a198c05df6af55c4b21b087f9756be98ac3095b6c0fa1b9ba9cd0658821ff0442c0f4894b6deaf4ccba43 SHA512 8161c32a21d0f5b1b288b02884ce80a2f1d95a4ebd7bd76cd7e087d4435df51b66653d57b7ee081b13425fbe3640c44e46eeadb901228c8d513a9e3c0fd62be0
EBUILD openimageio-2.2.10.1.ebuild 3687 BLAKE2B 64cd8906e6e79cd53a0d2684ed345806aeee012a0183662ab8219b1869fe3c12ec7a26c2d2a3c3f616f443b368e634297a59c8ef7650de4f68c4fca90f78a08a SHA512 3c6e9072d34eefbfd3f575d48386babe65cc1b7a0700545ae6a8dafa1d195903c39209af98d2ae6537e6d85ec7850b3a34ba1874084f67db442843e66613492d
EBUILD openimageio-2.2.11.1.ebuild 3691 BLAKE2B 7e640ab4c09cf10203da1e9bf05bbacdfde49d38f0f59210968c1514491d585ec45540215e7c0178bd4a737c007af1312f74aefc46d376079ebb82ea3301c1bf SHA512 c1c838fd9444071a9b9c083ca6c25d6c0e7b9cda6e7344b1d81463102386595fc2eabd91f3537ea57d778ee55cfccb3fe5a1d8c31519947276b9b170413fd3f9
-EBUILD openimageio-2.2.12.0.ebuild 3692 BLAKE2B f15afd2de794e65e70481be2aa28fd0260f054e9ad5c706e8f07d2dadeed417b657b70b15e28c5977b675dcd25fa2c386115bfdcc38b1ccb97275d5f42054d17 SHA512 dbcb6e706de01f0b9b390621cfb1135340d9da50432eb3e4591fce8dad512b84bd79432916f66201f0e7fad92e384103716f907a78de9ae320db39451cd16a75
+EBUILD openimageio-2.2.12.0.ebuild 3691 BLAKE2B 7e640ab4c09cf10203da1e9bf05bbacdfde49d38f0f59210968c1514491d585ec45540215e7c0178bd4a737c007af1312f74aefc46d376079ebb82ea3301c1bf SHA512 c1c838fd9444071a9b9c083ca6c25d6c0e7b9cda6e7344b1d81463102386595fc2eabd91f3537ea57d778ee55cfccb3fe5a1d8c31519947276b9b170413fd3f9
EBUILD openimageio-2.2.8.0-r1.ebuild 3679 BLAKE2B 90500e5e8bd4c94ac24506b2049a1f875961834f1822aec9cda7067b425a6f2f55df02be32c8e6694a5986c11edd4789aa04bf0622dd66f7e5193706e2d0682f SHA512 6fc5f91ef2eef33934dd7a151383fc2fc165ee97fb77133308641031309bfb96871b2ef5a8b5cbc9baa563b21c3de834378d651ded46cecdda4d11d72eaa53a8
EBUILD openimageio-2.2.9.0-r1.ebuild 3686 BLAKE2B 95bcd6666bba47874bb02eec536c1dd6d22b821cba96106916276fb9dbaad5ed592d78363bd44bf39e146cc9c753b0dc7b7a333fd0cfc5572404d3e3861b6c39 SHA512 ee932fd014b3ecc44e0cc208613b3e9e2ce9df9bc4b0fbd516232ff52ea94239da42fc057a42caee8c6e546a19b12c49a64c6286b96ca6b3407781b11462825e
MISC metadata.xml 936 BLAKE2B 0ba7d5d9c77d481d876a273f479cc33f7b4233be522a6722aa4762ff682166eebf93645a5c042591c7495e4954bc0c61fa89083fd2b4ee76a5ccbdb5299dfcba SHA512 732d0ad35c7176710ac7a5362a4a6ac03c01d11d8df016654b13490e84b6d56801714158536abaccafccbc14b55234a78095e8a1d9550419bf0a67fe3d4cab5c
diff --git a/media-libs/openimageio/openimageio-2.2.12.0.ebuild b/media-libs/openimageio/openimageio-2.2.12.0.ebuild
index 1fd923d5c9b5..b6868ab8609f 100644
--- a/media-libs/openimageio/openimageio-2.2.12.0.ebuild
+++ b/media-libs/openimageio/openimageio-2.2.12.0.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}/oiio-Release-${PV}"
LICENSE="BSD"
SLOT="0/2.2"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
X86_CPU_FEATURES=(
aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2
diff --git a/media-libs/opusfile/Manifest b/media-libs/opusfile/Manifest
index 08a32b6455a9..546273063ae8 100644
--- a/media-libs/opusfile/Manifest
+++ b/media-libs/opusfile/Manifest
@@ -1,3 +1,3 @@
DIST opusfile-0.12.tar.gz 471354 BLAKE2B d54d9b8ed011c018dc6de77afab524d2e47ba6cca69b911efacf361b41f3b59a31424cb15a778db14166815ba5e2352f33f8aa7987c30e5e14339c652558d18d SHA512 e25e6968a3183ac0628ce1000840fd6f9f636e92ba984d6a72b76fb2a98ec632d2de4c66a8e4c05ef30655c2a4a13ab35f89606fa7d79a54cfa8506543ca57af
-EBUILD opusfile-0.12.ebuild 927 BLAKE2B 54f11de54ca7f62c918762b3be291b85c2267f7d43ab7817163769be0318c41243e87d3107b7e16afc07d600ad13f334066eaaecddf39cb71c2c96d274a4e352 SHA512 f08f9a3e25f8cd078d0e6ea7fe385ec361cd76cb1c6621d403e991088ab179a82f40b58a0748fd2ba4514b451cc8a34947b26cfb6dbae41a99cc91cb1b34d2fe
+EBUILD opusfile-0.12.ebuild 866 BLAKE2B 03a0e6090a7dc1ff6306ce48a4d57431f8c5feb455b1b8a1e4c79819c91db0d9415e1151aa12d76d205603ce627b084b3865af5dada692a6a74574be0fe874e3 SHA512 d0007dc0ffc119ee2b8038cf823a553c11309f3152a0b9624615ad1c152540a33c5953753c54e4c1b25b920d9710e90e5087944465b1eb292ffe1de8253296ac
MISC metadata.xml 574 BLAKE2B 67bceafd9042cb07a851772ca2b78b542783c6fd4e9bdd5e44643a36652e24907692465390b33ceddd44d37be297b096129ecb92940fe5d7ec5aedbd709c8cb1 SHA512 12eaea9edb76ed36ac8cd60af4b14cf395b4fcb81f4d3dabb1020a0139f05e05fe80bc800080913e66fcb967d4ed1de6b37238a7b0d72dad69de505354aa3830
diff --git a/media-libs/opusfile/opusfile-0.12.ebuild b/media-libs/opusfile/opusfile-0.12.ebuild
index 36ad0401dcc6..5ab1f68d07f2 100644
--- a/media-libs/opusfile/opusfile-0.12.ebuild
+++ b/media-libs/opusfile/opusfile-0.12.ebuild
@@ -10,13 +10,12 @@ SRC_URI="https://downloads.xiph.org/releases/opus/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
-IUSE="doc fixed-point +float +http libressl static-libs"
+IUSE="doc fixed-point +float +http static-libs"
RDEPEND="media-libs/libogg
media-libs/opus
http? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+ dev-libs/openssl:0=
)"
DEPEND="${RDEPEND}
diff --git a/media-libs/portmidi/Manifest b/media-libs/portmidi/Manifest
index 3606497be2a4..2ba4030d35d3 100644
--- a/media-libs/portmidi/Manifest
+++ b/media-libs/portmidi/Manifest
@@ -1,5 +1,8 @@
AUX portmidi-217-cmake.patch 13905 BLAKE2B faa559f25b1acec63f17a6b6dcbd228eff2cb50447ba72ea4108c86f36b8142fac54c90e5480d74278e0fa0b28bad68f4f1bfac192434840893dc9039243284f SHA512 b60da799041d6dc4a1bf82981d904cf9bbbaed021397cd2235dc25b18b7c830576ecce8fa0c6992249e03ab84579eff795ae33a8e0d091dcda8ee856491420d4
AUX portmidi-217-r4-python.patch 1540 BLAKE2B a5fe8c48e8d312cead822fc8893f8a610bf5cf280dd2445da04ab42ed13a5a121174afa2e8874dcf3f7a7b89cd60894a819404438c6d5cb2b99a8e2ae6f3aba8 SHA512 d7ded737346f9756450ff3eaf35daf33da941a109d7db07598ea57593ef3272213b889a9ab33bed71bead4583cb080439813bf7fc4a6d1a6cbb84ed4cd25b51f
+AUX portmidi-234-cmake.patch 13979 BLAKE2B cc6b4193e9008899c89545e2e416c75779d08a6ef100e7a37c21a7c745ac3416c31b044664ba439368c8bb0f3a7fde119343a86d31efe3482c4a88718affdd6d SHA512 b07cd643699084f8e02ffc53d3721a53dd17b421d8ff5b2889a14ab99ff709c14f68b30adc2e7db818cbe7884f93cab8290ff9466ac8616d0db58b3e7aab1f75
+DIST portmedia-code-r234.zip 1342298 BLAKE2B 3c3686b79ca0c8cbfaa6c44ae8c4f294630e1c5940576709ff1ca5854bfcfba1af7b067471656f2b39ae28cecea9b6c4403f72d5a2552355760c795eff123243 SHA512 cbc332d89bc465450b38245a83cc300dfd2e1e6de7c62284edf754ff4d8a9aa3dc49a395dcee535ed9688befb019186fa87fd6d8a3698898c2acbf3e6b7a0794
DIST portmidi-src-217.zip 1030830 BLAKE2B ab197c7f9a5c2b4d2740d56841459fbac97d510e4d12e5d0cd7cecc0ba6035929b6596140d42c575a9513862a66127d19253dbee1d3a7b7b84b69c88fec7fcae SHA512 d08d4d57429d26d292b5fe6868b7c7a32f2f1d2428f6695cd403a697e2d91629bd4380242ab2720e8f21c895bb75cb56b709fb663a20e8e623120e50bfc5d90b
EBUILD portmidi-217-r3.ebuild 3211 BLAKE2B a1db7a1a0fd4c8c5a49f205ee4cd2c6b5689bbf65c1538817c2440663140ca57c6e462b324832392efaadf6d852bdd55b0c8930716bf09302cb2de9d1d828f82 SHA512 d65ec75185e97a7d040eaa6e1d99ec4a03155b9667d893d6b47cf9c2d2cb2bfd928aed484075b49d7f4740c28b3391ae16f212dd2a1cc9dbc05407579656c29e
+EBUILD portmidi-234.ebuild 3318 BLAKE2B 9bf2367d177564a0fdbbea027860a57019f9090540a1bc94e323a357d6cc0f154913edfd10f9521acb9b88d14674b9241d2ca4e37fa7b75fe3cb668e34ec53f5 SHA512 6384c0fecb52db5c6922a3205e3e2a37f64cae7be5794542ea2377bee42bcebd564494d839ed349c127f14eac598b4a068a82ee0baa0b32c2af24d072760f302
MISC metadata.xml 436 BLAKE2B abc47a4c2597048c3e2037006db7811d99cb1ce5c35d83dec30fc415f6d419344bf283d580c153309bb7934b6a12fae878cd480f6c12be76deb52bd5494e2c5c SHA512 a7f6997ff7647e20526181189d5d38ebd944648a508a90ab42ada4dfec84f5165a25b07f5738880a9dcbf424e2b74ac7c3224f6b8d47d9c8a7f3fa7c02c02cbc
diff --git a/media-libs/portmidi/files/portmidi-234-cmake.patch b/media-libs/portmidi/files/portmidi-234-cmake.patch
new file mode 100644
index 000000000000..f4f1101ccb40
--- /dev/null
+++ b/media-libs/portmidi/files/portmidi-234-cmake.patch
@@ -0,0 +1,332 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4919b78..9dc6e58 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -9,12 +9,11 @@ if(UNIX)
+ set(CMAKE_BUILD_TYPE Release CACHE STRING
+ "Semicolon-separate list of supported configuration types")
+ # set default directories but don't override cached values...
+- set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CACHEFILE_DIR}/${CMAKE_BUILD_TYPE}
++ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ CACHE STRING "libraries go here")
+- set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CACHEFILE_DIR}/${CMAKE_BUILD_TYPE}
++ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ CACHE STRING "libraries go here")
+- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
+- ${CMAKE_CACHEFILE_DIR}/${CMAKE_BUILD_TYPE}
++ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ CACHE STRING "executables go here")
+
+ else(UNIX)
+@@ -68,10 +67,20 @@ endif(UNIX)
+ include_directories(pm_common porttime)
+ add_subdirectory(pm_common)
+
+-add_subdirectory(pm_test)
++option(PORTMIDI_ENABLE_JAVA "Enable Java bindings support" ON)
++option(PORTMIDI_ENABLE_STATIC "Build and install static libraries" OFF)
++option(PORTMIDI_ENABLE_TEST "Build test programs" ON)
++
++if(PORTMIDI_ENABLE_TEST)
++ add_subdirectory(pm_test)
++endif(PORTMIDI_ENABLE_TEST)
+
+ add_subdirectory(pm_dylib)
+
+ # Cannot figure out how to make an xcode Java application with CMake
+-add_subdirectory(pm_java)
++if(PORTMIDI_ENABLE_JAVA)
++ set(JAR_INSTALL_DIR share/java
++ CACHE STRING "Define directory name for jar installation")
++ add_subdirectory(pm_java)
++endif(PORTMIDI_ENABLE_JAVA)
+
+diff --git a/pm_common/CMakeLists.txt b/pm_common/CMakeLists.txt
+index cbeeade..92cbe27 100644
+--- a/pm_common/CMakeLists.txt
++++ b/pm_common/CMakeLists.txt
+@@ -44,9 +44,6 @@ set(CMAKE_C_FLAGS_RELEASE "${DEFAULT_RELEASE_FLAGS} ${LINUX_FLAGS}"
+
+ # first include the appropriate system-dependent file:
+ if(UNIX)
+- # add the -g switch for Linux and Mac OS X (not used in Win32)
+- set (CMAKE_C_FLAGS_DEBUG "-g ${CMAKE_C_FLAGS_DEBUG}"
+- CACHE STRING "enable extra checks for debugging" FORCE)
+ if(APPLE)
+ set(MACSRC pmmacosxcm pmmac readbinaryplist finddefault)
+ prepend_path(LIBSRC ../pm_mac/ ${MACSRC})
+@@ -62,19 +59,23 @@ if(UNIX)
+ ${COREMIDI_LIB} ${CORESERVICES_LIB}
+ CACHE INTERNAL "")
+
+- set(JAVAVM_LIB "${FRAMEWORK_PATH}/JavaVM.framework")
+- set(JAVA_INCLUDE_PATHS ${JAVAVM_LIB}/Headers)
++ if(PORTMIDI_ENABLE_JAVA)
++ set(JAVAVM_LIB "${FRAMEWORK_PATH}/JavaVM.framework")
++ set(JAVA_INCLUDE_PATHS ${JAVAVM_LIB}/Headers)
++ endif(PORTMIDI_ENABLE_JAVA)
+ message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
+ else(APPLE)
+ # LINUX settings...
+- include(FindJNI)
+- message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
+- message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
+- message(STATUS "JAVA_INCLUDE_PATH2 is " ${JAVA_INCLUDE_PATH2})
+- message(STATUS "JAVA_JVM_LIBRARY is " ${JAVA_JVM_LIBRARY})
+- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
+- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
+- set(JAVAVM_LIB ${JAVA_JVM_LIBRARY}/libjvm.so)
++ if(PORTMIDI_ENABLE_JAVA)
++ include(FindJNI)
++ message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
++ message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
++ message(STATUS "JAVA_INCLUDE_PATH2 is " ${JAVA_INCLUDE_PATH2})
++ message(STATUS "JAVA_JVM_LIBRARY is " ${JAVA_JVM_LIBRARY})
++ set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
++ # libjvm.so is found relative to JAVA_INCLUDE_PATH:
++ set(JAVAVM_LIB ${JAVA_JVM_LIBRARY}/libjvm.so)
++ endif(PORTMIDI_ENABLE_JAVA)
+
+ set(LINUXSRC pmlinuxalsa pmlinux finddefault)
+ prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
+@@ -88,10 +89,12 @@ else(UNIX)
+ # /MD is multithread DLL, /MT is multithread. Change to static:
+ include(../pm_win/static.cmake)
+
+- include(FindJNI)
++ if(PORTMIDI_ENABLE_JAVA)
++ include(FindJNI)
+
+- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
+- # message(STATUS "JAVA_INCLUDE_PATHS: " ${JAVA_INCLUDE_PATHS})
++ set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
++ # message(STATUS "JAVA_INCLUDE_PATHS: " ${JAVA_INCLUDE_PATHS})
++ endif(PORTMIDI_ENABLE_JAVA)
+
+ set(WINSRC pmwin pmwinmm)
+ prepend_path(LIBSRC ../pm_win/ ${WINSRC})
+@@ -99,29 +102,43 @@ else(UNIX)
+ set(PM_NEEDED_LIBS winmm.lib)
+ endif(WIN32)
+ endif(UNIX)
+-set(JNI_EXTRA_LIBS ${PM_NEEDED_LIBS} ${JAVA_JVM_LIBRARY})
++
++if(PORTMIDI_ENABLE_JAVA)
++ set(JNI_EXTRA_LIBS ${PM_NEEDED_LIBS} ${JAVA_JVM_LIBRARY})
++endif(PORTMIDI_ENABLE_JAVA)
+
+ # this completes the list of library sources by adding shared code
+ list(APPEND LIBSRC pmutil portmidi)
+
+ # now add the shared files to make the complete list of library sources
+-add_library(portmidi-static ${LIBSRC})
+-set_target_properties(portmidi-static PROPERTIES OUTPUT_NAME "portmidi_s")
+-target_link_libraries(portmidi-static ${PM_NEEDED_LIBS})
+-
+-# define the jni library
+-include_directories(${JAVA_INCLUDE_PATHS})
+-
+-set(JNISRC ${LIBSRC} ../pm_java/pmjni/pmjni.c)
+-add_library(pmjni SHARED ${JNISRC})
+-target_link_libraries(pmjni ${JNI_EXTRA_LIBS})
+-set_target_properties(pmjni PROPERTIES EXECUTABLE_EXTENSION "jnilib")
++if(PORTMIDI_ENABLE_STATIC)
++ add_library(portmidi-static ${LIBSRC})
++ set_target_properties(portmidi-static PROPERTIES OUTPUT_NAME "portmidi")
++ target_link_libraries(portmidi-static ${PM_NEEDED_LIBS})
++endif(PORTMIDI_ENABLE_STATIC)
++
++if(PORTMIDI_ENABLE_JAVA)
++ # define the jni library
++ include_directories(${JAVA_INCLUDE_PATHS})
++
++ set(JNISRC ${LIBSRC} ../pm_java/pmjni/pmjni.c)
++ add_library(pmjni SHARED ${JNISRC})
++ target_link_libraries(pmjni ${JNI_EXTRA_LIBS})
++ set_target_properties(pmjni PROPERTIES EXECUTABLE_EXTENSION "jnilib")
++endif(PORTMIDI_ENABLE_JAVA)
+
+ # install the libraries (Linux and Mac OS X command line)
+ if(UNIX)
+- INSTALL(TARGETS portmidi-static pmjni
+- LIBRARY DESTINATION /usr/local/lib
+- ARCHIVE DESTINATION /usr/local/lib)
++ if(PORTMIDI_ENABLE_STATIC)
++ INSTALL(TARGETS portmidi-static
++ LIBRARY DESTINATION lib${LIB_SUFFIX}
++ ARCHIVE DESTINATION lib${LIB_SUFFIX})
++ endif(PORTMIDI_ENABLE_STATIC)
++ if(PORTMIDI_ENABLE_JAVA)
++ INSTALL(TARGETS pmjni
++ LIBRARY DESTINATION lib${LIB_SUFFIX}
++ ARCHIVE DESTINATION lib${LIB_SUFFIX})
++ endif(PORTMIDI_ENABLE_JAVA)
+ # .h files installed by pm_dylib/CMakeLists.txt, so don't need them here
+ # INSTALL(FILES portmidi.h ../porttime/porttime.h
+ # DESTINATION /usr/local/include)
+diff --git a/pm_dylib/CMakeLists.txt b/pm_dylib/CMakeLists.txt
+index f693dd6..c0e1449 100644
+--- a/pm_dylib/CMakeLists.txt
++++ b/pm_dylib/CMakeLists.txt
+@@ -39,9 +39,6 @@ set(CMAKE_C_FLAGS_RELEASE "${DEFAULT_RELEASE_FLAGS} ${LINUX_FLAGS}"
+
+ # first include the appropriate system-dependent file:
+ if(UNIX)
+- # add the -g switch for Linux and Mac OS X (not used in Win32)
+- set (CMAKE_C_FLAGS_DEBUG "-g ${CMAKE_C_FLAGS_DEBUG}"
+- CACHE STRING "enable extra checks for debugging" FORCE)
+ if(APPLE)
+ set(MACSRC pmmacosxcm pmmac readbinaryplist finddefault)
+ prepend_path(LIBSRC ../pm_mac/ ${MACSRC})
+@@ -63,7 +60,8 @@ if(UNIX)
+ message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
+ else(APPLE)
+ # LINUX settings...
+- include(FindJNI)
++ if(PORTMIDI_ENABLE_JAVA)
++ include(FindJNI)
+ # message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
+ # message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
+ # note: should use JAVA_JVM_LIB_PATH, but it is not set properly
+@@ -75,11 +73,8 @@ if(UNIX)
+ # JAVA_INCLUDE_PATH2; if no, then we need to make both JAVA_INCLUDE_PATH
+ # and JAVA_INCLUDE_PATH2 set by user (will need clear documentation
+ # because JAVA_INCLUDE_PATH2 is pretty obscure)
+- set(JAVA_INCLUDE_PATH ${JAVA_INCLUDE_PATH-UNKNOWN}
+- CACHE STRING "where to find Java SDK include directory")
+- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH}/linux)
+- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
+- set(JAVAVM_LIB ${JAVA_INCLUDE_PATH}/../jre/lib/i386/client/libjvm.so)
++ set(JAVAVM_LIB ${JAVA_JVM_LIBRARY})
++ endif(PORTMIDI_ENABLE_JAVA)
+
+ set(LINUXSRC pmlinuxalsa pmlinux finddefault)
+ prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
+@@ -91,13 +86,15 @@ else(UNIX)
+ if(WIN32)
+ # /MDd is multithread debug DLL, /MTd is multithread debug
+ # /MD is multithread DLL, /MT is multithread
+-
+- include(FindJNI)
+- # note: should use JAVA_JVM_LIB_PATH, but it is not set properly
+- set(JAVAVM_LIB ${JAVA_INCLUDE_PATH}/../lib/jvm.lib)
+
+- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
+- # message(STATUS "JAVA_INCLUDE_PATHS: " ${JAVA_INCLUDE_PATHS})
++ if(PORTMIDI_ENABLE_JAVA)
++ include(FindJNI)
++ # note: should use JAVA_JVM_LIB_PATH, but it is not set properly
++ set(JAVAVM_LIB ${JAVA_INCLUDE_PATH}/../lib/jvm.lib)
++
++ set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
++ # message(STATUS "JAVA_INCLUDE_PATHS: " ${JAVA_INCLUDE_PATHS})
++ endif(PORTMIDI_ENABLE_JAVA)
+
+ set(WINSRC pmwin pmwinmm)
+ prepend_path(LIBSRC ../pm_win/ ${WINSRC})
+@@ -106,7 +103,10 @@ else(UNIX)
+ # message(STATUS "JAVAVM_LIB: " ${JAVAVM_LIB})
+ endif(WIN32)
+ endif(UNIX)
++
++if(PORTMIDI_ENABLE_JAVA)
+ set(JNI_EXTRA_LIBS ${PM_NEEDED_LIBS} ${JAVAVM_LIB})
++endif(PORTMIDI_ENABLE_JAVA)
+
+ # this completes the list of library sources by adding shared code
+ set(SHARED_FILES pmutil portmidi)
+@@ -120,8 +120,8 @@ target_link_libraries(portmidi-dynamic ${PM_NEEDED_LIBS})
+ # install the libraries (Linux and Mac OS X command line)
+ if(UNIX)
+ INSTALL(TARGETS portmidi-dynamic
+- LIBRARY DESTINATION /usr/local/lib
+- ARCHIVE DESTINATION /usr/local/lib)
++ LIBRARY DESTINATION lib${LIB_SUFFIX}
++ ARCHIVE DESTINATION lib${LIB_SUFFIX})
+ INSTALL(FILES ../pm_common/portmidi.h ../porttime/porttime.h
+- DESTINATION /usr/local/include)
++ DESTINATION include)
+ endif(UNIX)
+diff --git a/pm_java/CMakeLists.txt b/pm_java/CMakeLists.txt
+index 9d79923..9ed2b09 100644
+--- a/pm_java/CMakeLists.txt
++++ b/pm_java/CMakeLists.txt
+@@ -5,43 +5,25 @@ if(UNIX)
+ # java not dealt with in CMake -- see pm_mac/pm_mac.xcodeproj
+ else(APPLE)
+ # linux
+- set(JPORTMIDICLASS JPortMidi.class JPortMidiException.class
+- JPortMidiApi.class)
+- set(PMDEFAULTSCLASS PmDefaultsFrame.class PmDefaults.class)
+- prepend_path(JPORTMIDICLASS2 jportmidi/ ${JPORTMIDICLASS})
+- prepend_path(PMDEFAULTSCLASS2 pmdefaults/ ${PMDEFAULTSCLASS})
+- set(PMDEFAULTS_ALL_CLASSES ${JPORTMIDICLASS2} ${PMDEFAULTSCLASS2})
+- # message(STATUS "PMDEFAULTS_ALL_CLASSES is " ${PMDEFAULTS_ALL_CLASSES})
+- add_custom_command(OUTPUT pmdefaults/PmDefaultsFrame.class
+- COMMAND javac -classpath . pmdefaults/PmDefaultsFrame.java
+- MAIN_DEPENDENCY pmdefaults/PmDefaultsFrame.java
+- DEPENDS pmdefaults/PmDefaults.java
+- WORKING_DIRECTORY .)
+- add_custom_command(OUTPUT pmdefaults/PmDefaults.class
+- COMMAND javac -classpath . pmdefaults/PmDefaults.java
+- MAIN_DEPENDENCY pmdefaults/PmDefaults.java
+- DEPENDS pmdefaults/PmDefaultsFrame.java
+- WORKING_DIRECTORY .)
+- add_custom_command(OUTPUT ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
+- COMMAND cp pmdefaults/portmusic_logo.png .
+- COMMAND jar cmf pmdefaults/manifest.txt pmdefaults.jar
+- pmdefaults/*.class portmusic_logo.png jportmidi/*.class
+- COMMAND chmod +x pmdefaults/pmdefaults
+- COMMAND cp pmdefaults/pmdefaults ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+- COMMAND mv pmdefaults.jar ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+- COMMAND rm portmusic_logo.png
+- MAIN_DEPENDENCY pmdefaults/PmDefaults.class
+- DEPENDS ${PMDEFAULTS_ALL_CLASSES}
+- WORKING_DIRECTORY .)
+- add_custom_target(pmdefaults_target ALL
+- DEPENDS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar)
++ set(JAVA_CLASSES jportmidi pmdefaults)
++ add_custom_command(OUTPUT ${JAVA_CLASSES}
++ COMMAND javac -d ${CMAKE_CURRENT_BINARY_DIR} jportmidi/*.java pmdefaults/*.java
++ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
++ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pmdefaults.jar
++ DEPENDS ${JAVA_CLASSES}
++ COMMAND jar cmf pmdefaults/manifest.txt ${CMAKE_CURRENT_BINARY_DIR}/pmdefaults.jar
++ -C pmdefaults portmusic_logo.png -C ${CMAKE_CURRENT_BINARY_DIR} jportmidi
++ -C ${CMAKE_CURRENT_BINARY_DIR} pmdefaults
++ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
++ add_custom_target(pmdefaults.jar ALL
++ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/pmdefaults.jar)
+ # message(STATUS "add_custom_target: pmdefaults.jar")
+
+ # install the libraries (Linux only)
+- INSTALL(FILES ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
+- DESTINATION /usr/share/java)
+- INSTALL(PROGRAMS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults
+- DESTINATION /usr/local/bin)
++ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pmdefaults.jar
++ DESTINATION ${JAR_INSTALL_DIR})
++ INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/pmdefaults/pmdefaults
++ DESTINATION bin)
+ endif(APPLE)
+ endif(UNIX)
+ # In windows, use pm_java/make.bat
+diff --git a/pm_test/CMakeLists.txt b/pm_test/CMakeLists.txt
+index 4fda450..5d683d8 100644
+--- a/pm_test/CMakeLists.txt
++++ b/pm_test/CMakeLists.txt
+@@ -10,10 +10,12 @@ if(WIN32)
+ include(../pm_win/static.cmake)
+ endif(WIN32)
+
++set(CMAKE_SKIP_BUILD_RPATH TRUE)
++
+ macro(make_a_test name)
+ add_executable(${name} ${name}.c)
+- target_link_libraries(${name} portmidi-static ${PM_NEEDED_LIBS})
+- add_dependencies(${name} portmidi-static)
++ target_link_libraries(${name} portmidi-dynamic ${PM_NEEDED_LIBS})
++ add_dependencies(${name} portmidi-dynamic)
+ endmacro(make_a_test)
+
+ make_a_test(test)
diff --git a/media-libs/portmidi/portmidi-234.ebuild b/media-libs/portmidi/portmidi-234.ebuild
new file mode 100644
index 000000000000..6713a99ef2f6
--- /dev/null
+++ b/media-libs/portmidi/portmidi-234.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+DISTUTILS_OPTIONAL=1
+DISTUTILS_USE_SETUPTOOLS=no
+# ninja: error: build.ninja:521: multiple rules generate pm_java/pmdefaults.jar [-w dupbuild=err]
+CMAKE_MAKEFILE_GENERATOR="emake"
+inherit cmake desktop xdg distutils-r1 java-pkg-opt-2 flag-o-matic
+
+MY_P="portmedia-code-r${PV}"
+
+DESCRIPTION="Library for real time MIDI input and output"
+HOMEPAGE="http://portmedia.sourceforge.net/"
+SRC_URI="mirror://sourceforge/project/portmedia/${MY_P}.zip"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug doc java python static-libs test-programs"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+BDEPEND="
+ app-arch/unzip
+ doc? (
+ app-doc/doxygen
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-latexextra
+ virtual/latex-base
+ )
+ python? ( >=dev-python/cython-0.12.1[${PYTHON_USEDEP}] )
+"
+CDEPEND="
+ media-libs/alsa-lib
+ python? ( ${PYTHON_DEPS} )
+"
+RDEPEND="${CDEPEND}
+ java? ( >=virtual/jre-1.8:* )
+"
+DEPEND="
+ ${CDEPEND}
+ java? ( >=virtual/jdk-1.8:* )
+"
+
+S="${WORKDIR}/${MY_P}/${PN}/trunk"
+MAKEOPTS+=" -j1"
+
+PATCHES=(
+ # fix parallel make failures, fix java support, and allow optional
+ # components like test programs and static libs to be skipped
+ "${FILESDIR}"/${P}-cmake.patch
+
+ # add include directories and remove references to missing files
+ "${FILESDIR}"/${PN}-217-r4-python.patch
+)
+
+pkg_setup() {
+ use java && java-pkg-opt-2_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ # install wrapper for pmdefaults
+ if use java ; then
+ cat > pm_java/pmdefaults/pmdefaults <<-EOF
+ #!/bin/sh
+ java -Djava.library.path="${EPREFIX}/usr/$(get_libdir)/" \\
+ -jar "${EPREFIX}/usr/share/${PN}/lib/pmdefaults.jar"
+ EOF
+ [[ $? -ne 0 ]] && die "cat pmdefaults failed"
+ fi
+}
+
+src_configure() {
+ if use debug ; then
+ CMAKE_BUILD_TYPE=Debug
+ else
+ CMAKE_BUILD_TYPE=Release
+ fi
+
+ local mycmakeargs=(
+ -DPORTMIDI_ENABLE_JAVA=$(usex java)
+ -DPORTMIDI_ENABLE_STATIC=$(usex static-libs)
+ -DPORTMIDI_ENABLE_TEST=$(usex test-programs)
+ )
+
+ if use java ; then
+ mycmakeargs+=(-DJAR_INSTALL_DIR="${EPREFIX}/usr/share/${PN}/lib")
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use python ; then
+ sed -i -e "/library_dirs=.*linux/s#./linux#${CMAKE_BUILD_DIR}#" pm_python/setup.py || die
+ pushd pm_python > /dev/null
+ append-ldflags -L"${BUILD_DIR}"
+ distutils-r1_src_compile
+ popd > /dev/null
+ fi
+
+ if use doc ; then
+ doxygen || die "doxygen failed"
+ pushd latex > /dev/null
+ VARTEXFONTS="${T}"/fonts emake
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ dodoc CHANGELOG.txt README.txt pm_linux/README_LINUX.txt
+
+ use doc && dodoc latex/refman.pdf
+
+ if use python ; then
+ pushd pm_python > /dev/null
+ distutils-r1_src_install
+ popd > /dev/null
+ fi
+
+ if use java ; then
+ newdoc pm_java/README.txt README_JAVA.txt
+ newicon pm_java/pmdefaults/pmdefaults-icon.png pmdefaults.png
+ make_desktop_entry pmdefaults Pmdefaults pmdefaults "AudioVideo;Audio;Midi;"
+ fi
+
+ if use test-programs ; then
+ exeinto /usr/$(get_libdir)/${PN}
+ local app
+ for app in latency midiclock midithread midithru mm qtest sysex test ; do
+ doexe "${BUILD_DIR}"/${app}
+ done
+ fi
+}
diff --git a/media-libs/raptor/Manifest b/media-libs/raptor/Manifest
index 8ea11306d5a4..d8283ff2c368 100644
--- a/media-libs/raptor/Manifest
+++ b/media-libs/raptor/Manifest
@@ -1,5 +1,6 @@
+AUX 0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch 1197 BLAKE2B f570a9a479e9d73f506c16dc7c3a75badf5da2e2407173b1ddd6ed8374f269ca628ea1b84adf94ac3b055db9a1d74f812db9557b96c92300f53c60a5048728a6 SHA512 1d392b6fc41d59349b75e9ab5adcf95a545c02709ec2a71b1855f98a444c9e753ca44464264c624fcaf6e49404f8f92d7aa7b85dfacecb1c7c28f3960e9c4fb9
AUX raptor-2.0.15-dont_use_curl-config.patch 1681 BLAKE2B 5c3b241836e04dabbcd6fd9db6e89225fcd8cf4c1eed24dff7bb5348d7a0985633a7f9173a5279b04ec277ad0f775a18c52ae33af86b6522a21a3e63123d162d SHA512 28e3137592c14dcf9fc1d8401e6bc58af7f1abcab4886acde42a03dd7b61aa9b176672300951f7b4fcdf5128ce445f12594f7a09444331d1d6c34aaa7a4b9cfc
AUX raptor-2.0.15-heap-overflow.patch 1708 BLAKE2B cea8df63861760fe55f1320cbc0833d814c38148b3d5f2b7163348de48bd95a37ee3000d312ce76879c798182f74d60f49fcef89f5f051bd40febc0c1da68099 SHA512 f7df0ec3123ac8ec9f2852dfb54e380d210446a36ab2f74aa9d2dcb8346162046d239b4db9a0747b18e3d19f4dc1ce41d194557c5e53027a3618e81b7b251d3d
DIST raptor2-2.0.15.tar.gz 1886657 BLAKE2B 0a39c7b5705bfbf2daa0ca633f79693953b4dfe24c144008d1646a9840a36d4d7ce153b527450647127ec2522047dbd0a6e71f307ee5656951f7e4b610adfd22 SHA512 563dd01869eb4df8524ec12e2c0a541653874dcd834bd1eb265bc2943bb616968f624121d4688579cdce11b4f00a8ab53b7099f1a0850e256bb0a2c16ba048ee
-EBUILD raptor-2.0.15-r2.ebuild 1634 BLAKE2B 15757b722752da142e88e0224b77725c1ec60479f5610521aff75145cc3dfba266b78da064d381fcbd1ae48006538008edddf4e5587acbb73986727d0c59517f SHA512 4fb565b6dfe1f35206f535051fb7f8c067d328ada3872ab27ed54c6dedd4b1c933e17b93d33eafa0c9566ded69c6249fc17c01f37b99036cf1f22be8d747f1f6
+EBUILD raptor-2.0.15-r3.ebuild 1713 BLAKE2B 9c61a997c410dc4600384ec53b8995ea4782dd2169179c49073b0812953ef399a9ce360b8b6c4d626aae7351e80d50763abe76ea2c85eb9c482bbef04817ec6b SHA512 bb56a414bd06bcf3ee8a656e87e1e7171e2e7fd4bf3c690995d97e3aedd7a99418083f19a0ab2da8772ea6d985a888757e8ba393d02a1c9298c1eaabd7f06ad5
MISC metadata.xml 337 BLAKE2B 6244cd4ab5d8d13437590c4bbb672cb9b5ad47f7e70d30adda368737d745daf4df249eb2166d2ab8335fe0a0fec5b8d3afa9ec091cc6ddcaaf0f2d05f9425741 SHA512 3a2c420495274cfca80f0103066b282b9f1301786a8cbde76b894fac721030bee949fc468c92841698038b991b07fa66f15891392784041a87f655d1860fd11c
diff --git a/media-libs/raptor/files/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch b/media-libs/raptor/files/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch
new file mode 100644
index 000000000000..dc693dfec222
--- /dev/null
+++ b/media-libs/raptor/files/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch
@@ -0,0 +1,32 @@
+From a549457461874157c8c8e8e8a6e0eec06da4fbd0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
+Date: Tue, 24 Nov 2020 10:30:20 +0000
+Subject: [PATCH] CVE-2020-25713 raptor2: malformed input file can lead to a
+ segfault
+
+due to an out of bounds array access in
+raptor_xml_writer_start_element_common
+
+See:
+https://bugs.mageia.org/show_bug.cgi?id=27605
+https://www.openwall.com/lists/oss-security/2020/11/13/1
+https://gerrit.libreoffice.org/c/core/+/106249
+---
+ src/raptor_xml_writer.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/raptor_xml_writer.c b/src/raptor_xml_writer.c
+index 56993dc3..4426d38c 100644
+--- a/src/raptor_xml_writer.c
++++ b/src/raptor_xml_writer.c
+@@ -227,7 +227,7 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer,
+
+ /* check it wasn't an earlier declaration too */
+ for(j = 0; j < nspace_declarations_count; j++)
+- if(nspace_declarations[j].nspace == element->attributes[j]->nspace) {
++ if(nspace_declarations[j].nspace == element->attributes[i]->nspace) {
+ declare_me = 0;
+ break;
+ }
+--
+2.28.0
diff --git a/media-libs/raptor/raptor-2.0.15-r2.ebuild b/media-libs/raptor/raptor-2.0.15-r3.ebuild
index e2a831c99843..1f3f7e84c669 100644
--- a/media-libs/raptor/raptor-2.0.15-r2.ebuild
+++ b/media-libs/raptor/raptor-2.0.15-r3.ebuild
@@ -41,6 +41,7 @@ HTML_DOCS=( {NEWS,README,RELEASE,UPGRADING}.html )
PATCHES=(
"${FILESDIR}/${P}-heap-overflow.patch"
"${FILESDIR}/${P}-dont_use_curl-config.patch" #552474
+ "${FILESDIR}/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch"
)
src_prepare() {
diff --git a/media-libs/rlottie/Manifest b/media-libs/rlottie/Manifest
index 328d134b11f5..25bea1164f33 100644
--- a/media-libs/rlottie/Manifest
+++ b/media-libs/rlottie/Manifest
@@ -1,3 +1,5 @@
DIST rlottie-0.2-1.tar.gz 3516947 BLAKE2B d5f6b643c910e0b831be223be4fcff3d42cde8239b01d413f2805eeccf2665abfbd209ee6877358c2434d3bc82ea7c5b3849f4dca1d0796436e47ffa6bcfed64 SHA512 1f645ae998ddbe83e4911addf28ec24ae3ff33f6439a9fb6c1e56986b46ac17dba155773ab02a59712e781febb31709a99075a3fbcda6136a0cb43dbd7c753de
+DIST rlottie-0.2_p20210405.tar.gz 4048368 BLAKE2B 46875135de630b8cae164bf9714abbfad389853aabf7e642c612b54ce50a3a0c105b57a314f0731aa69b4fd023e3638c122f0335a7ae886253a7bea0a5b3d51e SHA512 a0382bd9561cc47daafc0742db24c55efa25ec1c8e0d865ea49cf11d8f082b9f860dd673f4d0fbf95e02da708da164bc9a87c66b76cd58becf983c968e7aeb81
EBUILD rlottie-0.2.ebuild 879 BLAKE2B b4a7951db369fff6b8a6cb4925903d2d59e7adaaf1a5ad4ce90299f2671f22a59ae0b918113d9f2038358fab2341d5a40c9db37a143e0b6e96e661ed4348ebb9 SHA512 4d2850e75042f6d0ed8438425025a8280703295062f8482e24cc44202953e37c48a0b278645d7c124d47e3580a170975b7d23d36393fdc510a683c020ef9f4ac
+EBUILD rlottie-0.2_p20210405.ebuild 967 BLAKE2B 25e1149299260958007e592ccf4ffddc9c8b180df6e60b8dea9e862687ec0cae8ac2d58999d03267bd5e6e2707dfea95455fa1c8bb7d3949b0ee96fa68e0e73d SHA512 41c9a7201b7cc376f110df4de970819e9c0b6a78570d4c6e8f65a6a3af0e80a9a12a01fbb90db35a0a7fc86981448a35e882db51280705ae4505bb0e344355c0
MISC metadata.xml 901 BLAKE2B 0f2b146bafcbff57e44a91a21176114d15c9d81a076cc42f3d57e3849d1b3af3d46eb45bc74cf6e524679677b5394f440dc762c87ddc3652d0b754ebd62907b5 SHA512 f7e80a3946b2462a3718f508be57cdbbc3c85c632778b58393f467cfa5c4e80b96f3f264251d9fbb9ce4cf26e4907e534ee758c77661504f05f73577c4c06fab
diff --git a/media-libs/rlottie/rlottie-0.2_p20210405.ebuild b/media-libs/rlottie/rlottie-0.2_p20210405.ebuild
new file mode 100644
index 000000000000..6e7414259752
--- /dev/null
+++ b/media-libs/rlottie/rlottie-0.2_p20210405.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2019-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+MY_COMMIT="7c5b40cbb87422e5a74691d4d9907948c8c0d479"
+
+DESCRIPTION="A platform independent standalone library that plays Lottie Animations"
+HOMEPAGE="https://www.tizen.org/ https://github.com/Samsung/rlottie"
+SRC_URI="https://github.com/Samsung/rlottie/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD FTL JSON MIT"
+SLOT="0/0.2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug test"
+
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-cpp/gtest )"
+
+S="${WORKDIR}/rlottie-${MY_COMMIT}"
+
+src_configure() {
+ local emesonargs=(
+ -D cache=true
+ -D module=true
+ -D thread=true
+
+ -D cmake=false
+ -D example=false
+
+ $(meson_use debug dumptree)
+ $(meson_use debug log)
+ $(meson_use test)
+ )
+
+ meson_src_configure
+}
+
+src_test() {
+ cd "${BUILD_DIR}" || die "Failed to switch into BUILD_DIR."
+ eninja test
+}
diff --git a/media-libs/speexdsp/Manifest b/media-libs/speexdsp/Manifest
index 4e38f1a3dfe1..af589e4cbb1d 100644
--- a/media-libs/speexdsp/Manifest
+++ b/media-libs/speexdsp/Manifest
@@ -1,6 +1,9 @@
+AUX speexdsp-1.2.0-configure.patch 1092 BLAKE2B a4629cb00d1920133db30cf1cbdaade58fe69176515c75f140f9ae9060d3111f8d88b65ce67f3bd6c7d86f60db25d15997182865e6a528a8e20603f3edb6544c SHA512 0c6f1b8ae83e98c8899649e3f108ccaad89286db317e5c3f19bd0d78f71839b92b10125ba09b640453d299b3343bfaec128ae72daff72f37f95cbf38652980dd
AUX speexdsp-1.2_rc3-config_types.h.patch 2188 BLAKE2B 1e0c25b5e65a5999f5284abf0516aee5bb5ed0906c46d5d1e44b406236404ed00a8f0b0df5e6093a7cbdb10c453d4ab69b8df63ebb127d47a6930d546476099f SHA512 075a88f7f16d4744c95a9208ff4e803bfc28bff99113c3e919a9ce24c8e6bf91eedcbe9d487b668428db357092cc5db455e6256020cec598120c971734258b07
AUX speexdsp-1.2_rc3-configure.patch 1506 BLAKE2B 76276ba7cc0c7143da55d90be9a60ea697dc13f9ad65d7d24a83606b14c543700788e9213d1562371203ace9d45131cb52103d7f045ddf17adc0e30fd3876013 SHA512 95a95e5ca052b6ab3091ce9c461e7356f029e65b47a0a0f291448325acceb23c5cb12d81dbdecec13945b70fa8161e479bc6767de484c2c2f13a5299a3b9304c
AUX speexdsp-1.2_rc3-overflow.patch 2211 BLAKE2B 36a5aaedd730d8847046ce8cb9453678cf7aa503e060b25fb24e57516bbaaa7b987d3abb93fab741933c3fd43c490a090ac9fd64a6fbb2496f3a0364029c6b50 SHA512 f948be7513ed33a133a19bf571b8b1395f37b86715e2426a59105494d16c269c54c3a32c916f89af7e5b4b1d4aff90839e2b1ed2b13de482e54ac05bef449b31
+DIST speexdsp-1.2.0.tar.gz 919621 BLAKE2B 70c7d07f4b23abbb70cfb212a6541288c71f57fffd5fe22ddd94901a7d01fa403a69b7884e3a4a2267ffd45a7e053b1ae7c7fd662e57053a06d4a7efb7889610 SHA512 e357cd5377415ea66c862302c7cf8bf6a10063cacd903f0846478975b87974cf5bdf00e2c6759d8f4f453c4c869cf284e9dc948a84a83d7b2ab96bd5405c05ec
DIST speexdsp-1.2rc3.tar.gz 901771 BLAKE2B 85d047df82fc06906598da39ae653aa245c246bfea75c02d25f7811983babdab6a8499c9b563e0d7d2145fa490674df2cf0a05989884ffb3c2c2a183415ce841 SHA512 29dfa8345df025eeb076561648a9b5c0485692be699b6da3c2a3734b4329187a1c2eb181252f4df12b21f1309ecdf59797437dfb123d160fd723491ab216e858
+EBUILD speexdsp-1.2.0.ebuild 1383 BLAKE2B 7a64c619b06b26293b7c77f9c06ef884a0445807c8f96967f907a1aaf4089fa8c260297f43525d776bc2d1ca1245046603a501137d7f7ba18d355956031ad765 SHA512 12d253f8c2c073f99e21a1f908c08744f7fbaeb004273f08ef6e91ffdf7b4eed3422b08b4a8f3e14ea1f7ea0cf3db680384cb01068c7a796f4cfb92f0068ef90
EBUILD speexdsp-1.2_rc3-r3.ebuild 1452 BLAKE2B fb1c74522d2ede3f6c2e85c31259beb4fa6f62173f57a2e457ba2b31a7602501094c15616d025d18262710cc9890d3190951e37dfd26d9f5f3ef6b2d3825abb5 SHA512 e830cc39bbacf1af828553f4beb987055975de1574bb0089662232d82a469046750977d271958b6119ade46528b3518892845dbfa23cc6e9f90b3904c0f75b6d
MISC metadata.xml 342 BLAKE2B 5b793ea5060e3e8359d6b50ebd5211471de0d72608086d1d0a67c655cc30c15e0b0db4545a578882144f9f1f4913779037ff76aeeb94002db2b162db78a6364e SHA512 32081e424d3f4ad3fd0ef4979c339d1139cb2298e6703210ff741b77a8b3bf2e1d4b550b0d76a1bd0c4dc5ac465b3ebdd1fe86da45d46586cd3560261f73c457
diff --git a/media-libs/speexdsp/files/speexdsp-1.2.0-configure.patch b/media-libs/speexdsp/files/speexdsp-1.2.0-configure.patch
new file mode 100644
index 000000000000..1983e4bff3b2
--- /dev/null
+++ b/media-libs/speexdsp/files/speexdsp-1.2.0-configure.patch
@@ -0,0 +1,41 @@
+--- speexdsp-1.2.0/configure.ac
++++ speexdsp-1.2.0/configure.ac
+@@ -152,9 +152,17 @@
+ if test "x$enableval" != xno; then
+ has_sse=yes
+ has_sse2=yes
+-CFLAGS="$CFLAGS -O3 -msse -msse2"
++CFLAGS="$CFLAGS -msse"
+ else
+ has_sse=no
++fi
++])
++
++AC_ARG_ENABLE(sse2, [ --enable-sse2 Enable SSE2 support], [
++if test "x$enableval" != xno; then
++has_sse2=yes
++CFLAGS="$CFLAGS -msse2"
++else
+ has_sse2=no
+ fi
+ ])
+@@ -163,7 +171,7 @@
+ if test "x$enableval" != xno; then
+ has_neon=yes
+ AS_CASE(["$host"],
+- [arm*], [CFLAGS="$CFLAGS -O3 -march=armv7-a -mfpu=neon"]
++ [arm*], [CFLAGS="$CFLAGS -mfpu=neon"]
+ )
+ else
+ has_neon=no
+--- speexdsp-1.2.0/libspeexdsp/Makefile.am
++++ speexdsp-1.2.0/libspeexdsp/Makefile.am
+@@ -29,7 +29,7 @@
+ pseudofloat.h smallft.h vorbis_psy.h resample_sse.h resample_neon.h
+
+ libspeexdsp_la_LDFLAGS = -no-undefined -version-info @SPEEXDSP_LT_CURRENT@:@SPEEXDSP_LT_REVISION@:@SPEEXDSP_LT_AGE@
+-libspeexdsp_la_LIBADD = $(LIBM)
++libspeexdsp_la_LIBADD = $(LIBM) $(FFT_LIBS)
+
+ if BUILD_EXAMPLES
+ noinst_PROGRAMS = testdenoise testecho testjitter testresample testresample2
diff --git a/media-libs/speexdsp/speexdsp-1.2.0.ebuild b/media-libs/speexdsp/speexdsp-1.2.0.ebuild
new file mode 100644
index 000000000000..9a9d4e43273a
--- /dev/null
+++ b/media-libs/speexdsp/speexdsp-1.2.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic multilib-minimal
+
+MY_P=${P/_}
+MY_P=${MY_P/_p/.}
+
+DESCRIPTION="Audio compression format designed for speech -- DSP"
+HOMEPAGE="https://www.speex.org/"
+SRC_URI="https://downloads.xiph.org/releases/speex/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+IUSE="cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_arm_neon"
+
+RDEPEND="!<media-libs/speex-1.2.0"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-configure.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e 's:noinst_PROGRAMS:check_PROGRAMS:' \
+ libspeexdsp/Makefile.am || die
+
+ eautoreconf
+
+ append-lfs-flags
+}
+
+multilib_src_configure() {
+ # Can also be configured with one of:
+ # --enable-fixed-point (no floating point)
+ # --with-fft=proprietary-intel-mkl (mkl)
+ # --with-fft=gpl-fftw3 (fftw)
+ ECONF_SOURCE="${S}" econf \
+ --disable-static \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_arm_neon neon)
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${ED}" -name '*.la' -type f -delete || die
+}
diff --git a/media-libs/tg_owt/Manifest b/media-libs/tg_owt/Manifest
index 8fd382f5edd7..9391cfceae9e 100644
--- a/media-libs/tg_owt/Manifest
+++ b/media-libs/tg_owt/Manifest
@@ -1,5 +1,8 @@
+AUX Allow-using-packaged-third_party.patch 15523 BLAKE2B c6513ada2654d0c100054c8dc8781e50026681bb315b85a7d7fd906fd5b2d9c29b55bb86d2b8bb9a8fd6eaeb5f97b7e0fcea2c0122f6faa5d048631c6f72c093 SHA512 e89bbde19f3f91037311e67c6effb8b222da769f3b01268f3e11e33a70959c792b1f46cb968363ef26acf70c0d4a45008a7b42444e97668ad7ce9594098f4333
DIST libvpx-5b63f0f821e94f8072eb483014cfc33b05978bb9.tar.gz 5337558 BLAKE2B 795f613cee5efc4f6382b09063978b772ebb283fb1f5f621f5fbac018a6aca4721319de89dba02cf66202fe92bf9df681c27b94657a67acea66293b9cf3e1b0c SHA512 ad151972dc6077ddc520d7b6aa14d64e3183e010ceddd5acc6e2d9407f3476006a92461f61662b826feab623a65e748df60d5478af56bd657fbacbdb71dddec6
DIST libyuv-ad890067f661dc747a975bc55ba3767fe30d4452.tar.gz 473845 BLAKE2B 664be51c166440e6b03fa98f65d907efc446800804058a5ea7fdf944e12cb1237a1487e83fbe9a2f1ce4c73521234e43632f921ad0333507737d81e1cb23ce8f SHA512 f97529b80a786e2e92443caabebd6d85a42641e10c3d2940b0f69bedf3b8a96c69c3247abddd059c4ddd6f78107ab7214222a4267a559fc2086c8edf5ea1afbc
DIST tg_owt-0_pre20210309.tar.gz 16159542 BLAKE2B 354992fca17f6217daa7294a8b60aa96f16b1198a07c79599ce676770cde068bf3ebf83c3935613ab181d4f7f23abbf2e4dd3ba41988b7505f27f537ada87fc2 SHA512 eca2c249d4837f8564218ea969390579b7f07c40879a80249310d978ba6d8865b85ec12e324fdba92af2d0b9bd501f2328fad5475028211013239dc35f508bb0
+DIST tg_owt-0_pre20210422.tar.gz 16156802 BLAKE2B 823248e31d7abc91402c32aa0f062f1a77a3d8c4ebf63b4e73a8f290a5691e002a6ec09a5b7ffed1087565b9a419646924030dfb3eb3d0d6aec8cfc51cf1bf73 SHA512 24b66840a54d102b96bc32636dc8b85d31f74b344244985be929db4e14b13ee60f1fbc43269526352064cee8066839c886fae1aff95276089ab60d0a14de9ec6
EBUILD tg_owt-0_pre20210309-r1.ebuild 2572 BLAKE2B 1a6fa3110b55b71c5fd5b35c8a2143af554d10b1d76ccdd08f8deaf73f2ad26d48eda46cc54879d0a8e013bb09995c0cde72b520508461de6b8b87208e628e48 SHA512 f3fd874d29fa468266c918d0882168bccae193b4a5cc90ef80488a10de8c83a36003d85c90ab302d9773ef0fc7d5ae6947287d0ecf26fc21cb6d3c98d462f304
+EBUILD tg_owt-0_pre20210422.ebuild 2691 BLAKE2B 693fe275fc65797c2b3a6b96329f6e7d00c3140d85fa18a1a1fc48f3a32308f1c4c7476ededb3a02a33ef771f6388fef226cb78df826ca6a87a4cda52afd7f66 SHA512 377a50ab8f04548de572790e31f642c7be69305d706651a4ff15fa0c0e94c9ec7f39fba3c689960214b9222edc225db2475393df3788e68567bc9fa1cfebb36b
MISC metadata.xml 409 BLAKE2B 1d4ff3a79885150e6c29f8eda10d9ded0bebf9635033a3e76bbda7f223767cac0627599537faeb2827e8424fa3791eae0244ac1033486900c0bfbf3448f14b79 SHA512 cd254c020f0e32e28d91bf1d404ccb631e837962f9fcbfddb0cea4a0e54d82076d90eea987f3bcdcd9e689fbafe069ee671005f8edf6b8acf45d8ba99a18eae2
diff --git a/media-libs/tg_owt/files/Allow-using-packaged-third_party.patch b/media-libs/tg_owt/files/Allow-using-packaged-third_party.patch
new file mode 100644
index 000000000000..17025826a48a
--- /dev/null
+++ b/media-libs/tg_owt/files/Allow-using-packaged-third_party.patch
@@ -0,0 +1,487 @@
+From dbfceeea4280412358202d511e02e95a040d0297 Mon Sep 17 00:00:00 2001
+From: mid-kid <esteve.varela@gmail.com>
+Date: Sun, 7 Mar 2021 17:12:34 +0100
+Subject: [PATCH] Allow using packaged third_party
+
+This patch adds support for building tg_owt using system libraries
+instead of bundled third_party modules.
+
+Some libraries haven't been converted for the following reasons:
+- pffft: No stable ABI, patched, and not available in major distributions.
+- rnnoise: All of the remaining files are custom.
+- libsrtp: This project uses private APIs.
+- libyuv: No stable ABI, frequent breaking updates, and not available in major distributions.
+
+Note that: This still installs the system headers for the third_party
+modules (albeit in a convenient sub-directory). I haven't figured out a
+method to avoid this.
+---
+ CMakeLists.txt | 78 +++++++---------
+ cmake/external.cmake | 91 +++++++++++++++++++
+ cmake/libabsl.cmake | 2 +-
+ cmake/libevent.cmake | 5 +-
+ cmake/libopenh264.cmake | 17 +++-
+ cmake/libpffft.cmake | 2 +-
+ cmake/librnnoise.cmake | 2 +-
+ cmake/libsrtp.cmake | 2 +-
+ cmake/libusrsctp.cmake | 2 +-
+ cmake/libvpx.cmake | 2 +-
+ cmake/libwebrtcbuild.cmake | 4 +-
+ cmake/libyuv.cmake | 2 +-
+ cmake/tg_owtConfig.cmake | 5 +
+ .../codecs/h264/h264_encoder_impl.cc | 8 +-
+ .../codecs/h264/h264_encoder_impl.h | 2 +-
+ src/rtc_base/task_queue_libevent.cc | 2 +-
+ 16 files changed, 166 insertions(+), 60 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7f8e3bd..3462351 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -60,7 +60,6 @@ include(cmake/librnnoise.cmake)
+ include(cmake/libsrtp.cmake)
+ include(cmake/libusrsctp.cmake)
+ include(cmake/libvpx.cmake)
+-include(cmake/libwebrtcbuild.cmake)
+ include(cmake/libyuv.cmake)
+ if (NOT WIN32 AND NOT APPLE)
+ include(cmake/libevent.cmake)
+@@ -80,41 +79,19 @@ init_target(tg_owt)
+
+ set_target_properties(tg_owt PROPERTIES SOVERSION 0 VERSION 0.0.0)
+
++target_link_libraries(tg_owt
++PRIVATE
++ tg_owt::libpffft
++ tg_owt::librnnoise
++ tg_owt::libsrtp
++ tg_owt::libyuv
++)
++
+ if (is_x86 OR is_x64)
+ target_link_libraries(tg_owt
+- PUBLIC
+- tg_owt::libwebrtcbuild
+ PRIVATE
+ tg_owt::tg_owt_avx2
+ tg_owt::tg_owt_sse2
+- tg_owt::libabsl
+- tg_owt::libopenh264
+- tg_owt::libpffft
+- tg_owt::librnnoise
+- tg_owt::libsrtp
+- tg_owt::libusrsctp
+- tg_owt::libvpx
+- tg_owt::libvpx_mmx
+- tg_owt::libvpx_sse2
+- tg_owt::libvpx_ssse3
+- tg_owt::libvpx_sse4
+- tg_owt::libvpx_avx
+- tg_owt::libvpx_avx2
+- tg_owt::libyuv
+- )
+-else()
+- target_link_libraries(tg_owt
+- PUBLIC
+- tg_owt::libwebrtcbuild
+- PRIVATE
+- tg_owt::libabsl
+- tg_owt::libopenh264
+- tg_owt::libpffft
+- tg_owt::librnnoise
+- tg_owt::libsrtp
+- tg_owt::libusrsctp
+- tg_owt::libvpx
+- tg_owt::libyuv
+ )
+ endif()
+
+@@ -131,9 +108,6 @@ PRIVATE
+ ${libopenh264_yasm_objects}
+ )
+
+-if (NOT WIN32 AND NOT APPLE)
+- target_link_libraries(tg_owt PRIVATE tg_owt::libevent)
+-endif()
+ if (APPLE)
+ target_link_libraries(tg_owt PUBLIC tg_owt::libsdkmacos)
+ endif()
+@@ -141,6 +115,17 @@ endif()
+ link_openssl(tg_owt)
+ link_ffmpeg(tg_owt)
+ link_opus(tg_owt)
++link_libabsl(tg_owt)
++link_libopenh264(tg_owt)
++link_libusrsctp(tg_owt)
++link_libvpx(tg_owt)
++
++if (NOT WIN32 AND NOT APPLE)
++ link_libevent(tg_owt)
++endif()
++
++include(cmake/libwebrtcbuild.cmake)
++target_link_libraries(tg_owt PUBLIC tg_owt::libwebrtcbuild)
+
+ function(add_sublibrary postfix)
+ add_library(tg_owt_${postfix} OBJECT)
+@@ -149,9 +134,8 @@ function(add_sublibrary postfix)
+ target_link_libraries(tg_owt_${postfix}
+ PUBLIC
+ tg_owt::libwebrtcbuild
+- PRIVATE
+- tg_owt::libabsl
+ )
++ link_libabsl(tg_owt_${postfix})
+ target_include_directories(tg_owt_${postfix}
+ PUBLIC
+ $<BUILD_INTERFACE:${webrtc_loc}>
+@@ -2165,7 +2149,7 @@ else()
+ endif()
+
+ set(platform_export)
+-if (NOT WIN32 AND NOT APPLE)
++if (NOT WIN32 AND NOT APPLE AND NOT LIBEVENT_FOUND)
+ set(platform_export
+ libevent
+ )
+@@ -2198,14 +2182,9 @@ endif()
+
+ set(export_targets
+ ${tg_owt_export}
+- libabsl
+- libopenh264
+ libpffft
+ librnnoise
+ libsrtp
+- libusrsctp
+- libvpx
+- ${vpx_export}
+ libwebrtcbuild
+ libyuv
+ ${platform_export}
+@@ -2214,6 +2193,19 @@ if (TG_OWT_USE_PROTOBUF)
+ list(APPEND export_targets proto)
+ endif()
+
++if (NOT absl_FOUND)
++ list(APPEND export_targets libabsl)
++endif()
++if (NOT LIBOPENH264_FOUND)
++ list(APPEND export_targets libopenh264)
++endif()
++if (NOT LIBUSRSCTP_FOUND)
++ list(APPEND export_targets libusrsctp)
++endif()
++if (NOT LIBVPX_FOUND)
++ list(APPEND export_targets libvpx ${vpx_export})
++endif()
++
+ export(
+ TARGETS ${export_targets}
+ NAMESPACE tg_owt::
+@@ -2223,7 +2215,7 @@ export(
+ configure_file(
+ "cmake/tg_owtConfig.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/tg_owtConfig.cmake"
+- COPYONLY
++ @ONLY
+ )
+
+ target_include_directories(tg_owt
+diff --git a/cmake/external.cmake b/cmake/external.cmake
+index 2132546..e09af96 100644
+--- a/cmake/external.cmake
++++ b/cmake/external.cmake
+@@ -105,3 +105,94 @@ function(link_libjpeg target_name)
+ )
+ endif()
+ endfunction()
++
++# libabsl
++# HINT: System abseil should be built with -DCMAKE_CXX_STANDARD=17
++function(link_libabsl target_name)
++ if (TG_OWT_PACKAGED_BUILD)
++ find_package(absl)
++ set(absl_FOUND ${absl_FOUND} PARENT_SCOPE)
++ if (absl_FOUND)
++ target_link_libraries(${target_name} INTERFACE absl::strings)
++ endif()
++ endif()
++ if (NOT absl_FOUND)
++ target_link_libraries(${target_name} PRIVATE tg_owt::libabsl)
++ endif()
++endfunction()
++
++# libopenh264
++function(link_libopenh264 target_name)
++ if (TG_OWT_PACKAGED_BUILD)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(LIBOPENH264 openh264)
++ set(LIBOPENH264_FOUND ${LIBOPENH264_FOUND} PARENT_SCOPE)
++ if (LIBOPENH264_FOUND)
++ target_link_libraries(${target_name} PRIVATE ${LIBOPENH264_LIBRARIES})
++ target_include_directories(${target_name} PRIVATE ${LIBOPENH264_INCLUDE_DIRS})
++ endif()
++ endif()
++ if (NOT LIBOPENH264_FOUND)
++ target_link_libraries(${target_name} PRIVATE tg_owt::libopenh264)
++ target_include_directories(${target_name} PRIVATE ${libopenh264_loc}/include)
++ endif()
++endfunction()
++
++# libusrsctp
++function(link_libusrsctp target_name)
++ if (TG_OWT_PACKAGED_BUILD)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(LIBUSRSCTP usrsctp)
++ set(LIBUSRSCTP_FOUND ${LIBUSRSCTP_FOUND} PARENT_SCOPE)
++ if (LIBUSRSCTP_FOUND)
++ target_link_libraries(${target_name} PRIVATE ${LIBUSRSCTP_LIBRARIES})
++ target_include_directories(${target_name} PRIVATE ${LIBUSRSCTP_INCLUDE_DIRS})
++ endif()
++ endif()
++ if (NOT LIBUSRSCTP_FOUND)
++ target_link_libraries(${target_name} PRIVATE tg_owt::libusrsctp)
++ endif()
++endfunction()
++
++# libvpx
++function(link_libvpx target_name)
++ if (TG_OWT_PACKAGED_BUILD)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(LIBVPX vpx>=1.10.0)
++ set(LIBVPX_FOUND ${LIBVPX_FOUND} PARENT_SCOPE)
++ if (LIBVPX_FOUND)
++ target_link_libraries(${target_name} PRIVATE ${LIBVPX_LIBRARIES})
++ target_include_directories(${target_name} PRIVATE ${LIBVPX_INCLUDE_DIRS})
++ endif()
++ endif()
++ if (NOT LIBVPX_FOUND)
++ target_link_libraries(${target_name} PRIVATE tg_owt::libvpx)
++ if (is_x86 OR is_x64)
++ target_link_libraries(${target_name}
++ PRIVATE
++ tg_owt::libvpx_mmx
++ tg_owt::libvpx_sse2
++ tg_owt::libvpx_ssse3
++ tg_owt::libvpx_sse4
++ tg_owt::libvpx_avx
++ tg_owt::libvpx_avx2
++ )
++ endif()
++ endif()
++endfunction()
++
++# libevent
++function(link_libevent target_name)
++ if (TG_OWT_PACKAGED_BUILD)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(LIBEVENT libevent)
++ set(LIBEVENT_FOUND ${LIBEVENT_FOUND} PARENT_SCOPE)
++ if (LIBEVENT_FOUND)
++ target_link_libraries(${target_name} PRIVATE ${LIBEVENT_LIBRARIES})
++ target_include_directories(${target_name} PRIVATE ${LIBEVENT_INCLUDE_DIRS})
++ endif()
++ endif()
++ if (NOT LIBEVENT_FOUND)
++ target_link_libraries(${target_name} PRIVATE tg_owt::libevent)
++ endif()
++endfunction()
+diff --git a/cmake/libabsl.cmake b/cmake/libabsl.cmake
+index 0cc8920..a82732a 100644
+--- a/cmake/libabsl.cmake
++++ b/cmake/libabsl.cmake
+@@ -1,4 +1,4 @@
+-add_library(libabsl OBJECT)
++add_library(libabsl OBJECT EXCLUDE_FROM_ALL)
+ init_target(libabsl)
+ add_library(tg_owt::libabsl ALIAS libabsl)
+
+diff --git a/cmake/libevent.cmake b/cmake/libevent.cmake
+index 0192896..31248fb 100644
+--- a/cmake/libevent.cmake
++++ b/cmake/libevent.cmake
+@@ -1,4 +1,4 @@
+-add_library(libevent OBJECT)
++add_library(libevent OBJECT EXCLUDE_FROM_ALL)
+ init_target(libevent)
+ add_library(tg_owt::libevent ALIAS libevent)
+
+@@ -40,7 +40,8 @@ PRIVATE
+ )
+
+ target_include_directories(libevent
++PUBLIC
++ $<BUILD_INTERFACE:${libevent_loc}>
+ PRIVATE
+ ${webrtc_loc}
+- ${libevent_loc}
+ )
+diff --git a/cmake/libopenh264.cmake b/cmake/libopenh264.cmake
+index 45ce7c9..7d4742e 100644
+--- a/cmake/libopenh264.cmake
++++ b/cmake/libopenh264.cmake
+@@ -1,4 +1,4 @@
+-add_library(libopenh264 OBJECT)
++add_library(libopenh264 OBJECT EXCLUDE_FROM_ALL)
+ init_target(libopenh264)
+ add_library(tg_owt::libopenh264 ALIAS libopenh264)
+
+@@ -207,6 +207,21 @@ set(include_directories
+
+ target_include_directories(libopenh264 PRIVATE ${include_directories})
+
++# Create include-able wels/ directory for public use of the library
++set(GEN_INC ${CMAKE_CURRENT_BINARY_DIR}/openh264_include)
++add_custom_command(OUTPUT ${GEN_INC}/wels
++COMMAND ${CMAKE_COMMAND} -E make_directory ${GEN_INC}/wels
++COMMAND ${CMAKE_COMMAND} -E copy
++ ${libopenh264_loc}/codec/api/svc/codec_api.h
++ ${libopenh264_loc}/codec/api/svc/codec_app_def.h
++ ${libopenh264_loc}/codec/api/svc/codec_def.h
++ ${libopenh264_loc}/codec/api/svc/codec_ver.h
++ ${GEN_INC}/wels
++VERBATIM
++)
++target_sources(libopenh264 PRIVATE ${GEN_INC}/wels)
++target_include_directories(libopenh264 PUBLIC $<BUILD_INTERFACE:${GEN_INC}>)
++
+ if (is_x86)
+ set(yasm_defines X86_32)
+ else()
+diff --git a/cmake/libpffft.cmake b/cmake/libpffft.cmake
+index fa2e66f..02c3db4 100644
+--- a/cmake/libpffft.cmake
++++ b/cmake/libpffft.cmake
+@@ -1,4 +1,4 @@
+-add_library(libpffft OBJECT)
++add_library(libpffft OBJECT EXCLUDE_FROM_ALL)
+ init_target(libpffft)
+ add_library(tg_owt::libpffft ALIAS libpffft)
+
+diff --git a/cmake/librnnoise.cmake b/cmake/librnnoise.cmake
+index 04f72ae..a3e682e 100644
+--- a/cmake/librnnoise.cmake
++++ b/cmake/librnnoise.cmake
+@@ -1,4 +1,4 @@
+-add_library(librnnoise OBJECT)
++add_library(librnnoise OBJECT EXCLUDE_FROM_ALL)
+ init_target(librnnoise)
+ add_library(tg_owt::librnnoise ALIAS librnnoise)
+
+diff --git a/cmake/libsrtp.cmake b/cmake/libsrtp.cmake
+index ce4ff64..4754f13 100644
+--- a/cmake/libsrtp.cmake
++++ b/cmake/libsrtp.cmake
+@@ -1,4 +1,4 @@
+-add_library(libsrtp OBJECT)
++add_library(libsrtp OBJECT EXCLUDE_FROM_ALL)
+ init_target(libsrtp)
+ add_library(tg_owt::libsrtp ALIAS libsrtp)
+
+diff --git a/cmake/libusrsctp.cmake b/cmake/libusrsctp.cmake
+index ad41d12..1dc5e5e 100644
+--- a/cmake/libusrsctp.cmake
++++ b/cmake/libusrsctp.cmake
+@@ -1,4 +1,4 @@
+-add_library(libusrsctp OBJECT)
++add_library(libusrsctp OBJECT EXCLUDE_FROM_ALL)
+ init_target(libusrsctp)
+ add_library(tg_owt::libusrsctp ALIAS libusrsctp)
+
+diff --git a/cmake/libvpx.cmake b/cmake/libvpx.cmake
+index e6775c4..0fdfbac 100644
+--- a/cmake/libvpx.cmake
++++ b/cmake/libvpx.cmake
+@@ -1,4 +1,4 @@
+-add_library(libvpx OBJECT)
++add_library(libvpx OBJECT EXCLUDE_FROM_ALL)
+ init_target(libvpx)
+ add_library(tg_owt::libvpx ALIAS libvpx)
+
+diff --git a/cmake/libwebrtcbuild.cmake b/cmake/libwebrtcbuild.cmake
+index 15f854e..8efd18d 100644
+--- a/cmake/libwebrtcbuild.cmake
++++ b/cmake/libwebrtcbuild.cmake
+@@ -3,9 +3,11 @@ add_library(tg_owt::libwebrtcbuild ALIAS libwebrtcbuild)
+
+ target_link_libraries(libwebrtcbuild
+ INTERFACE
+- tg_owt::libabsl
+ tg_owt::libyuv
+ )
++if (NOT absl_FOUND)
++ target_link_libraries(libwebrtcbuild INTERFACE tg_owt::libabsl)
++endif()
+
+ target_compile_definitions(libwebrtcbuild
+ INTERFACE
+diff --git a/cmake/libyuv.cmake b/cmake/libyuv.cmake
+index 881f9db..143e239 100644
+--- a/cmake/libyuv.cmake
++++ b/cmake/libyuv.cmake
+@@ -1,4 +1,4 @@
+-add_library(libyuv OBJECT)
++add_library(libyuv OBJECT EXCLUDE_FROM_ALL)
+ init_target(libyuv)
+ add_library(tg_owt::libyuv ALIAS libyuv)
+
+diff --git a/cmake/tg_owtConfig.cmake b/cmake/tg_owtConfig.cmake
+index d0001ac..e9f4388 100644
+--- a/cmake/tg_owtConfig.cmake
++++ b/cmake/tg_owtConfig.cmake
+@@ -1 +1,6 @@
++if (@absl_FOUND@)
++ include(CMakeFindDependencyMacro)
++ find_dependency(absl REQUIRED)
++endif()
++
+ include("${CMAKE_CURRENT_LIST_DIR}/tg_owtTargets.cmake")
+diff --git a/src/modules/video_coding/codecs/h264/h264_encoder_impl.cc b/src/modules/video_coding/codecs/h264/h264_encoder_impl.cc
+index ccf0bc5..85ddc90 100644
+--- a/src/modules/video_coding/codecs/h264/h264_encoder_impl.cc
++++ b/src/modules/video_coding/codecs/h264/h264_encoder_impl.cc
+@@ -29,10 +29,10 @@
+ #include "system_wrappers/include/metrics.h"
+ #include "third_party/libyuv/include/libyuv/convert.h"
+ #include "third_party/libyuv/include/libyuv/scale.h"
+-#include "third_party/openh264/src/codec/api/svc/codec_api.h"
+-#include "third_party/openh264/src/codec/api/svc/codec_app_def.h"
+-#include "third_party/openh264/src/codec/api/svc/codec_def.h"
+-#include "third_party/openh264/src/codec/api/svc/codec_ver.h"
++#include <wels/codec_api.h>
++#include <wels/codec_app_def.h>
++#include <wels/codec_def.h>
++#include <wels/codec_ver.h>
+
+ namespace webrtc {
+
+diff --git a/src/modules/video_coding/codecs/h264/h264_encoder_impl.h b/src/modules/video_coding/codecs/h264/h264_encoder_impl.h
+index 4eb4ad3..98e4c2f 100644
+--- a/src/modules/video_coding/codecs/h264/h264_encoder_impl.h
++++ b/src/modules/video_coding/codecs/h264/h264_encoder_impl.h
+@@ -25,7 +25,7 @@
+ #include "common_video/h264/h264_bitstream_parser.h"
+ #include "modules/video_coding/codecs/h264/include/h264.h"
+ #include "modules/video_coding/utility/quality_scaler.h"
+-#include "third_party/openh264/src/codec/api/svc/codec_app_def.h"
++#include <wels/codec_app_def.h>
+
+ class ISVCEncoder;
+
+diff --git a/src/rtc_base/task_queue_libevent.cc b/src/rtc_base/task_queue_libevent.cc
+index 38660cd..04bc278 100644
+--- a/src/rtc_base/task_queue_libevent.cc
++++ b/src/rtc_base/task_queue_libevent.cc
+@@ -27,7 +27,7 @@
+ #include "absl/strings/string_view.h"
+ #include "api/task_queue/queued_task.h"
+ #include "api/task_queue/task_queue_base.h"
+-#include "base/third_party/libevent/event.h"
++#include <event.h>
+ #include "rtc_base/checks.h"
+ #include "rtc_base/logging.h"
+ #include "rtc_base/numerics/safe_conversions.h"
+--
+2.26.3
+
diff --git a/media-libs/tg_owt/tg_owt-0_pre20210422.ebuild b/media-libs/tg_owt/tg_owt-0_pre20210422.ebuild
new file mode 100644
index 000000000000..c7df11e1b9c4
--- /dev/null
+++ b/media-libs/tg_owt/tg_owt-0_pre20210422.ebuild
@@ -0,0 +1,88 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+TG_OWT_COMMIT="18cb4cd9bb4c2f5f5f5e760ec808f74c302bc1bf"
+LIBYUV_COMMIT="ad890067f661dc747a975bc55ba3767fe30d4452"
+
+DESCRIPTION="WebRTC build for Telegram"
+HOMEPAGE="https://github.com/desktop-app/tg_owt"
+SRC_URI="https://github.com/desktop-app/tg_owt/archive/${TG_OWT_COMMIT}.tar.gz -> ${P}.tar.gz
+ https://archive.org/download/libyuv-${LIBYUV_COMMIT}.tar/libyuv-${LIBYUV_COMMIT}.tar.gz"
+# Fetch libyuv archive from: https://chromium.googlesource.com/libyuv/libyuv/+archive/${LIBYUV_COMMIT}.tar.gz
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+
+# Bundled libs:
+# - libyuv (no stable versioning, www-client/chromium and media-libs/libvpx bundle it)
+# - libsrtp (project uses private APIs)
+# - pffft (no stable versioning, patched)
+# media-libs/libjpeg-turbo is required for libyuv
+DEPEND="
+ dev-cpp/abseil-cpp:=[cxx17(+)]
+ dev-libs/libevent:=
+ dev-libs/openssl:=
+ dev-libs/protobuf:=
+ media-libs/libjpeg-turbo:=
+ >=media-libs/libvpx-1.10.0:=
+ media-libs/openh264:=
+ media-libs/opus
+ media-video/ffmpeg:=
+ net-libs/usrsctp
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}/${PN}-${TG_OWT_COMMIT}"
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+ cd "${S}/src/third_party/libyuv" || die
+ unpack "libyuv-${LIBYUV_COMMIT}.tar.gz"
+}
+
+src_prepare() {
+ # https://github.com/desktop-app/tg_owt/pull/55
+ eapply "${FILESDIR}/Allow-using-packaged-third_party.patch"
+
+ # We aren't installing any third_party headers
+ sed -i '/third_party\/libyuv/d' cmake/libyuv.cmake || die
+
+ # libvpx source files aren't included in the repository
+ sed -i '/include(cmake\/libvpx.cmake)/d' CMakeLists.txt || die
+
+ # Remove screen_drawer files that cause linking errors
+ # (not used right now I don't think, maybe in a future version)
+ # https://github.com/desktop-app/tg_owt/issues/58
+ sed -i -e '/desktop_capture\/screen_drawer\.cc/d' \
+ -e '/desktop_capture\/screen_drawer_lock_posix\.cc/d' CMakeLists.txt || die
+
+ # HACK
+ # build/headers don't have ppc64 condition and force SSE2.
+ # sed it out and force C version on ppc64
+ # without this linking tdesktop will fail with undef reference to `webrtc::VectorDifference_SSE2_W32
+ if use ppc64; then
+ sed -i 's/VectorDifference_SSE2_W.*/VectorDifference_C;/g' src/modules/desktop_capture/differ_block.cc || die
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # Defined by -DCMAKE_BUILD_TYPE=Release, avoids crashes
+ # see https://bugs.gentoo.org/754012
+ append-cppflags '-DNDEBUG'
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ # Save about 15MB of useless headers
+ rm -r "${ED}/usr/include/tg_owt/third_party" || die
+}
diff --git a/media-libs/zxing-cpp/Manifest b/media-libs/zxing-cpp/Manifest
index 9370551c35c1..7c1adbcb910b 100644
--- a/media-libs/zxing-cpp/Manifest
+++ b/media-libs/zxing-cpp/Manifest
@@ -1,3 +1,4 @@
+AUX zxing-cpp-1.1.1-gcc11.patch 612 BLAKE2B 661ce79b9d44667225b33480c2dcabeaa771acb35a8b908c76ca78571f360576c36889c1629a3eb22af316fcedbaece3a68713a39f3d6a8ec17f34d09ec19b0f SHA512 647f862468764b902fe7204c304e1e2d838efcfa226468027662942a7a6286dfdf5884bfae6d4f14e325d13ba40a20671a3ba72ec46db4417b451654c2806a09
DIST zxing-cpp-1.1.1.tar.gz 128925736 BLAKE2B d2d6b4b13c26ee1bf8c9f1188809207f895d9ab4bde83e7e06d85d7105c56021bb9f82f34b9f11e1c8ff5b82825de127d1bc873745fa6ef603a8d206f3eaedec SHA512 c7d97df147602e31e58eede54413814378895e9710cf266de984b22965a9a3f4c67648a0bf936a8bc8b213b45def59d1e5b34d6ce516265333dd2c0430554dc7
-EBUILD zxing-cpp-1.1.1.ebuild 581 BLAKE2B d8f997530e0fece0dc6f2e20bd1c7237e8c7d9fbb83e022a944546142cf4c4f1b8a82f74f1387ec57db065ff0280aeb68f2b27824cc4052e2a217d1825c7fc1d SHA512 4fbb4435837c59c75bcd075cd83304a405dc578d6e06414404a9c1a5ea2bf59e00320c0674158f3f16b37d2ae13f5800f1324a944fabe9703c86e2c65bfd6336
+EBUILD zxing-cpp-1.1.1.ebuild 625 BLAKE2B 460b22d28d1458b4affdb2be9e4b5cd71b849eabecbd05fbb0c486117bc5836fa73e05ee2895b701c2775155f9d1746085f522ced874f1f9c5a55a3fe650bc6a SHA512 73532b0a7fe4f8dc31b24d45cf173de9284c92344dae15981fdb9c0575acdb8f7da42cd640323a56f38ed3a27dd9012118d88b3bfa2a08782a35d3ab0044bd4a
MISC metadata.xml 249 BLAKE2B ad415db89e5dee1627aa77f44ded9d4e1e5b8217d06c7ca25bbaa3fe92ce67c2b1090957c45a821b407d7927e5af798498aa6a5b903895ee1af8ee20a446c7f7 SHA512 76a5a340b13f0053ca3c5e94ed24380ea8d29b45ac8655419e22eaadb1e4a827c04d2e7e36b65145c4964e6526f656618fc6ac144e277ef53cb7373e6239e3c3
diff --git a/media-libs/zxing-cpp/files/zxing-cpp-1.1.1-gcc11.patch b/media-libs/zxing-cpp/files/zxing-cpp-1.1.1-gcc11.patch
new file mode 100644
index 000000000000..13adad906c0d
--- /dev/null
+++ b/media-libs/zxing-cpp/files/zxing-cpp-1.1.1-gcc11.patch
@@ -0,0 +1,22 @@
+From 427e814ebcfd2e55e1c18531b7e4aa9d6a1ca6fc Mon Sep 17 00:00:00 2001
+From: Christophe Giboudeaux <christophe@krop.fr>
+Date: Tue, 9 Feb 2021 09:28:23 +0100
+Subject: [PATCH] Fix build with GCC 11
+
+Starting with GCC 11, the 'limits' header is not included transitively anymore.
+---
+ core/src/Pattern.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/core/src/Pattern.h b/core/src/Pattern.h
+index 4bbe6d26..c4a3f7c5 100644
+--- a/core/src/Pattern.h
++++ b/core/src/Pattern.h
+@@ -22,6 +22,7 @@
+ #include <cmath>
+ #include <cstddef>
+ #include <cstdint>
++#include <limits>
+ #include <numeric>
+ #include <vector>
+
diff --git a/media-libs/zxing-cpp/zxing-cpp-1.1.1.ebuild b/media-libs/zxing-cpp/zxing-cpp-1.1.1.ebuild
index a43d3881a651..3b38eb67cad9 100644
--- a/media-libs/zxing-cpp/zxing-cpp-1.1.1.ebuild
+++ b/media-libs/zxing-cpp/zxing-cpp-1.1.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,6 +16,8 @@ IUSE="test"
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${P}-gcc11.patch" )
+
src_configure() {
local mycmakeargs=(
-DBUILD_EXAMPLES=OFF # nothing is installed