summaryrefslogtreecommitdiff
path: root/media-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-04-11 08:43:59 +0100
committerV3n3RiX <venerix@koprulu.sector>2025-04-11 08:43:59 +0100
commitbb59556b3302a941db4630613c604644d5f7a617 (patch)
tree42e60b7ae227b0fe3af52dfac08d59653066a2db /media-libs
parent3cd09a18bad26aad2645241b868755cfdf41b6ae (diff)
gentoo auto-resync : 11:04:2025 - 08:43:58next
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/Manifest.gzbin70093 -> 70899 bytes
-rw-r--r--media-libs/libva/Manifest5
-rw-r--r--media-libs/libva/libva-2.22.0-r1.ebuild73
-rw-r--r--media-libs/libva/libva-9999.ebuild12
-rw-r--r--media-libs/libva/metadata.xml3
-rw-r--r--media-libs/plutosvg/Manifest3
-rw-r--r--media-libs/plutosvg/metadata.xml19
-rw-r--r--media-libs/plutosvg/plutosvg-0.0.6.ebuild29
-rw-r--r--media-libs/plutovg/Manifest3
-rw-r--r--media-libs/plutovg/metadata.xml16
-rw-r--r--media-libs/plutovg/plutovg-1.0.0.ebuild14
-rw-r--r--media-libs/sdl3-image/Manifest3
-rw-r--r--media-libs/sdl3-image/metadata.xml25
-rw-r--r--media-libs/sdl3-image/sdl3-image-3.2.4.ebuild145
-rw-r--r--media-libs/sdl3-mixer/Manifest3
-rw-r--r--media-libs/sdl3-mixer/metadata.xml35
-rw-r--r--media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild108
-rw-r--r--media-libs/sdl3-ttf/Manifest3
-rw-r--r--media-libs/sdl3-ttf/metadata.xml23
-rw-r--r--media-libs/sdl3-ttf/sdl3-ttf-3.2.2.ebuild45
20 files changed, 562 insertions, 5 deletions
diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz
index 6eca1d67ac89..bf87e739e34d 100644
--- a/media-libs/Manifest.gz
+++ b/media-libs/Manifest.gz
Binary files differ
diff --git a/media-libs/libva/Manifest b/media-libs/libva/Manifest
index 878714f19147..85653ecc072a 100644
--- a/media-libs/libva/Manifest
+++ b/media-libs/libva/Manifest
@@ -1,4 +1,5 @@
DIST libva-2.22.0.tar.gz 301705 BLAKE2B b438c95613628b8eb1150238016bafdf2ef33fc01ed78742cd50768238cedf5475752a6dd7413ee217961a705abcd7628219ddf3f13c5aa77015b6bbb4e77929 SHA512 cd633e5e09eac1ed10f1fc12b0f664f836e0eda9e47c17e1295b746cfd643a18fd0564a06a148ced3cf1e2321aa4d21275918bcf8c717d3981e98a598179f370
+EBUILD libva-2.22.0-r1.ebuild 1748 BLAKE2B c81774144729e3efa12687431b2164492f049691de2f140556ed16f6fa7913195a10b08e4028bcb8bda9a5791d0d2eb212d20fa48d9bb0bfc52d7d7b5dbcdd8e SHA512 cd267e259118b74042a4dd55c214c641c368cb434e6ed51440839f81fdc0b522558569914db533ed07f3f130ad0a56506f06118731f56115a7011626bb2181fe
EBUILD libva-2.22.0.ebuild 1577 BLAKE2B 1730caf550103f827e0c08225d692249fa4b75cd0cef49208b5aa3fe045109525ef56f38b0ead5f430ef77c96db1140da5314176c271532f53c6fab6fffe2310 SHA512 df534a65df7fda86c2f12406cd8d8096067553021e2b7157d9003d0b791c35402ea0c4322ce4d230bec0cd3e2a9e45658bd1ad56df6138d0ea61d354cbd81fdd
-EBUILD libva-9999.ebuild 1544 BLAKE2B 9a11667941f748b7de6ee372496a659d71d32f409b98e8a77e922fbff6b2a1852828c9f2674e45a2570783d42a4e92a04ad26949afde51fc3ecabe4a2d0deee9 SHA512 4463670469882e5e3e56c0f92bbb7c375ee6bf0e7ead0306f717b0e8f96ac21d5e1ba8b0922df18909fb5002224b4dfba32981b6a48aa926b45dfc64b82b53a0
-MISC metadata.xml 332 BLAKE2B ee8f4e2f059c3b81126ce55575cfb267c783c37e84bfd39b4564b5f0615da7d6d7efda0bd1fe3c547aa81ff3a6de056bf2555d5049d15bc33aab16c0e2a7271d SHA512 dfa43788c2b4701dde7eacecacdd4a372b192fb98ba8d471a5226eb15b20acb89e564358aa75a1673956005ed904b9e34135ff77d230b1bee95731d61198aef0
+EBUILD libva-9999.ebuild 1712 BLAKE2B 9c9e71fb62a9f0cb99d7df470b8484566c439800148d9cde70ce56845b7813268f576814eb81762a08cb193e8d40bf2d698fc15f802ef790a3bd140d64e12102 SHA512 6798cca8d92cf93353891e8b8aa50434a65a71bf46a35e438b7e3e24ddd2acbdb941782859588255eacbdacb27dbb22b7d2e0cfa97f42c99b9893d284fdaf290
+MISC metadata.xml 472 BLAKE2B 2b368f70221663474237dd1aebcc1529cb663efb26e6ae0fced581052660ee0b28166dd68685dc29f3f3ade3abb602f3861bcfa8cd3eb1bf2259ffc6d913595f SHA512 75479658282d6e0aaf497a42e81507bd0a78c69b90128cb469d04adc0814b87ca613893ad4871b4e8a7974935bf36ea08a9a3e136ad3affa177b874b078892f1
diff --git a/media-libs/libva/libva-2.22.0-r1.ebuild b/media-libs/libva/libva-2.22.0-r1.ebuild
new file mode 100644
index 000000000000..5fa18768df19
--- /dev/null
+++ b/media-libs/libva/libva-2.22.0-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib optfeature
+
+DESCRIPTION="Video Acceleration (VA) API for Linux"
+HOMEPAGE="https://github.com/intel/libva"
+
+if [[ ${PV} = *9999 ]] ; then
+ inherit git-r3
+ EGIT_BRANCH=master
+ EGIT_REPO_URI="https://github.com/intel/libva"
+else
+ SRC_URI="https://github.com/intel/libva/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1)"
+IUSE="glx wayland X"
+REQUIRED_USE="glx? ( X )"
+
+RDEPEND="
+ >=x11-libs/libdrm-2.4.75[${MULTILIB_USEDEP}]
+ wayland? (
+ >=dev-libs/wayland-1.11[${MULTILIB_USEDEP}]
+ )
+ X? (
+ glx? (
+ media-libs/libglvnd[X?,${MULTILIB_USEDEP}]
+ )
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ x11-libs/libxcb:=[${MULTILIB_USEDEP}]
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ X? ( x11-base/xorg-proto )
+"
+BDEPEND="
+ wayland? ( dev-util/wayland-scanner )
+ virtual/pkgconfig
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/va/va_backend_glx.h
+ /usr/include/va/va_x11.h
+ /usr/include/va/va_dri2.h
+ /usr/include/va/va_dricommon.h
+ /usr/include/va/va_glx.h
+)
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddriverdir="${EPREFIX}/usr/$(get_libdir)/va/drivers"
+ -Ddisable_drm=false
+ -Dwith_x11=$(usex X)
+ -Dwith_glx=$(usex X $(usex glx))
+ -Dwith_wayland=$(usex wayland)
+ -Denable_docs=false
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ optfeature_header
+ optfeature "Older Intel GPU support up to Gen8" media-libs/libva-intel-driver
+ optfeature "Newer Intel GPU support from Gen9+" media-libs/libva-intel-media-driver
+}
diff --git a/media-libs/libva/libva-9999.ebuild b/media-libs/libva/libva-9999.ebuild
index bfc76885c3de..6d2c5c7172e0 100644
--- a/media-libs/libva/libva-9999.ebuild
+++ b/media-libs/libva/libva-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,7 +19,8 @@ fi
LICENSE="MIT"
SLOT="0/$(ver_cut 1)"
-IUSE="wayland X"
+IUSE="glx wayland X"
+REQUIRED_USE="glx? ( X )"
RDEPEND="
>=x11-libs/libdrm-2.4.75[${MULTILIB_USEDEP}]
@@ -27,6 +28,9 @@ RDEPEND="
>=dev-libs/wayland-1.11[${MULTILIB_USEDEP}]
)
X? (
+ glx? (
+ media-libs/libglvnd[X?,${MULTILIB_USEDEP}]
+ )
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
>=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
@@ -40,9 +44,11 @@ BDEPEND="
"
MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/va/va_backend_glx.h
/usr/include/va/va_x11.h
/usr/include/va/va_dri2.h
/usr/include/va/va_dricommon.h
+ /usr/include/va/va_glx.h
)
multilib_src_configure() {
@@ -50,7 +56,7 @@ multilib_src_configure() {
-Ddriverdir="${EPREFIX}/usr/$(get_libdir)/va/drivers"
-Ddisable_drm=false
-Dwith_x11=$(usex X)
- -Dwith_glx=no
+ -Dwith_glx=$(usex X $(usex glx))
-Dwith_wayland=$(usex wayland)
-Denable_docs=false
)
diff --git a/media-libs/libva/metadata.xml b/media-libs/libva/metadata.xml
index 503fb56bd40a..1ba0d2f37793 100644
--- a/media-libs/libva/metadata.xml
+++ b/media-libs/libva/metadata.xml
@@ -8,4 +8,7 @@
<upstream>
<remote-id type="github">intel/libva</remote-id>
</upstream>
+ <use>
+ <flag name="glx">Enable GLX backend (requires X). Provides libva-glx.so, needed only by some prebuilt binaries.</flag>
+ </use>
</pkgmetadata>
diff --git a/media-libs/plutosvg/Manifest b/media-libs/plutosvg/Manifest
new file mode 100644
index 000000000000..65988fbd2ce2
--- /dev/null
+++ b/media-libs/plutosvg/Manifest
@@ -0,0 +1,3 @@
+DIST plutosvg-0.0.6.tar.gz 115270 BLAKE2B a44324825fe115b533cd47e15af9f2dda4cf5a336391a78a40f04f35042ae8d405c2c4fb891e1a3d5c8f7061fc75c2862bc032c9376b9179352cfd7173f94d69 SHA512 f0f2251cfb91f48b125299ec910d64181f03c14e683e1d497e2aa3f17713f5c7848247e3b7bdb6cf0dee8d98a7d25e85f7fcc440cbe55401c16fe5d1f0df1a10
+EBUILD plutosvg-0.0.6.ebuild 627 BLAKE2B 5871184f42b00fc444ea2da6ab4b1546d7598b70ee95bfdc777d86349cb974c66bd583fe3f25bad59c6622e4ae42105f718ec5bac60fc61db3b278c3d6ddf38e SHA512 d655a3de3ce5bacfd3750a425404f18b61913381195148b75608bcdd0273917c4f150b6f5248d45196e8bca68cce41334a8ee1a2dddef6f7cb8fe32710a2289b
+MISC metadata.xml 607 BLAKE2B de2592e930cfb86d806ebeaf129fd7d5e4bf513ca42508c50f844f77b09156ac6165eba7c1cabde70dfbfeedcb2ac1b697037b6adf22b06aff33549259858506 SHA512 5b3e020f7e5cbf2aee0e2f0a783df3ec6e0c8cc256fc0032a1d2480fd933d58271bfd4eb7d46f882b894393806d4857aef41b58cd104ca1e1cfab56febfa3411
diff --git a/media-libs/plutosvg/metadata.xml b/media-libs/plutosvg/metadata.xml
new file mode 100644
index 000000000000..b743f3b82694
--- /dev/null
+++ b/media-libs/plutosvg/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ <description>Primary maintainer</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <use>
+ <flag name="freetype">Enable <pkg>media-libs/freetype</pkg> integration</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">sammycage/plutosvg</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/plutosvg/plutosvg-0.0.6.ebuild b/media-libs/plutosvg/plutosvg-0.0.6.ebuild
new file mode 100644
index 000000000000..3301de9f325a
--- /dev/null
+++ b/media-libs/plutosvg/plutosvg-0.0.6.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="Tiny SVG rendering library in C"
+HOMEPAGE="https://github.com/sammycage/plutosvg"
+SRC_URI="https://github.com/sammycage/plutosvg/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="+freetype"
+
+RDEPEND="
+ >=media-libs/plutovg-1.0.0[${MULTILIB_USEDEP}]
+ freetype? ( media-libs/freetype:2[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_feature freetype)
+ )
+ meson_src_configure
+}
diff --git a/media-libs/plutovg/Manifest b/media-libs/plutovg/Manifest
new file mode 100644
index 000000000000..5320921fb520
--- /dev/null
+++ b/media-libs/plutovg/Manifest
@@ -0,0 +1,3 @@
+DIST plutovg-1.0.0.tar.gz 228563 BLAKE2B 277e4e30a0357d345d87e89b6abb52d79794a55d893b2108e6cfebab628b31c299eab43378cf9c5d30922a1da453ffa06fdda08a6cbc6cb6236b2682d8b1ee0c SHA512 4f472542686f9ee949e6cba621f338128aaaee25e2dfde848713333eedc6de4f896bb55aac4b8296bdada73ae3327da1fd06055ef93acc920ed55bf123731f74
+EBUILD plutovg-1.0.0.ebuild 372 BLAKE2B 1384f1c77492866591f0b92338515f602cad258ff7c06ed0875bd7c6077ed54c23a844b01c451165772347f5335094797f7969c604cba6e282166173fa006872 SHA512 1808ea55e520b3759f88e68d24a892d8f7c1f33d14070b55464e5afe2752e5edc769b34a080cd8edc25c3eec3b092c25d19c6be26f6ed622e8b9d6393136705e
+MISC metadata.xml 506 BLAKE2B 8e652b3f423bb1145e2d39a21f2f057f605d0ea292db3f177c25c6165cd4408e1ab11ff6ee6cb478f6764163b6cb38b3fb5e0277edc78b55ebc4f49f8a1d5199 SHA512 c25b96ed4e3498e2211b3da49236ad7bf2f093f49c1f791f3163a53ce4c99df033f4e36521762a32be777617e032770c9ef467c194a38ca53975d3a2e2def7ca
diff --git a/media-libs/plutovg/metadata.xml b/media-libs/plutovg/metadata.xml
new file mode 100644
index 000000000000..661f4f0aee5e
--- /dev/null
+++ b/media-libs/plutovg/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ <description>Primary maintainer</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sammycage/plutovg</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/plutovg/plutovg-1.0.0.ebuild b/media-libs/plutovg/plutovg-1.0.0.ebuild
new file mode 100644
index 000000000000..6844a558fd6c
--- /dev/null
+++ b/media-libs/plutovg/plutovg-1.0.0.ebuild
@@ -0,0 +1,14 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="Tiny 2D vector graphics library in C"
+HOMEPAGE="https://github.com/sammycage/plutovg"
+SRC_URI="https://github.com/sammycage/plutovg/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/media-libs/sdl3-image/Manifest b/media-libs/sdl3-image/Manifest
new file mode 100644
index 000000000000..79b7af4bd515
--- /dev/null
+++ b/media-libs/sdl3-image/Manifest
@@ -0,0 +1,3 @@
+DIST SDL3_image-3.2.4.tar.gz 10756063 BLAKE2B 9ea311a83c833d61c097c8728491fe08497500116dbf5c931703b32d4e335213a6927a1f7e3532ecc8fb03882341cb2732877bdf161f7fee103180f8fcbbfce3 SHA512 397ff126f6f95351d9addb3ac2d2c228fa2e4c513ca46525b326a64c6e73c40fd651d232d503fd757a03c55a7fa372a885f07d5f72d80dd17a2850816295d82e
+EBUILD sdl3-image-3.2.4.ebuild 4648 BLAKE2B 3f4b4ce0518f63428702905805a6a02f8c8b2c2491e30095c82aa2b55d75776bb907e0cc31a05eb03929dd99357837f567c7d0f2293f01571e189f6b41ad3ddf SHA512 2d2df097e8191701de4dea2a5a16b954349623ff4157a1e0372b4ea068df35c94de123fea69b82807e80c724e76250f12f00f1c4a10b73f5aefbecabbcaa8f55
+MISC metadata.xml 1036 BLAKE2B eed23ca44901cffb2d50ae9c6685b1d6f17bbdd10a725d64b1579e4c9f47888f4e6f54e22e3299e1930208210f88027199fe1b15cbf27fbc6afd7fdd0f7b0fca SHA512 cd108d122e0b744e51de03cf5aa9d795381e08d42bc6bbdde5261fba58939ee7759725fda6f57fa6f869198cd28abeccb272a7090c8ab41490e0e2faf764c6f7
diff --git a/media-libs/sdl3-image/metadata.xml b/media-libs/sdl3-image/metadata.xml
new file mode 100644
index 000000000000..263bcadc80eb
--- /dev/null
+++ b/media-libs/sdl3-image/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <longdescription>
+ This is a simple library to load images of various formats as SDL surfaces.
+ It can load BMP, GIF, JPEG, LBM, PCX, PNG, PNM (PPM/PGM/PBM), QOI, TGA, XCF, XPM, and simple SVG format images.
+ It can also load AVIF, JPEG-XL, TIFF, and WebP images, depending on build options
+ </longdescription>
+ <use>
+ <flag name="samples">Install sample programs</flag>
+ <flag name="stb">Use stb_image from vendored <pkg>dev-libs/stb</pkg> for JPEG and PNG image loading to reduce external dependencies</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">libsdl-org/SDL_image</remote-id>
+ <bugs-to>https://github.com/libsdl-org/SDL_image/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/sdl3-image/sdl3-image-3.2.4.ebuild b/media-libs/sdl3-image/sdl3-image-3.2.4.ebuild
new file mode 100644
index 000000000000..48fcdbb55029
--- /dev/null
+++ b/media-libs/sdl3-image/sdl3-image-3.2.4.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib multibuild
+
+DESCRIPTION="A simple library to load images of various formats as SDL surfaces."
+HOMEPAGE="https://www.libsdl.org/projects/SDL_image/"
+SRC_URI="https://github.com/libsdl-org/SDL_image/archive/refs/tags/release-${PV}/SDL3_image-${PV}.tar.gz"
+
+S="${WORKDIR}/SDL_image-release-${PV}"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="avif gif jpeg jpegxl png samples static-libs stb test tiff webp"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ stb? ( jpeg png )
+ test? ( jpeg png )
+"
+
+RDEPEND="
+ >=media-libs/libsdl3-3.0.0[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+ avif? ( >=media-libs/libavif-1.0.0:=[${MULTILIB_USEDEP}] )
+ !stb? (
+ png? ( >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}] )
+ jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
+ )
+ jpegxl? ( media-libs/libjxl:=[${MULTILIB_USEDEP}] )
+ tiff? ( >=media-libs/tiff-3.9.7-r1:=[${MULTILIB_USEDEP}] )
+ webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=( shared-libs $(usev static-libs) )
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ # 1. Install non standard license installation
+ # 2/3. Add suffixes to sample programs
+ sed -i \
+ -e '/install(FILES "LICENSE.txt"/,/\s)$/d' \
+ -e 's/\(\W\)showanim\(\W\)/\1showanim2\2/' \
+ -e 's/\(\W\)showimage\(\W\)/\1showimage2\2/' \
+ CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+ # hack because because of layered multibuilds
+ if [[ -n ${is_shared} ]]; then
+ mycmakeargs+=( -DSDLIMAGE_SAMPLES=$(multilib_native_usex samples) )
+ fi
+ cmake_src_configure
+}
+
+src_configure() {
+ myconfigure() {
+ local mycmakeargs=(
+ -DSDLIMAGE_DEPS_SHARED=ON # Force dynamic loading of dependencies
+ -DSDLIMAGE_INSTALL_MAN=ON
+ -DSDLIMAGE_STRICT=ON # Fail when a dependency could not be found
+ -DSDLIMAGE_TESTS_INSTALL=OFF
+ -DSDLIMAGE_TESTS=$(usex test)
+ -DSDLIMAGE_VENDORED=OFF # Use system libraries instead of vendored ones; defualt but let's be explicit
+ -DSDLIMAGE_BACKEND_STB=$(usex stb) # jpeg and png file support via stb_image; vendored, despite above
+ # likely less performant than using native libraries, less deps.
+ # formats
+ -DSDLIMAGE_AVIF=$(usex avif)
+ -DSDLIMAGE_AVIF_SAVE=$(usex avif)
+ -DSDLIMAGE_BMP=ON
+ -DSDLIMAGE_GIF=$(usex gif)
+ -DSDLIMAGE_JPG=$(usex jpeg)
+ -DSDLIMAGE_JPG_SAVE=$(usex jpeg)
+ -DSDLIMAGE_JXL=$(usex jpegxl)
+ -DSDLIMAGE_LBM=ON
+ -DSDLIMAGE_PCX=ON
+ -DSDLIMAGE_PNG=$(usex png)
+ -DSDLIMAGE_PNG_SAVE=$(usex png)
+ -DSDLIMAGE_PNM=ON
+ -DSDLIMAGE_QOI=ON
+ -DSDLIMAGE_SVG=ON
+ -DSDLIMAGE_TGA=ON
+ -DSDLIMAGE_TIF=$(usex tiff)
+ -DSDLIMAGE_WEBP=$(usex webp)
+ -DSDLIMAGE_XCF=ON
+ -DSDLIMAGE_XPM=ON
+ -DSDLIMAGE_XV=ON
+ )
+ if [[ "${MULTIBUILD_VARIANT}" == "shared-libs" ]]; then
+ mycmakeargs+=( -DBUILD_SHARED_LIBS=ON )
+ local is_shared=1
+ else
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS=OFF
+ -DSDLIMAGE_SAMPLES=OFF
+ )
+ fi
+
+ cmake-multilib_src_configure
+ }
+ multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake-multilib_src_compile
+}
+
+src_test() {
+ # These are only asserts that the formats are supported. They do not test
+ # that the formats are actually working. It is advisable to run a game or
+ # application that uses SDL_image to sanity check common formats.
+
+ # https://github.com/libsdl-org/SDL_image/tree/main/test#asserting-format-support
+ # Match same order as src_configure. The intent is to catch build system
+ # bugs, so it may need updating sometimes for legitimate changes in
+ # SDL_image support.
+ local -x SDL_IMAGE_TEST_REQUIRE_{LOAD,SAVE}_AVIF=$(usex avif 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_BMP=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_GIF=$(usex gif 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_{LOAD,SAVE}_JPG=$(usex jpeg 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_{LOAD,SAVE}_JXL=$(usex jpegxl 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_{LOAD,SAVE}_LBM=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_PCX=1
+ local -x SDL_IMAGE_TEST_REQUIRE_{LOAD,SAVE}_PNG=$(usex png 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_QOI=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_SVG=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_TGA=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_TIF=$(usex tiff 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_WEBP=$(usex webp 1 0)
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_XCF=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_XPM=1
+ local -x SDL_IMAGE_TEST_REQUIRE_LOAD_XV=1
+
+ multibuild_foreach_variant cmake-multilib_src_test
+}
+
+src_install() {
+ multibuild_foreach_variant cmake-multilib_src_install
+}
diff --git a/media-libs/sdl3-mixer/Manifest b/media-libs/sdl3-mixer/Manifest
new file mode 100644
index 000000000000..4681573a08a2
--- /dev/null
+++ b/media-libs/sdl3-mixer/Manifest
@@ -0,0 +1,3 @@
+DIST sdl3-mixer-3.0.0_pre20250404.tar.gz 3372186 BLAKE2B d874679a7b5a04c510b94564344d5d409f72ad24869a9c1e5789f4c33ee6e3518711b7c4ea299ee2c05cc4e832ea81042afd58db1113406a724e933f76fc7571 SHA512 077c32783540a0b430a84d2320322b136e9c327aca2af4f0588459c404e1814a064a6a448868fefb6d300575581e2546a24ed3eb917f9a6af93a7176642ea870
+EBUILD sdl3-mixer-3.0.0_pre20250404.ebuild 3391 BLAKE2B 8de587d96e738ffc1aacf1d6da6d419906f03b675e1fe88f1703b2c4f782dc5f00abe8c30d74d3712b48a5f9fa828cbecde2fba276a7c14e30b55079d489b912 SHA512 16532ba701bfd6be0ed02a0357f16c2bc842f9d426ad8a8a4c67b03f1b7b62404a212511e7cab0a42a912a84b35dbf60c5c8c73022f51671fe517c149f4c0866
+MISC metadata.xml 1861 BLAKE2B 6f495dacc4267547047d1f87afa4b68d7002b5891f851f6e354756200cf25a6af0f03b9a0f0352d35764a52c959df708b009a6df0c3fb4dd2e7d7c3f62bb7f55 SHA512 ef80b089fdb30609b81a8e07cc4b40442481564162c10150db6cd37da8c493a1197970d2300b21bb854823f1f0c9afa4ad816d335b0a9955f5aa25e5ae5257e3
diff --git a/media-libs/sdl3-mixer/metadata.xml b/media-libs/sdl3-mixer/metadata.xml
new file mode 100644
index 000000000000..95e31c935676
--- /dev/null
+++ b/media-libs/sdl3-mixer/metadata.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <longdescription>
+ A simple multi-channel audio mixer that supports 8 channels of 16 bit stereo audio, plus a single channel of music.
+ It can load FLAC, MP3, Ogg, VOC, and WAV format audio.
+ It can also load MIDI, MOD, and Opus audio, depending on build options.
+ It is a part of the SDL project, and is used by many games and applications.
+ </longdescription>
+ <use>
+ <flag name="drlibs">Use vendored dr_{flac,mp3} instead of <pkg>media-libs/flac</pkg> and/or <pkg>media-sound/mpg123-base</pkg> for those formats</flag>
+ <flag name="fluidsynth">Use <pkg>media-sound/fluidsynth</pkg> for MIDI support</flag>
+ <flag name="gme">Support additional music formats with <pkg>media-libs/game-music-emu</pkg></flag>
+ <flag name="midi">Basic support for MIDI files</flag>
+ <flag name="mod">Basic support for MOD files</flag>
+ <flag name="modplug">Support MOD via <pkg>media-libs/libmodplug</pkg></flag>
+ <flag name="playtools">Install playwave and playmus tools (useful for testing)</flag>
+ <flag name="stb">Use <pkg>dev-libs/stb</pkg> instead of <pkg>media-libs/libvorbis</pkg> for OGG Vorbis support</flag>
+ <flag name="tremor">Use <pkg>media-libs/tremor</pkg> instead of <pkg>media-libs/libvorbis</pkg> for OGG Vorbis support</flag>
+ <flag name="wav">Support WAVE files</flag>
+ <flag name="wavpack">Support WavPack files</flag>
+ <flag name="xmp">Support MOD via <pkg>media-libs/libxmp</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="github">libsdl-org/SDL_mixer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild b/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild
new file mode 100644
index 000000000000..caf79673dd40
--- /dev/null
+++ b/media-libs/sdl3-mixer/sdl3-mixer-3.0.0_pre20250404.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_COMMIT=68764f35899e133b402336843c046d75136eaf08
+inherit cmake-multilib
+
+DESCRIPTION="Simple Direct Media Layer Mixer Library"
+HOMEPAGE="https://github.com/libsdl-org/SDL_mixer"
+SRC_URI="https://codeload.github.com/libsdl-org/SDL_mixer/tar.gz/${MY_COMMIT} -> ${P}.tar.gz"
+
+S="${WORKDIR}/SDL_mixer-${MY_COMMIT}"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="drlibs flac fluidsynth gme midi mod modplug mp3 opus playtools"
+IUSE+=" sndfile stb timidity tremor vorbis +wav wavpack xmp"
+REQUIRED_USE="
+ drlibs? ( || ( flac mp3 ) )
+ midi? ( || ( timidity fluidsynth ) )
+ timidity? ( midi )
+ fluidsynth? ( midi )
+
+ vorbis? ( ?? ( stb tremor ) )
+ stb? ( vorbis )
+ tremor? ( vorbis )
+"
+
+RDEPEND="
+ media-libs/libsdl3[${MULTILIB_USEDEP}]
+ !drlibs? (
+ flac? ( media-libs/flac:=[${MULTILIB_USEDEP}] )
+ mp3? ( media-sound/mpg123-base[${MULTILIB_USEDEP}] )
+ )
+ gme? ( media-libs/game-music-emu[${MULTILIB_USEDEP}] )
+ midi? (
+ fluidsynth? ( media-sound/fluidsynth:=[${MULTILIB_USEDEP}] )
+ timidity? ( media-sound/timidity++ )
+ )
+ mod? ( media-libs/libxmp[${MULTILIB_USEDEP}] )
+
+ opus? ( media-libs/opusfile[${MULTILIB_USEDEP}] )
+ vorbis? (
+ tremor? ( media-libs/tremor[${MULTILIB_USEDEP}] )
+ !stb? ( !tremor? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) )
+ )
+ gme? ( media-libs/game-music-emu[${MULTILIB_USEDEP}] )
+ wavpack? ( media-sound/wavpack[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DSDLMIXER_DEPS_SHARED=no # aka, no dlopen() (bug #950965)
+ -DSDLMIXER_FLAC=$(usex flac)
+ -DSDLMIXER_FLAC_LIBFLAC=$(usex flac $(usex drlibs no yes) no)
+ -DSDLMIXER_FLAC_DRFLAC=$(usex drlibs)
+ -DSDLMIXER_GME=$(usex gme)
+ -DSDLMIXER_GME_SHARED=no
+ -DSDLMIXER_INSTALL_MAN=yes
+ -DSDLMIXER_MIDI=$(usex midi)
+ -DSDLMIXER_MIDI_FLUIDSYNTH=$(usex fluidsynth)
+ -DSDLMIXER_MIDI_FLUIDSYNTH_SHARED=no
+ -DSDLMIXER_MIDI_TIMIDITY=$(usex timidity)
+ -DSDLMIXER_MOD=$(usex mod)
+ -DSDLMIXER_MOD_XMP=$(usex mod)
+ -DSDLMIXER_MOD_XMP_LITE=no
+ -DSDLMIXER_MOD_XMP_SHARED=no
+ -DSDLMIXER_MP3=$(usex mp3)
+ -DSDLMIXER_MP3_DRMP3=$(usex drlibs)
+ -DSDLMIXER_MP3_MPG123=$(usex mp3 $(usex drlibs no yes) no)
+ -DSDLMIXER_OPUS=$(usex opus)
+ -DSDLMIXER_OPUS_SHARED=no
+ -DSDLMIXER_SAMPLES=$(usex playtools)
+ -DSDLMIXER_SAMPLES_INSTALL=$(usex playtools)
+ -DSDLMIXER_SNDFILE=$(usex sndfile)
+ -DSDLMIXER_SNDFILE_SHARED=no
+ -DSDLMIXER_STRICT=yes # Fail when a dependency could not be found
+ -DSDLMIXER_VENDORED=no # Use vendored third-party libraries
+ -DSDLMIXER_VORBIS=$(usex vorbis $(usex stb STB $(usex tremor TREMOR VORBISFILE) ) no )
+ -DSDLMIXER_WAVE=$(usex wav)
+ -DSDLMIXER_WAVPACK=$(usex wavpack)
+ -DSDLMIXER_WAVPACK_DSD=$(usex wavpack) # seems to be default-enabled in wavpack
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_install_all() {
+ dodoc {CHANGES,README}.txt
+ rm -r "${ED}"/usr/share/licenses || die
+}
+
+pkg_postinst() {
+ # bug #412035
+ if use midi && use fluidsynth; then
+ ewarn "FluidSynth support requires you to set the SDL_SOUNDFONTS"
+ ewarn "environment variable to the location of a SoundFont file"
+ ewarn "unless the game or application happens to do this for you."
+ if use timidity; then
+ ewarn "Failing to do so will result in Timidity being used instead."
+ else
+ ewarn "Failing to do so will result in silence."
+ fi
+ fi
+}
diff --git a/media-libs/sdl3-ttf/Manifest b/media-libs/sdl3-ttf/Manifest
new file mode 100644
index 000000000000..61ae9d6adeb1
--- /dev/null
+++ b/media-libs/sdl3-ttf/Manifest
@@ -0,0 +1,3 @@
+DIST sdl3-ttf-3.2.2.tar.gz 1572749 BLAKE2B 04ce84ad0d19375b6f1e4ccaeb54e0c74f732a59adb64b1c45b27bb36ffeb898686bddcb3208b6dd35dbe1950b207d01d7799fae88501261928b64cee369cc70 SHA512 b9adc28d584759b1cc1072d071caad95ade263a1fb24e294d66fc15e132d44bc62925875cb1f1b596089def9b47d7b73f42ffa4e120ee51982f993dc7a7d3bd7
+EBUILD sdl3-ttf-3.2.2.ebuild 1217 BLAKE2B aa28df04d49c5bae9f85fa2961920d8e9897b697290df2e81f56171e9a2238f3649055f05d0e6edb72856ac0729d3cb660656b413c421406976ab8741a9045b5 SHA512 335243a0600405bbeb4425a980502937fb772741afd30b2bd30d832f9c3d8d0b6d540ed0c5cbce3037c806aecb387794ce49ce07d929386c6766ff6531b6e77a
+MISC metadata.xml 825 BLAKE2B 3ca765cd60bc9f8ccce719281a4c214f10e6cd128660c0833ce5f3b822c8d6eb765095f48fc6eb725deec6b015984cead047b0d2bb31b162e5380daddcee3a6a SHA512 092e51c907074a7d902da8854192f2d2e4f9d2e4cedd2c5c0a4a43874bd2a1b39563d2632c7816758b3b665986fdd88bfe56287c13c93ebbb0b4710ac29ff5c5
diff --git a/media-libs/sdl3-ttf/metadata.xml b/media-libs/sdl3-ttf/metadata.xml
new file mode 100644
index 000000000000..db4ceaabdfeb
--- /dev/null
+++ b/media-libs/sdl3-ttf/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <longdescription>
+ This library is a wrapper around the FreeType and Harfbuzz libraries,
+ allowing you to use TrueType fonts to render text in SDL applications.
+ </longdescription>
+ <use>
+ <flag name="harfbuzz">Use <pkg>media-libs/harfbuzz</pkg> for enhanced font rendering</flag>
+ <flag name="plutosvg">Use <pkg>media-libs/plutosvg</pkg> for colour emoji support</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">libsdl-org/SDL_ttf</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/sdl3-ttf/sdl3-ttf-3.2.2.ebuild b/media-libs/sdl3-ttf/sdl3-ttf-3.2.2.ebuild
new file mode 100644
index 000000000000..a90b3d91dba9
--- /dev/null
+++ b/media-libs/sdl3-ttf/sdl3-ttf-3.2.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+MY_P="SDL_ttf-release-${PV}"
+DESCRIPTION="Library that allows you to use TrueType fonts in SDL applications"
+HOMEPAGE="https://github.com/libsdl-org/SDL_ttf"
+SRC_URI="https://github.com/libsdl-org/SDL_ttf/archive/refs/tags/release-${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+harfbuzz +plutosvg static-libs X"
+
+# On bumps, check external/ for versions of bundled freetype + harfbuzz
+# to crank up the dep bounds.
+RDEPEND="
+ >=media-libs/libsdl3-3.2.10[${MULTILIB_USEDEP}]
+ >=media-libs/freetype-2.13.2[harfbuzz?,${MULTILIB_USEDEP}]
+ virtual/opengl[${MULTILIB_USEDEP}]
+ harfbuzz? ( >=media-libs/harfbuzz-8.1.1:=[${MULTILIB_USEDEP}] )
+ plutosvg? ( >=media-libs/plutosvg-0.0.6[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DSDLTTF_VENDORED=OFF
+ -DSDLTTF_INSTALL_MAN=ON
+ -DSDLTTF_HARFBUZZ=$(usex harfbuzz)
+ -DSDLTTF_PLUTOSVG=$(usex plutosvg)
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_install_all() {
+ dodoc CHANGES.txt README.md
+
+ rm -rf "${ED}"/usr/share/licenses/ || die
+}