diff options
Diffstat (limited to 'media-libs')
424 files changed, 9291 insertions, 5433 deletions
diff --git a/media-libs/SoQt/Manifest b/media-libs/SoQt/Manifest index 23d0ebfc0857..a74740828071 100644 --- a/media-libs/SoQt/Manifest +++ b/media-libs/SoQt/Manifest @@ -1,2 +1 @@ -DIST soqt-1.6.2-src.tar.gz 1709116 BLAKE2B 45d87af95e90a88d97188b7efa6d22ad2238e4957d8c21712ad6161ea94748db0df596d0dcedbeff94abfd163ad40cd2f1649aae5ba4bf94e3892c1ed1990839 SHA512 4039d0c8e36e89995e77b1b49efcb52d15ca213c7d53ba9d628259763e261288192078caed8e2efb02772dd8f513e971731eeb0a761d1642985af7b9c4852c18 DIST soqt-1.6.3-src.tar.gz 7673080 BLAKE2B 3a28a8144de286da10f2c539d5ebf68b2beae006416f91ba849cb7fd6fee25474e3f62603cc6e7b70d80dd8bc5114004a51fba850b81493455919464a957454a SHA512 8cef22cf4214dd03bb4639c1fff77c127bf80f99e3b7fb7c1c21c25a281aa484252414f4a48fa59b8b2485afe7920ce9e86366fd1343badc77b75b78d3ac4c53 diff --git a/media-libs/SoQt/SoQt-1.6.2.ebuild b/media-libs/SoQt/SoQt-1.6.2.ebuild deleted file mode 100644 index f76d31bfbcbf..000000000000 --- a/media-libs/SoQt/SoQt-1.6.2.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic - -MY_P=${P/SoQt/soqt} - -HOMEPAGE="https://github.com/coin3d/coin/wiki" -DESCRIPTION="GUI binding for using Coin/Open Inventor with Qt" -SRC_URI="https://github.com/coin3d/soqt/releases/download/v${PV}/${MY_P}-src.tar.gz" - -LICENSE="GPL-2" -KEYWORDS="amd64 x86" -SLOT="0" -IUSE="debug doc qt6" - -RDEPEND=" - media-libs/coin - virtual/opengl - x11-libs/libX11 - x11-libs/libXi - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtopengl:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,opengl,widgets] - ) -" - -DEPEND="${RDEPEND} - x11-base/xorg-proto -" - -BDEPEND=" - virtual/pkgconfig - doc? ( app-text/doxygen ) -" - -S="${WORKDIR}/soqt" - -DOCS=(AUTHORS ChangeLog HACKING NEWS README) - -src_configure() { - use debug && append-cppflags -DSOQT_DEBUG=1 - local mycmakeargs=( - -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" - -DSOQT_BUILD_DOCUMENTATION=$(usex doc) - -DSOQT_BUILD_INTERNAL_DOCUMENTATION=OFF - -DSOQT_USE_QT6=$(usex qt6) - -DSOQT_VERBOSE=$(usex debug) - ) - cmake_src_configure -} diff --git a/media-libs/SoQt/SoQt-1.6.3.ebuild b/media-libs/SoQt/SoQt-1.6.3.ebuild index 2ea0ba50aa0f..2bdd913e96d0 100644 --- a/media-libs/SoQt/SoQt-1.6.3.ebuild +++ b/media-libs/SoQt/SoQt-1.6.3.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/coin3d/soqt/releases/download/v${PV}/${P/SoQt/soqt}- S="${WORKDIR}/soqt" LICENSE="GPL-2" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" SLOT="0" IUSE="debug doc" diff --git a/media-libs/alsa-lib/alsa-lib-1.2.12.ebuild b/media-libs/alsa-lib/alsa-lib-1.2.12.ebuild index e2d95ace169a..93699cb0415a 100644 --- a/media-libs/alsa-lib/alsa-lib-1.2.12.ebuild +++ b/media-libs/alsa-lib/alsa-lib-1.2.12.ebuild @@ -20,7 +20,7 @@ fi LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" IUSE="alisp debug doc python" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" diff --git a/media-libs/alsa-lib/alsa-lib-1.2.13.ebuild b/media-libs/alsa-lib/alsa-lib-1.2.13-r2.ebuild index 68a5a702382e..22bf19fd29ed 100644 --- a/media-libs/alsa-lib/alsa-lib-1.2.13.ebuild +++ b/media-libs/alsa-lib/alsa-lib-1.2.13-r2.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 @@ -20,7 +20,7 @@ fi LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" IUSE="alisp debug doc python" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" @@ -34,6 +34,9 @@ BDEPEND="doc? ( >=app-text/doxygen-1.2.6 )" PATCHES=( "${FILESDIR}/${PN}-1.1.6-missing_files.patch" # bug #652422 + "${FILESDIR}/${PN}-1.2.13-update-symbol-name.patch" # bug #943399 + "${FILESDIR}/${P}-seq-ump-headers.patch" # bug #943696 + "${FILESDIR}/${P}-headers-again.patch" ) pkg_setup() { @@ -51,6 +54,9 @@ src_prepare() { } multilib_src_configure() { + # Tests fail to build w/ C23 (bug #944447) + append-cflags -std=gnu17 + # Broken upstream. Could in theory work with -flto-partitions=none # but it's a hack to workaround the real problem and not strictly safe. # bug #616108, bug #669086, and https://github.com/alsa-project/alsa-lib/issues/6. diff --git a/media-libs/alsa-lib/files/alsa-lib-1.2.13-headers-again.patch b/media-libs/alsa-lib/files/alsa-lib-1.2.13-headers-again.patch new file mode 100644 index 000000000000..ee666cd56fe7 --- /dev/null +++ b/media-libs/alsa-lib/files/alsa-lib-1.2.13-headers-again.patch @@ -0,0 +1,40 @@ +https://bugs.gentoo.org/949127 +https://bugs.gentoo.org/946562 +https://bugs.gentoo.org/944447 +https://github.com/alsa-project/alsa-lib/issues/430 +https://github.com/alsa-project/alsa-lib/issues/436 +https://github.com/alsa-project/alsa-lib/commit/c8bc54a9cae3d5080dc7a298aee573b10f2bbf62 + +From c8bc54a9cae3d5080dc7a298aee573b10f2bbf62 Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela <perex@perex.cz> +Date: Sun, 2 Feb 2025 19:18:25 +0100 +Subject: [PATCH] test/playmidi1: fix compilation caused by conflict between + midifile.h and ump_msg.h + +It's a fast fix. The better way is to fix midifile.h or remote this example +(we have already some + +Closes: https://github.com/alsa-project/alsa-lib/issues/436 +Signed-off-by: Jaroslav Kysela <perex@perex.cz> +--- + test/playmidi1.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/test/playmidi1.c b/test/playmidi1.c +index 831e95783..286aaa86e 100644 +--- a/test/playmidi1.c ++++ b/test/playmidi1.c +@@ -45,10 +45,11 @@ + #include <errno.h> + #include <string.h> + ++#include "../include/asoundlib.h" ++ + #include "midifile.h" /* SMF library header */ + #include "midifile.c" /* SMF library code */ + +-#include "../include/asoundlib.h" + + /* send the real-time time stamps (instead of midi ticks) to the ALSA sequencer */ + static int use_realtime = 0; + diff --git a/media-libs/alsa-lib/files/alsa-lib-1.2.13-seq-ump-headers.patch b/media-libs/alsa-lib/files/alsa-lib-1.2.13-seq-ump-headers.patch new file mode 100644 index 000000000000..fd38d8274804 --- /dev/null +++ b/media-libs/alsa-lib/files/alsa-lib-1.2.13-seq-ump-headers.patch @@ -0,0 +1,50 @@ +https://bugs.gentoo.org/943696#c10 +https://github.com/alsa-project/alsa-lib/commit/07cee0ba05179a56764c35975d5822420d4f31f9 + +From 07cee0ba05179a56764c35975d5822420d4f31f9 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <tiwai@suse.de> +Date: Sun, 24 Nov 2024 09:33:16 +0100 +Subject: [PATCH] seq: include UMP headers + +Some applications seem including alsa/seqmid.h individually, and this +got broken with the update of alsa-lib because now we have +dependencies to UMP stuff. Include the necessary UMP headers +internally. Also, add the inclusion of rawmidi.h in ump.h for similar +reasons. + +Link: https://bugzilla.suse.com/show_bug.cgi?id=1233682 +Signed-off-by: Takashi Iwai <tiwai@suse.de> +--- a/include/seq.h ++++ b/include/seq.h +@@ -29,6 +29,8 @@ + #ifndef __ALSA_SEQ_H + #define __ALSA_SEQ_H + ++#include "ump.h" ++ + #ifdef __cplusplus + extern "C" { + #endif +--- a/include/seq_event.h ++++ b/include/seq_event.h +@@ -28,6 +28,8 @@ + #ifndef __ALSA_SEQ_EVENT_H + #define __ALSA_SEQ_EVENT_H + ++#include "ump_msg.h" ++ + /** + * \defgroup SeqEvents Sequencer Event Definitions + * Sequencer Event Definitions +--- a/include/ump.h ++++ b/include/ump.h +@@ -9,6 +9,8 @@ + #ifndef __ALSA_UMP_H + #define __ALSA_UMP_H + ++#include "rawmidi.h" ++ + #ifdef __cplusplus + extern "C" { + #endif + diff --git a/media-libs/alsa-lib/files/alsa-lib-1.2.13-update-symbol-name.patch b/media-libs/alsa-lib/files/alsa-lib-1.2.13-update-symbol-name.patch new file mode 100644 index 000000000000..637c06bef0b3 --- /dev/null +++ b/media-libs/alsa-lib/files/alsa-lib-1.2.13-update-symbol-name.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/943399 +https://github.com/alsa-project/alsa-lib/issues/420 +https://github.com/alsa-project/alsa-lib/pull/421 +https://github.com/alsa-project/alsa-lib/commit/76edab4e595bd5f3f4c636cccc8d7976d3c519d6 + +From 76edab4e595bd5f3f4c636cccc8d7976d3c519d6 Mon Sep 17 00:00:00 2001 +From: Nicholas Vinson <nvinson234@gmail.com> +Date: Thu, 14 Nov 2024 07:49:53 -0500 +Subject: [PATCH] src/Versions.in.in: Update *_tempo_base name + +Change @SYMBOL_PREFIX@snd_has_tempo_base to +@SYMBOL_PREFIX@snd_has_queue_tempo_base. + +Starting with version 1.2.13, alsa-lib fails to link with ld.lld-19 due +to "version script assignment of 'ALSA_1.2.13' to symbol +'snd_seq_has_tempo_base' failed: symbol not defined". + +Per commit 769d1db1b0a213a39c7e59c0d1d724e7f45b1ac3 the correct name for +the symbol is @SYMBOL_PREFIX@snd_has_queue_tempo_base; therefore, update +src/Vesions.in.in to match. + +Fixes bug #420 +Fixes Gentoo bug 943399 (https://bugs.gentoo.org/943399) + +Closes: https://github.com/alsa-project/alsa-lib/pull/421 +Signed-off-by: Nicholas Vinson <nvinson234@gmail.com> +Signed-off-by: Jaroslav Kysela <perex@perex.cz> +--- a/src/Versions.in.in ++++ b/src/Versions.in.in +@@ -212,7 +212,7 @@ ALSA_1.2.13 { + @SYMBOL_PREFIX@snd_seq_create_ump_block; + @SYMBOL_PREFIX@snd_seq_queue_tempo_get_tempo_base; + @SYMBOL_PREFIX@snd_seq_queue_tempo_set_tempo_base; +- @SYMBOL_PREFIX@snd_seq_has_tempo_base; ++ @SYMBOL_PREFIX@snd_seq_has_queue_tempo_base; + @SYMBOL_PREFIX@snd_seq_port_info_get_ump_is_midi1; + @SYMBOL_PREFIX@snd_seq_port_info_set_ump_is_midi1; + #endif diff --git a/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.12.ebuild b/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.12.ebuild index 1d305a3be5c3..4a6eff8061f4 100644 --- a/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.12.ebuild +++ b/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.12.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://www.alsa-project.org/files/pub/lib/${P}.tar.bz2" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86" RDEPEND="!<media-libs/alsa-lib-1.2.1" DEPEND="${RDEPEND}" diff --git a/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.13.ebuild b/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.13.ebuild index 62707af45fcf..ae584fde4972 100644 --- a/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.13.ebuild +++ b/media-libs/alsa-ucm-conf/alsa-ucm-conf-1.2.13.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 @@ -9,7 +9,7 @@ SRC_URI="https://www.alsa-project.org/files/pub/lib/${P}.tar.bz2" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc x86" RDEPEND="!<media-libs/alsa-lib-1.2.1" DEPEND="${RDEPEND}" diff --git a/media-libs/amdgpu-pro-vulkan/Manifest b/media-libs/amdgpu-pro-vulkan/Manifest index cabf0920ce29..8f7e357f6d45 100644 --- a/media-libs/amdgpu-pro-vulkan/Manifest +++ b/media-libs/amdgpu-pro-vulkan/Manifest @@ -2,5 +2,5 @@ DIST amdgpu-pro-vulkan-22.40.6.1580631-amd64.deb 26403020 BLAKE2B 9af314b75ec6af DIST amdgpu-pro-vulkan-22.40.6.1580631-i386.deb 28131372 BLAKE2B 4f92814a1f1aa3cecec5321252990c87548b94c633be2080fb4be9c9ef72772e45943b62c55e1424b03671540b599f13666d49599c7ef8e2a93a51a66cc17e92 SHA512 7ffd0cebb630cbf2a3845c0e673c408f56a046bf68d1c73a02b2a1d3a245d5fdc3cb00b461fe52dbd74abd15cdd3e75007539de584750fce22176e6994007d94 DIST amdgpu-pro-vulkan-23.40.0.1741713-amd64.deb 23818448 BLAKE2B 7772466630e2435b0c37ddcb7f6e377afb69f698c61752b03f6be9962bf9cc30265b29e4629d6c61d1760c20a6df2ed4da629e302c43195124d71358c3774f4c SHA512 bb5af1c1b547d6bb19fc4c4c5525acf14cc8eb7f9b6f3c1a480156aad476d1ec5f7530b4a3c8f474195a2c81af6d55f7bed793b17c82b0ded9f6a6d077b527db DIST amdgpu-pro-vulkan-23.40.0.1741713-i386.deb 25236404 BLAKE2B 936761b0489950e20b3cc1dbf9dad3aaecc394bb79dc3d9f761afbafb005385edbcb6e32fc966e5f5d9a4b414d5e17b83b88b6926157f7beca450c5cba955bbb SHA512 fcf6995af686d205e9cddbb44d8bb57c0eb98985cd5579a806435cd40300fa6baa2c97e7087855ba3a09390cec6a91176156932f84e271a8c5a3b210c177bc0d -DIST amdgpu-pro-vulkan-24.10.0.1787253-amd64.deb 24104776 BLAKE2B 716f21242a7509abd7be7472dd6933f2e991818dd501cbb30002914589e82f74f389e95c4a921f17cb435279618b3cfeec7c691fb608d44e93c6acca52d458cb SHA512 8837965d33cdf8756bbb114d25a9e31d3e3572103b79a410521edd452372ec58d548f0b9e351f1d965bc4deb8d7a58cd4db77dd0f26957d54badd416ad430953 -DIST amdgpu-pro-vulkan-24.10.0.1787253-i386.deb 25584368 BLAKE2B 926196eea01f54b4274caa1c808cc948bcdb6bb2543622832f709175b7481d96ff34acd230b604c3e3adbdcdb1fb9c561b56560a9cb3516a8129da963b95fd5c SHA512 a48cdc9174290956c3eb77d7f2308696203cd2514374a87eb55a3b4ce13fec23aac670d9baff91e84e0ef4aeccc2397905af930b25c46c3586a49dd0fbc5a4c1 +DIST amdgpu-pro-vulkan-24.30.2111292-amd64.deb 28325236 BLAKE2B 3f5f9fa1c44d06b389ff7bb49b717fb9d7a9391e3ecec8f2b71d15b48622e0f12bb0e015893d8d14927ab05dc0d3e2ed1a7f9cb3cadd62c5d7e1c44c45331ac4 SHA512 219fc0746828fa8aba778309f1ff6b1d106f1cf4e9a059915f6fddd46fc76c194b06dcff8d3d58c2566a9716cff07e8ec6318e47ef7b84422e7db77c82d60757 +DIST amdgpu-pro-vulkan-24.30.2111292-i386.deb 29646612 BLAKE2B a2b65664cfe7b38fcefdb694c6f182b6906da34341f37e87cf7b695a91823a06bf4b874a6f9b7d6c6b3a45afed33d4fded1a075e7e52be0b0251fc3fd105ba5b SHA512 a36365c3866672c9c36dbe35374aa0341a86d0d4a67ec05ae94ff73f6bf80663dd06efe907f1ecd4503683903678f38229b7b233586ce727b8f4856158dfbd62 diff --git a/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.10.0.1787253.ebuild b/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.30.2111292.ebuild index f844f4c6774b..d73318da58a5 100644 --- a/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.10.0.1787253.ebuild +++ b/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.30.2111292.ebuild @@ -7,19 +7,18 @@ inherit unpacker MY_PV_HIGH=$(ver_cut 1) MY_PV_MIDDLE=$(ver_cut 2) -MY_PV_LOW=$(ver_cut 3) -MY_PV_REV=$(ver_cut 4) +MY_PV_REV=$(ver_cut 3) MY_PV="${MY_PV_HIGH}.${MY_PV_MIDDLE}" -INTERNAL_VER="6.1.3" +INTERNAL_VER="6.3.2" MY_PV_FULL="${MY_PV}-${MY_PV_REV}" MY_PN="vulkan-amdgpu-pro" MY_LINK="https://repo.radeon.com/amdgpu/${INTERNAL_VER}/ubuntu/pool/proprietary/v/${MY_PN}" -UBUNTU_VER="22.04" +UBUNTU_VER="24.04" DESCRIPTION="AMD's closed source vulkan driver, from Radeon Software for Linux" HOMEPAGE="https://www.amd.com/en/support" diff --git a/media-libs/amf-headers/Manifest b/media-libs/amf-headers/Manifest index 30470c8e7177..1bbd6cac147d 100644 --- a/media-libs/amf-headers/Manifest +++ b/media-libs/amf-headers/Manifest @@ -1,2 +1,4 @@ DIST amf-headers-1.4.33.tar.gz 198142272 BLAKE2B 65e616012463e21bfa113ff62f76baaf186e18c6b3422bf5b2fdf8d208efe0ea7d07b74d6d292bc391202d2190c871dd0d6f997783b3ffa533d4086e395ae67f SHA512 e0c4f583996ff2d1d61c53b8ce7ef2eadb32d2a13930e59146b935840e31d032c5cec48baced70b0007fa5f33e30537d03ddf71140ff51213085aba20e16f5ca DIST amf-headers-1.4.34.tar.gz 164856609 BLAKE2B d406648ffb7a0f7839971324a5fc4e0a8c3ef3835d2d31a84c05b01826b594323368d6486fd7fb324d004591619a5aacaa292ee39332c04d17688e8dc6c0d051 SHA512 184e30df08b3204425cf9833d8749a5a2470bf781a8d217460f0fe71d421e2dafbf028b4ee600793cd4dafafed6572f4661fd6a6e8f993fd000a6e0f83a836c3 +DIST amf-headers-1.4.35.tar.gz 179084584 BLAKE2B f8b95e362dd213add36049b9a35502e5450e21988ec6135c19988fd496356c39b0e4884ae554b7393f9c23d5403cd75c917c516fc7bfe7e3bb0433dc34b79f41 SHA512 8a2aa3a358a7c0cfac47f545b8a375de86652d6590795161ad592e49219f54f5ec8dd06d5d48ea9e091fac09e83dbac2044d7ed551898f907cc1b30eea66b7ab +DIST amf-headers-1.4.36.tar.gz 179136336 BLAKE2B dbc9992096c4f72e42bab41d37a596469accdd731a4abe2966b30c32e603559d0e7124873a5cac67e39cb46bfa2e6112a766a8be1f24daf1d0646ca72da11f2f SHA512 589fccabaadb27e48e9adb1d3594db2adadee343c966f8db99ff29a92ec78ae6b0c42f13113a4fc66da0044ee660cfa1caf6867c508af044935646c09f5af50e diff --git a/media-libs/amf-headers/amf-headers-1.4.33.ebuild b/media-libs/amf-headers/amf-headers-1.4.33.ebuild index 8f09702ba84b..af6e611697eb 100644 --- a/media-libs/amf-headers/amf-headers-1.4.33.ebuild +++ b/media-libs/amf-headers/amf-headers-1.4.33.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 @@ -14,11 +14,10 @@ fi DESCRIPTION="The Advanced Media Framework (AMF) SDK" HOMEPAGE="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" +S="${WORKDIR}/AMF-${PV}" + LICENSE="MIT" SLOT="0" -IUSE="" - -S="${WORKDIR}/AMF-${PV}" src_unpack() { default diff --git a/media-libs/amf-headers/amf-headers-1.4.34.ebuild b/media-libs/amf-headers/amf-headers-1.4.34.ebuild index d4427b9c36fb..86f1d22414ed 100644 --- a/media-libs/amf-headers/amf-headers-1.4.34.ebuild +++ b/media-libs/amf-headers/amf-headers-1.4.34.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 @@ -17,7 +17,7 @@ HOMEPAGE="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" S="${WORKDIR}/AMF-${PV}" LICENSE="MIT" -SLOT="0/34" +SLOT="0" src_unpack() { default diff --git a/media-libs/amf-headers/amf-headers-1.4.35.ebuild b/media-libs/amf-headers/amf-headers-1.4.35.ebuild new file mode 100644 index 000000000000..86f1d22414ed --- /dev/null +++ b/media-libs/amf-headers/amf-headers-1.4.35.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" +else + SRC_URI="https://github.com/GPUOpen-LibrariesAndSDKs/AMF/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64" +fi + +DESCRIPTION="The Advanced Media Framework (AMF) SDK" +HOMEPAGE="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" + +S="${WORKDIR}/AMF-${PV}" + +LICENSE="MIT" +SLOT="0" + +src_unpack() { + default + + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + fi +} + +src_install() { + insinto "/usr/include/AMF" + doins -r "${S}/amf/public/include/"* +} diff --git a/media-libs/amf-headers/amf-headers-1.4.36.ebuild b/media-libs/amf-headers/amf-headers-1.4.36.ebuild new file mode 100644 index 000000000000..86f1d22414ed --- /dev/null +++ b/media-libs/amf-headers/amf-headers-1.4.36.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" +else + SRC_URI="https://github.com/GPUOpen-LibrariesAndSDKs/AMF/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64" +fi + +DESCRIPTION="The Advanced Media Framework (AMF) SDK" +HOMEPAGE="https://github.com/GPUOpen-LibrariesAndSDKs/AMF" + +S="${WORKDIR}/AMF-${PV}" + +LICENSE="MIT" +SLOT="0" + +src_unpack() { + default + + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + fi +} + +src_install() { + insinto "/usr/include/AMF" + doins -r "${S}/amf/public/include/"* +} diff --git a/media-libs/ampache_browser/Manifest b/media-libs/ampache_browser/Manifest index d123aa64ffc4..199577f74dcf 100644 --- a/media-libs/ampache_browser/Manifest +++ b/media-libs/ampache_browser/Manifest @@ -1,2 +1,2 @@ -DIST ampache_browser-1.0.6.tar.gz 73982 BLAKE2B c67126c02706c0668884044e03dd128ee33a6b6a9d459899e9cc9e6e24e61e586aee406c9fa30338133c959752559c0dba1a7e38cf19dba8e7908b59c0866a0b SHA512 08e1f5a7fe525819a8b55e66f43fde0cfdff5273103b167400c47b9d67dcf4b818466de8b0c9684dac4c9102aee53e50a202a3e3f9775c7e7471a4d133b6ae24 DIST ampache_browser-1.0.7.tar.gz 75648 BLAKE2B eddd929a90d632712b2cc1d2c6adce37f7567d17421f404954fcbf70714ef38a0fff2646ae44b4a894f087743da708020d0847a6c7f7ac3d8eb7525d6d003545 SHA512 fc9b7492a14f36860f0f63ccf682760d0013dad91c0011dbd58370fd3fa83918add6e22702bf4dda6f8ee7b029fdaf9431bea33ecb6dcccf345d6fed80f863af +DIST ampache_browser-1.0.8.tar.gz 76531 BLAKE2B 6039cc4491bfd1418e636ed609839426be676db6eeca7b7e1f37d980bb7f8de0281ff161375bd210bfd3f9fe65086e2161502468c8c78fcb9fe3f8494b80cad4 SHA512 81bceb8eac5581bb2c0af8ef40a5fcb7c52d4b0a00417fe1a4976893d8748ba84d2f865bbc523723cd85d46ccd28adabaf8129fd798896b8c20246828678308d diff --git a/media-libs/ampache_browser/ampache_browser-1.0.7.ebuild b/media-libs/ampache_browser/ampache_browser-1.0.7-r1.ebuild index a33d3043d4c7..3b2f96135fce 100644 --- a/media-libs/ampache_browser/ampache_browser-1.0.7.ebuild +++ b/media-libs/ampache_browser/ampache_browser-1.0.7-r1.ebuild @@ -6,29 +6,20 @@ EAPI=8 inherit cmake DESCRIPTION="Ampache desktop client library" -HOMEPAGE="http://ampache-browser.org https://github.com/ampache-browser/ampache_browser" +HOMEPAGE="https://ampache-browser.org https://github.com/ampache-browser/ampache_browser" SRC_URI="https://github.com/ampache-browser/ampache_browser/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-3" SLOT="0" KEYWORDS="amd64 ~riscv x86" -IUSE="debug nls qt6" - -RDEPEND=" - qt6? ( dev-qt/qtbase:6[concurrent,gui,widgets] ) - !qt6? ( - dev-qt/qtconcurrent:5 - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - ) -" +IUSE="debug nls" +RDEPEND="dev-qt/qtbase:6[concurrent,gui,widgets]" DEPEND="${RDEPEND}" src_configure() { local mycmakeargs=( - -DUSE_QT6="$(usex qt6)" + -DUSE_QT6=ON -DUSE_NLS="$(usex nls)" ) cmake_src_configure diff --git a/media-libs/ampache_browser/ampache_browser-1.0.6.ebuild b/media-libs/ampache_browser/ampache_browser-1.0.8.ebuild index 29e91f37c216..0c4db59eb2e5 100644 --- a/media-libs/ampache_browser/ampache_browser-1.0.6.ebuild +++ b/media-libs/ampache_browser/ampache_browser-1.0.8.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,29 +6,19 @@ EAPI=8 inherit cmake DESCRIPTION="Ampache desktop client library" -HOMEPAGE="http://ampache-browser.org https://github.com/ampache-browser/ampache_browser" +HOMEPAGE="https://ampache-browser.org https://github.com/ampache-browser/ampache_browser" SRC_URI="https://github.com/ampache-browser/ampache_browser/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-3" SLOT="0" -KEYWORDS="amd64 ~riscv x86" -IUSE="debug nls qt6" - -RDEPEND=" - qt6? ( dev-qt/qtbase:6[concurrent,gui,widgets] ) - !qt6? ( - dev-qt/qtconcurrent:5 - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - ) -" +KEYWORDS="~amd64 ~riscv ~x86" +IUSE="debug nls" +RDEPEND="dev-qt/qtbase:6[concurrent,gui,widgets]" DEPEND="${RDEPEND}" src_configure() { local mycmakeargs=( - -DUSE_QT6="$(usex qt6)" -DUSE_NLS="$(usex nls)" ) cmake_src_configure diff --git a/media-libs/avidemux-plugins/metadata.xml b/media-libs/avidemux-plugins/metadata.xml index 7a85584cd7c5..656454924dba 100644 --- a/media-libs/avidemux-plugins/metadata.xml +++ b/media-libs/avidemux-plugins/metadata.xml @@ -12,7 +12,6 @@ <flag name="fdk">Adds support for encoding AAC using <pkg>media-libs/fdk-aac</pkg>.</flag> <flag name="fribidi">Enable unicode bidirectional algorithm support via <pkg>dev-libs/fribidi</pkg>.</flag> <flag name="twolame">Enable TwoLAME support via <pkg>media-sound/twolame</pkg>, an optimised MPEG Audio Layer 2 (MP2) encoder.</flag> - <flag name="vpx">Enable WebM VP8 Codec SDK support via <pkg>media-libs/libvpx</pkg>.</flag> <flag name="x265">Enables HEVC support with <pkg>media-libs/x265</pkg>.</flag> </use> <upstream> diff --git a/media-libs/babl/Manifest b/media-libs/babl/Manifest index 086ea22b8d9c..cf77afa3c4e8 100644 --- a/media-libs/babl/Manifest +++ b/media-libs/babl/Manifest @@ -1,3 +1,2 @@ -DIST babl-0.1.106.tar.xz 315068 BLAKE2B 560518beab77ec2f3fc50062bda80839f749992e4c61bef3badd4acfbc2a7bba6dce332ffabe65dcf18e4ba450d0ae1d261b5e34724a1309ea74e50ce3e452c7 SHA512 97dc57141754ff64a961f77df50dcd91b32d3cf26efa8ba9f3dd5fcfae41e96f986178a04ba7a8940effb6e6e33ac98b163551f377dc781308c750222efb4943 DIST babl-0.1.108.tar.xz 317036 BLAKE2B a2ece95d7cad33aa70e41ee9c01bd11b7fb1730cb0e0d64df42c4c933a1ac1955b103d75d2ade613ebee0362ade8aaf8ed1257a3cbe307d623243869244f67c1 SHA512 3ebdd18b32505e3009ba8f4957ffe892226d83012fbf3217b1761645fdcae943a19bda1a1f93adde78a5dd83fa11b0ba23014118228ca4eab4fd18001f1f4970 DIST babl-0.1.110.tar.xz 319256 BLAKE2B 545b15152123e6d470976d8d3279a77ad13c0434379b6e055ce4f6b8f637387fef28e477d04857f570b7b3d1711868cc0dc9c2616b83dc75fe49684589f69e27 SHA512 20e40baa6654785d69642e6e85542968db3c5d08da630adc590ff066a52c5938f4ce8a77c0097e00010a905c8c31d8f131eb0308a3f8b6439ab6be4133eae246 diff --git a/media-libs/babl/babl-0.1.106.ebuild b/media-libs/babl/babl-0.1.106.ebuild deleted file mode 100644 index e4c20f017748..000000000000 --- a/media-libs/babl/babl-0.1.106.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VALA_USE_DEPEND=vapigen - -inherit meson gnome2-utils vala - -if [[ ${PV} == *9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/babl.git" - SRC_URI="" -else - SRC_URI="https://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.xz" - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="A dynamic, any to any, pixel format conversion library" -HOMEPAGE="https://gegl.org/babl/" - -LICENSE="LGPL-3" -SLOT="0" -IUSE="introspection lcms vala cpu_flags_x86_avx2 cpu_flags_x86_f16c cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse4_1" -REQUIRED_USE="vala? ( introspection )" - -BDEPEND=" - virtual/pkgconfig - vala? ( $(vala_depend) ) -" -RDEPEND=" - introspection? ( >=dev-libs/gobject-introspection-1.72:= ) - lcms? ( >=media-libs/lcms-2.13.1:2 ) -" -DEPEND="${RDEPEND}" - -src_prepare() { - default - gnome2_environment_reset -} - -src_configure() { - use vala && vala_setup - - # Automagic rsvg support is just for website generation we do not call, - # so we don't need to fix it - # w3m is used for dist target thus no issue for us that it is automagically - # detected - local emesonargs=( - -Dwith-docs=false - $(meson_use introspection enable-gir) - $(meson_use lcms with-lcms) - $(meson_use vala enable-vapi) - $(meson_use cpu_flags_x86_avx2 enable-avx2) - $(meson_use cpu_flags_x86_f16c enable-f16c) - $(meson_use cpu_flags_x86_mmx enable-mmx) - $(meson_use cpu_flags_x86_sse enable-sse) - $(meson_use cpu_flags_x86_sse2 enable-sse2) - $(meson_use cpu_flags_x86_sse4_1 enable-sse4_1) - ) - meson_src_configure -} - -src_install() { - meson_src_install - - # Create symlink for backward compatibility. See also bug 871690 - dosym -r /usr/"$(get_libdir)"/pkgconfig/babl-0.1.pc /usr/"$(get_libdir)"/pkgconfig/babl.pc -} diff --git a/media-libs/babl/babl-0.1.108.ebuild b/media-libs/babl/babl-0.1.108.ebuild index 0c5bacbfcfa9..2e4db1d066e1 100644 --- a/media-libs/babl/babl-0.1.108.ebuild +++ b/media-libs/babl/babl-0.1.108.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]]; then SRC_URI="" else SRC_URI="https://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.xz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi DESCRIPTION="A dynamic, any to any, pixel format conversion library" diff --git a/media-libs/blib/blib-1.1.7-r4.ebuild b/media-libs/blib/blib-1.1.7-r4.ebuild new file mode 100644 index 000000000000..1c39f810fe2c --- /dev/null +++ b/media-libs/blib/blib-1.1.7-r4.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Library full of useful things to hack the Blinkenlights" +HOMEPAGE="http://www.blinkenlights.de" +SRC_URI="http://www.blinkenlights.de/dist/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="aalib gtk" + +RDEPEND=" + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + aalib? ( media-libs/aalib ) + gtk? ( + app-accessibility/at-spi2-core:2 + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz:= + x11-libs/cairo + x11-libs/gtk+:2 + x11-libs/pango + )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${P}-deprecated.patch + "${FILESDIR}"/${P}-C23.patch +) + +src_prepare() { + default + + # drop DEPRECATED flags, bug #391105 + sed -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' \ + -i {blib,gfx,{,test/}modules}/Makefile.{am,in} || die + + #https://bugs.gentoo.org/899808 + eautoreconf +} + +src_configure() { + local econfargs=( + $(use_enable aalib aa) + --disable-directfb + $(use_enable gtk) + ) + + econf "${econfargs[@]}" +} + +src_install() { + default + + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/media-libs/blib/files/blib-1.1.7-C23.patch b/media-libs/blib/files/blib-1.1.7-C23.patch new file mode 100644 index 000000000000..662e1d20dc24 --- /dev/null +++ b/media-libs/blib/files/blib-1.1.7-C23.patch @@ -0,0 +1,105 @@ +https://bugs.gentoo.org/921126 +Fix for incompatible pointer types: Just upsize the size +everywhere it's used, so it fits in largest, gsize +diff -ru a/blib/bpacket.c a/blib/bpacket.c +--- a/blib/bpacket.c 2025-01-09 18:10:29.298407575 +0400 ++++ a/blib/bpacket.c 2025-01-09 18:13:09.318508466 +0400 +@@ -48,10 +48,10 @@ + gint height, + gint channels, + gint maxval, +- gint *data_size) ++ gsize *data_size) + { + BPacket *packet; +- gint size; ++ gsize size; + + g_return_val_if_fail (width > 0, NULL); + g_return_val_if_fail (height > 0, NULL); +diff -ru a/blib/bpacket.h a/blib/bpacket.h +--- a/blib/bpacket.h 2025-01-09 18:10:29.297407580 +0400 ++++ a/blib/bpacket.h 2025-01-09 18:12:22.749770123 +0400 +@@ -42,7 +42,7 @@ + gint height, + gint channels, + gint maxval, +- gint *data_size); ++ gsize *data_size); + gsize b_packet_size (BPacket *packet); + void b_packet_hton (BPacket *packet); + void b_packet_ntoh (BPacket *packet); +diff -ru a/blib/breceiver.c b/blib/breceiver.c +--- a/blib/breceiver.c 2025-01-09 18:23:21.159070702 +0400 ++++ b/blib/breceiver.c 2025-01-09 18:24:36.299648508 +0400 +@@ -354,7 +354,7 @@ + + case MAGIC_BLFRAME: + { +- gint size; ++ gsize size; + + fake = b_packet_new (18, 8, 1, 1, &size); + +Dealing with implicit declarations: autoreconf and #include "config.h" +in places where they were not included previously +diff -ru a/configure.in a/configure.in +--- a/configure.in 2025-01-09 18:10:29.297407580 +0400 ++++ a/configure.in 2025-01-09 18:15:55.400575296 +0400 +@@ -20,6 +20,8 @@ + BLIB_API_VERSION=$BLIB_MAJOR_VERSION.$BLIB_MINOR_VERSION + BLIB_VERSION=$BLIB_MAJOR_VERSION.$BLIB_MINOR_VERSION.$BLIB_MICRO_VERSION + ++AC_USE_SYSTEM_EXTENSIONS ++ + AC_SUBST(BLIB_MAJOR_VERSION) + AC_SUBST(BLIB_MINOR_VERSION) + AC_SUBST(BLIB_MICRO_VERSION) +diff -ru a/modules/bcountdown.c b/modules/bcountdown.c +--- a/modules/bcountdown.c 2025-01-09 18:23:21.161070691 +0400 ++++ b/modules/bcountdown.c 2025-01-09 18:25:27.179362628 +0400 +@@ -21,6 +21,8 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#include "config.h" ++ + #include <stdlib.h> + #include <string.h> + #include <sys/time.h> +diff -ru a/modules/bdropout.c b/modules/bdropout.c +--- a/modules/bdropout.c 2025-01-09 18:23:21.161070691 +0400 ++++ b/modules/bdropout.c 2025-01-09 18:25:53.499214744 +0400 +@@ -18,6 +18,8 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#include "config.h" ++ + #include <stdlib.h> + + #include <glib.h> +diff -ru a/modules/bpushline.c b/modules/bpushline.c +--- a/modules/bpushline.c 2025-01-09 18:23:21.161070691 +0400 ++++ b/modules/bpushline.c 2025-01-09 18:23:30.867016155 +0400 +@@ -18,6 +18,8 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#include "config.h" ++ + #include <stdlib.h> + + #include <glib.h> +diff -ru a/modules/btetris.c b/modules/btetris.c +--- a/modules/btetris.c 2025-01-09 18:23:21.161070691 +0400 ++++ b/modules/btetris.c 2025-01-09 18:25:36.835308374 +0400 +@@ -18,6 +18,8 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#include "config.h" ++ + #include <string.h> + #include <stdlib.h> + #include <unistd.h> diff --git a/media-libs/cimg/Manifest b/media-libs/cimg/Manifest index f8c3a9a02786..4a0af0eec6f8 100644 --- a/media-libs/cimg/Manifest +++ b/media-libs/cimg/Manifest @@ -1,2 +1,2 @@ -DIST cimg-3.2.4.tar.gz 12660194 BLAKE2B f30f24e388a066a6923a72be00055449862cc643bbe870e55198718e185d2fe9213cb8f19cb83c68fe6ff5ea4e93c2529f70c7256b2d022b304cb2b020f0db11 SHA512 71cbf5161a7778a14e105d8aa41bf0431303b6f4a0f4982d3788903b0505f5ae96be9515c67ea6a52e0e76fdcb25efe3cfd7684980545d078ff41e10dbb4fbb6 DIST cimg-3.4.1.tar.gz 12667815 BLAKE2B ad65938c75e28dbf9645e23972bd7d4e867c0ec16df686ce16b56cf4704869159ae3716d5d10675ac5965832341551612fbdb78ac6e5ca79157c948200ec031c SHA512 54357c177c1e25117778d444e0317a5a5f9dc9dd40ff2c280b6c05f846b2352c523ba6ab9eeea2e05094cc8fbbfe5a544a5f83eeda46394b3d87962b3b1e31d5 +DIST cimg-3.4.3.tar.gz 12669374 BLAKE2B a7899c21e99c19a9422b3774cfa8b81e0ffc60e853bf184e7e33eac3e5a3dc8d604a1235f3824f414ad64c3647c81a720cd722a2814c11ebc8fb1c5fafd0b750 SHA512 df6e45cef8dfb3eb121bd8bcb76c1b21e2dbad0ce5d651b1fa507a64667fbfad2b64817c5d072c1e34080bdae2dfce8cab6ee8410e261033f001c03967370fbc diff --git a/media-libs/cimg/cimg-3.2.4.ebuild b/media-libs/cimg/cimg-3.4.3.ebuild index 47fd055c6a9c..81ead1e98430 100644 --- a/media-libs/cimg/cimg-3.2.4.ebuild +++ b/media-libs/cimg/cimg-3.4.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/media-libs/clutter-gtk/clutter-gtk-1.8.4-r2.ebuild b/media-libs/clutter-gtk/clutter-gtk-1.8.4-r2.ebuild index ad5e2498f2bb..57db1b858f08 100644 --- a/media-libs/clutter-gtk/clutter-gtk-1.8.4-r2.ebuild +++ b/media-libs/clutter-gtk/clutter-gtk-1.8.4-r2.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Clutter" LICENSE="LGPL-2.1+" SLOT="1.0" -KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc x86" +KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" IUSE="X debug examples gtk +introspection wayland" RDEPEND=" diff --git a/media-libs/coin/Manifest b/media-libs/coin/Manifest index 68be7c500f65..e7fd0dddcccf 100644 --- a/media-libs/coin/Manifest +++ b/media-libs/coin/Manifest @@ -1,2 +1 @@ -DIST coin-4.0.2-src.tar.gz 7160869 BLAKE2B a434ea2a550557024c665e392aa189e991296b5f8c9cd2c0dc5bb71d41a948ed9d9b34eac69dc9a651f70abf8ec1f188cb8df6534d6e31b6e4e1a6ec4acaffcd SHA512 31fcb69627e466c89bb640c5b2351db4e51772408a4ce56cae7d6f550ddf19adf9b121252479297d5c2a208032194d8f4e7bf97686b0611df1ac45231e09baad DIST coin-4.0.3-src.tar.gz 13099754 BLAKE2B c56f9e7b837bad76996a78ba3351c43b78b082c6250735e678ca9af79b3518d369e223a1625d74c8d007fff814f32e6bd6fe04c4dd5df9dd999f6afed767afeb SHA512 b661bf2124b0de1b46e76a6699b0975abb3aed4dc9019bf32531c535179dc84a90fe4e19def6f6cda7b175470636040d0e58812d532198cf207296d37c539915 diff --git a/media-libs/coin/coin-4.0.2.ebuild b/media-libs/coin/coin-4.0.2.ebuild deleted file mode 100644 index f29e2b744391..000000000000 --- a/media-libs/coin/coin-4.0.2.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic - -DESCRIPTION="A high-level 3D graphics toolkit, fully compatible with SGI Open Inventor 2.1" -HOMEPAGE="https://github.com/coin3d/coin/wiki" -SRC_URI="https://github.com/coin3d/coin/releases/download/v${PV}/${P}-src.tar.gz" -S="${WORKDIR}/${PN}" - -LICENSE="|| ( GPL-2 PEL )" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux" -SLOT="0" -IUSE="debug doc +exceptions javascript man openal qthelp test threads" -RESTRICT="!test? ( test )" - -REQUIRED_USE=" - man? ( doc ) - qthelp? ( doc ) -" - -RDEPEND=" - app-arch/bzip2 - dev-libs/expat - media-libs/fontconfig - media-libs/freetype:2 - media-libs/simage - sys-libs/zlib - virtual/opengl - virtual/glu - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - javascript? ( dev-lang/spidermonkey:60 ) - openal? ( media-libs/openal ) -" -DEPEND="${RDEPEND} - dev-libs/boost:0 - x11-base/xorg-proto - doc? ( qthelp? ( dev-qt/qthelp:5 ) ) -" -BDEPEND="doc? ( app-text/doxygen )" - -PATCHES=( - "${FILESDIR}"/${PN}-4.0.0-0007-Locate-slotted-qhelpgenerator.patch -) - -DOCS=( - AUTHORS FAQ FAQ.legal NEWS THANKS docs/HACKING -) - -src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/859832 - # https://github.com/coin3d/coin/issues/521 - filter-lto - - use debug && append-cppflags -DCOIN_DEBUG=1 - - local mycmakeargs=( - -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" - - -DCOIN_BUILD_SHARED_LIBS=ON - -DCOIN_BUILD_TESTS=$(usex test) - -DCOIN_BUILD_DOCUMENTATION=$(usex doc) - - -DCOIN_BUILD_INTERNAL_DOCUMENTATION=OFF - -DCOIN_BUILD_DOCUMENTATION_MAN=$(usex man) - -DCOIN_BUILD_DOCUMENTATION_QTHELP=$(usex qthelp) - -DCOIN_BUILD_DOCUMENTATION_CHM=OFF - - -DCOIN_THREADSAFE=$(usex threads) - -DHAVE_VRML97=ON - -DCOIN_HAVE_JAVASCRIPT=$(usex javascript) - -DHAVE_NODEKITS=ON - -DHAVE_DRAGGERS=ON - -DHAVE_MANIPULATORS=ON - -DHAVE_SOUND=$(usex openal) - -DHAVE_3DS_IMPORT_CAPABILITIES=ON - -DUSE_EXTERNAL_EXPAT=ON - -DUSE_EXCEPTIONS=$(usex exceptions) - -DUSE_SUPERGLU=OFF - - -DFONTCONFIG_RUNTIME_LINKING=OFF - -DFREETYPE_RUNTIME_LINKING=OFF - -DLIBBZIP2_RUNTIME_LINKING=OFF - -DOPENAL_RUNTIME_LINKING=OFF - -DSIMAGE_RUNTIME_LINKING=OFF - -DZLIB_RUNTIME_LINKING=OFF - -DGLU_RUNTIME_LINKING=OFF - -DSPIDERMONKEY_RUNTIME_LINKING=ON - - -DCOIN_VERBOSE=$(usex debug) - -DHAVE_MULTIPLE_VERSION=OFF - - -DCOIN_BUILD_SINGLE_LIB=ON - ) - - cmake_src_configure -} - -src_test() { - pushd "${BUILD_DIR}/bin" > /dev/null || die - ./CoinTests -r detailed || die "Tests failed." - popd > /dev/null || die -} diff --git a/media-libs/coin/coin-4.0.3.ebuild b/media-libs/coin/coin-4.0.3.ebuild index 75d11ab2481a..6129b3b20078 100644 --- a/media-libs/coin/coin-4.0.3.ebuild +++ b/media-libs/coin/coin-4.0.3.ebuild @@ -12,7 +12,7 @@ S="${WORKDIR}/${PN}" LICENSE="|| ( GPL-2 PEL )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux" IUSE="debug doc +exceptions openal qch test threads" REQUIRED_USE="qch? ( doc )" diff --git a/media-libs/coin/files/coin-4.0.0-0007-Locate-slotted-qhelpgenerator.patch b/media-libs/coin/files/coin-4.0.0-0007-Locate-slotted-qhelpgenerator.patch deleted file mode 100644 index 7c53c4e12952..000000000000 --- a/media-libs/coin/files/coin-4.0.0-0007-Locate-slotted-qhelpgenerator.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -ruN coin/src/doc/CMakeLists.txt my/src/doc/CMakeLists.txt ---- coin/src/doc/CMakeLists.txt 2019-12-23 20:47:44.000000000 +0100 -+++ my/src/doc/CMakeLists.txt 2022-10-17 21:02:17.868469249 +0200 -@@ -30,7 +30,8 @@ - endif() - endif() - if(COIN_BUILD_DOCUMENTATION_QTHELP) -- find_program(QHG_LOCATION NAMES qhelpgenerator qhelpgenerator-qt5 DOC "Qt qhelpgenerator") -+ find_package(Qt5Help REQUIRED) -+ get_target_property(QHG_LOCATION Qt5::qhelpgenerator LOCATION) - if(NOT QHG_LOCATION) - message(FATAL_ERROR "Missing program Qt qhelpgenerator") - else() diff --git a/media-libs/coin/metadata.xml b/media-libs/coin/metadata.xml index 8ab9e491c2ab..073c629215f8 100644 --- a/media-libs/coin/metadata.xml +++ b/media-libs/coin/metadata.xml @@ -7,7 +7,6 @@ <use> <flag name="exceptions">Compile with C++ exceptions</flag> <flag name="qch">Install API documentation in QCH format</flag> - <flag name="qthelp">Build API documentation in QtHelp format</flag> </use> <upstream> <remote-id type="github">coin3d/coin</remote-id> diff --git a/media-libs/ctl/ctl-1.5.3.ebuild b/media-libs/ctl/ctl-1.5.3.ebuild index 11e4fd2a2845..91f9323e614e 100644 --- a/media-libs/ctl/ctl-1.5.3.ebuild +++ b/media-libs/ctl/ctl-1.5.3.ebuild @@ -5,8 +5,6 @@ EAPI=8 inherit cmake flag-o-matic -MY_COMMIT=3fc4ae7a8af35d380654e573d895216fd5ba407e - DESCRIPTION="AMPAS' Color Transformation Language" HOMEPAGE="https://github.com/ampas/CTL" SRC_URI="https://github.com/ampas/CTL/archive/${P}.tar.gz" @@ -14,7 +12,7 @@ S="${WORKDIR}/CTL-${P}" LICENSE="AMPAS" SLOT="0" -KEYWORDS="~amd64 ~ppc64 ~x86" +KEYWORDS="amd64 ~ppc64 x86" IUSE="test" RESTRICT="!test? ( test )" diff --git a/media-libs/embree/embree-4.3.3.ebuild b/media-libs/embree/embree-4.3.3.ebuild index eb4bc120565a..f7a64831d453 100644 --- a/media-libs/embree/embree-4.3.3.ebuild +++ b/media-libs/embree/embree-4.3.3.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 @@ -11,7 +11,7 @@ SRC_URI="https://github.com/embree/embree/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="Apache-2.0" SLOT="$(ver_cut 1)" -KEYWORDS="-* ~amd64 ~arm64" +KEYWORDS="-* amd64 ~arm64" X86_CPU_FLAGS=( sse2 sse4_2 avx avx2 avx512dq ) CPU_FLAGS=( cpu_flags_arm_neon "${X86_CPU_FLAGS[@]/#/cpu_flags_x86_}" ) IUSE="compact-polys ispc +raymask ssp +tbb test ${CPU_FLAGS[*]}" diff --git a/media-libs/exiftool/Manifest b/media-libs/exiftool/Manifest index 0c43151014cb..cefa7cda9593 100644 --- a/media-libs/exiftool/Manifest +++ b/media-libs/exiftool/Manifest @@ -1 +1,2 @@ DIST Image-ExifTool-12.76.tar.gz 5320564 BLAKE2B caaacf4e04246c42ea12f0f491c60a95ed0c55a6e68b5007c2b265ba3b04da661bea53f374f3f66903bd9c086bab7526be63145544d3763c41c3437b4a504654 SHA512 3e00718663cf1eb8f9b93ad2bdcaf7beb31d20d40ad7b131cb70155c660795afc8ba430610ece5e2949773667ea27d57eb417b8bf64a108409b336daffa99db7 +DIST Image-ExifTool-13.10.tar.gz 7230651 BLAKE2B 7d4ed8c97719093661485ce375a3e21edbae6d6abadefb9b6ee684941d8b4339ad89ec074bdec7db1d82b36be7f521837936006721120ee1b7dab21977764cc8 SHA512 6364459939e99d76850207f04428d07ec83173c90917f039a5fe6f4029aff03acb370393404b2a5276b89eba4e49eefe7659bff868d9304e69286f80311f2714 diff --git a/media-libs/exiftool/exiftool-13.10.ebuild b/media-libs/exiftool/exiftool-13.10.ebuild new file mode 100644 index 000000000000..52c077e9bd6b --- /dev/null +++ b/media-libs/exiftool/exiftool-13.10.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Check https://exiftool.org/history.html for whether a release is 'production' +# Ideally don't bump to non-production at all, but certainly don't stable. +# +# We fetch from CPAN because it only has production releases and the tarballs +# are kept around for longer (see bug #924106). + +DIST_AUTHOR=EXIFTOOL +DIST_NAME=Image-ExifTool +inherit perl-module + +DESCRIPTION="Read and write meta information in image, audio and video files" +HOMEPAGE="https://exiftool.org/ https://exiftool.sourceforge.net" + +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x64-macos" +IUSE="doc" + +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/faun/Manifest b/media-libs/faun/Manifest index 003becd5010b..bf4da9d5f578 100644 --- a/media-libs/faun/Manifest +++ b/media-libs/faun/Manifest @@ -1 +1 @@ -DIST faun-0.1.4.tar.gz 110154 BLAKE2B a41e33282442a1b2999c7cc46fc6978607b6d6f2e6d8d7e92dd43386f2ff2ac61aa3c86e0219ffded8a35224c366a85cd7ab1c36a128eb746457be9fdea76c8e SHA512 4449c478109dd78933e346e87228639d0c5fcc33466a60a9649756cb69b087b82a7e0aa21591b4b2e8046858ac6ac9fc7cc43d84eb2e64624b49af8445dcda21 +DIST faun-0.2.1.tar.gz 118623 BLAKE2B 812f99462d512efde104c664ae1a12b0ada5b87e7b975c2f89274c41d9d24409eccb2ea28d37e02225dab0d6290bf2fa5302a55b5ec824ae7943aaa6149c80cb SHA512 d145d99519c6836147f27bada0b87b70ad864b9bb3af3860183fc7a1c0b51c10a6f904ca365f7016510088d4f83e42dbd2d0e9dd260ad73209e29985af3a9fd4 diff --git a/media-libs/faun/faun-0.1.4.ebuild b/media-libs/faun/faun-0.2.1.ebuild index a5b0eb2e7089..3750f5c686a8 100644 --- a/media-libs/faun/faun-0.1.4.ebuild +++ b/media-libs/faun/faun-0.2.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2023-2024 Gentoo Authors +# Copyright 2023-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,23 +6,24 @@ EAPI=8 inherit edo toolchain-funcs DESCRIPTION="A high-level C audio library" -HOMEPAGE="https://wickedsmoke.github.io/faun/" -SRC_URI="https://github.com/WickedSmoke/faun/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" +HOMEPAGE="https://wickedsmoke.codeberg.page/faun_doc/" +SRC_URI="https://codeberg.org/wickedsmoke/faun/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}" -# based on COPYING file -LICENSE="MIT flac? ( GPL-2 )" +LICENSE="MIT" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="flac" DEPEND=" + flac? ( media-libs/flac ) media-libs/libpulse media-libs/libvorbis " RDEPEND="${DEPEND}" PATCHES=( - "${FILESDIR}/${PN}-0.1.2_makefile.patch" + "${FILESDIR}/${PN}-0.2.1_makefile.patch" ) src_configure() { diff --git a/media-libs/faun/files/faun-0.1.2_makefile.patch b/media-libs/faun/files/faun-0.1.2_makefile.patch deleted file mode 100644 index 5bc22077aad2..000000000000 --- a/media-libs/faun/files/faun-0.1.2_makefile.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 7d87d5e2fc52c1d429fe99b505bf2db643c82da2 Mon Sep 17 00:00:00 2001 -From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> -Date: Fri, 28 Apr 2023 14:58:02 +0300 -Subject: [PATCH] Fix buildsystem - -* Respect CC, CFLAGS, LDFLAGS -* Don't strip binaries on install ---- a/Makefile -+++ b/Makefile -@@ -6,10 +6,13 @@ ifeq ($(STATIC),1) - STATIC_LIB=true - endif - --CFLAGS=-O3 -DNDEBUG -+CC ?= cc -+PKG_CONFIG ?= pkg-config -+ -+CFLAGS ?= -O3 -DNDEBUG - #CFLAGS=-g -DDEBUG - --OPT=-DUSE_SFX_GEN -+OPT=-DUSE_SFX_GEN `$(PKG_CONFIG) --cflags libpulse-simple libpulse vorbisfile` - ifeq ($(FLAC),1) - OPT+=-DUSE_FLAC - endif -@@ -25,7 +28,7 @@ else - LIB_DIR=$(DESTDIR)/lib - endif - --DEP_LIB = -lpulse-simple -lpulse -lvorbisfile -lpthread -lm -+DEP_LIB = `$(PKG_CONFIG) --libs libpulse-simple libpulse vorbisfile` -lpthread -lm - - ifdef STATIC_LIB - FAUN_LIB=libfaun.a -@@ -49,10 +52,10 @@ obj: - mkdir obj - - obj/tmsg.o: support/tmsg.c obj -- cc -c -pipe -Wall -W $< $(CFLAGS) -Isupport $(OPT) -fPIC -o $@ -+ $(CC) -c -pipe -Wall -W $< $(CFLAGS) -Isupport $(OPT) -fPIC -o $@ - - obj/faun.o: faun.c support/wav_write.c support/wav_read.c support/flac.c support/sfx_gen.c support/well512.c support/os_thread.h support/tmsg.h support/flac.h support/sfx_gen.h support/well512.h obj -- cc -c -pipe -Wall -W $< $(CFLAGS) -Isupport $(OPT) -fPIC -o $@ -+ $(CC) -c -pipe -Wall -W $< $(CFLAGS) -Isupport $(OPT) -fPIC -o $@ - - $(FAUN_LIB): obj/tmsg.o obj/faun.o - ifdef STATIC_LIB -@@ -60,16 +63,16 @@ ifdef STATIC_LIB - ranlib $@ - #strip -d $@ - else -- cc -o $@ $^ -shared -Wl,-soname,$(FAUN_SO) $(DEP_LIB) -+ $(CC) -o $@ $^ -shared -Wl,-soname,$(FAUN_SO) $(LDFLAGS) $(DEP_LIB) - ln -sf $@ $(FAUN_SO) - ln -sf $@ libfaun.so - endif - - faun_test: faun_test.c $(FAUN_LIB) -- cc -Wall -W $< $(CFLAGS) -I. -L. -lfaun $(DEP_STATIC) -o $@ -+ $(CC) -Wall -W $< $(CFLAGS) -I. -L. -lfaun $(DEP_STATIC) $(LDFLAGS) -o $@ - - basic: example/basic.c $(FAUN_LIB) -- cc -Wall -W $< $(CFLAGS) -I. -L. -lfaun $(DEP_STATIC) -o $@ -+ $(CC) -Wall -W $< $(CFLAGS) -I. -L. -lfaun $(DEP_STATIC) $(LDFLAGS) -o $@ - - install: - mkdir -p $(DESTDIR)/include $(LIB_DIR) -@@ -77,7 +80,7 @@ install: - ifdef STATIC_LIB - install -m 644 $(FAUN_LIB) $(LIB_DIR) - else -- install -m 755 -s $(FAUN_LIB) $(LIB_DIR) -+ install -m 755 $(FAUN_LIB) $(LIB_DIR) - ln -s $(FAUN_LIB) $(LIB_DIR)/$(FAUN_SO) - ln -s $(FAUN_LIB) $(LIB_DIR)/libfaun.so - endif --- -2.39.2 - diff --git a/media-libs/faun/files/faun-0.2.1_makefile.patch b/media-libs/faun/files/faun-0.2.1_makefile.patch new file mode 100644 index 000000000000..7de9b4d67449 --- /dev/null +++ b/media-libs/faun/files/faun-0.2.1_makefile.patch @@ -0,0 +1,40 @@ +From c8c08f50ba9900790ce4127eee4adcbda208ad7b Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Thu, 16 Jan 2025 18:19:25 +0300 +Subject: [PATCH] Fix buildsystem + +* Respect CFLAGS, library dependencies +--- a/Makefile ++++ b/Makefile +@@ -6,10 +6,11 @@ ifeq ($(STATIC),1) + STATIC_LIB=true + endif + +-CFLAGS+=-O3 -DNDEBUG ++CFLAGS?=-O3 -DNDEBUG + #CFLAGS+=-g -DDEBUG ++PKG_CONFIG?=pkg-config + +-OPT=-DUSE_LOAD_MEM -DUSE_SFX_GEN ++OPT=-DUSE_LOAD_MEM -DUSE_SFX_GEN `$(PKG_CONFIG) --cflags libpulse-simple libpulse vorbisfile` + + DESTDIR ?= /usr/local + +@@ -22,11 +23,11 @@ else + LIB_DIR=$(DESTDIR)/lib + endif + +-DEP_LIB = -lpulse -lvorbisfile -lpthread -lm ++DEP_LIB = `$(PKG_CONFIG) --libs libpulse-simple libpulse vorbisfile` -lpthread -lm + + ifeq ($(FLAC),1) +-OPT+=-DUSE_FLAC=1 +-DEP_LIB+=-lFLAC ++OPT+=-DUSE_FLAC=1 `$(PKG_CONFIG) --cflags flac` ++DEP_LIB+=`$(PKG_CONFIG) --libs flac` + else ifeq ($(FLAC),2) + OPT+=-DUSE_FLAC=2 + endif +-- +2.45.2 + diff --git a/media-libs/faun/metadata.xml b/media-libs/faun/metadata.xml index a4800f6c9069..e17def60d1ea 100644 --- a/media-libs/faun/metadata.xml +++ b/media-libs/faun/metadata.xml @@ -10,6 +10,6 @@ <name>Proxy Maintainers</name> </maintainer> <upstream> - <remote-id type="github">WickedSmoke/faun</remote-id> + <remote-id type="codeberg">wickedsmoke/faun</remote-id> </upstream> </pkgmetadata> diff --git a/media-libs/fcft/Manifest b/media-libs/fcft/Manifest index 93924ec7a251..c7f374987af1 100644 --- a/media-libs/fcft/Manifest +++ b/media-libs/fcft/Manifest @@ -1,3 +1,4 @@ +DIST fcft-3.1.10.tar.gz 732482 BLAKE2B 0198ada9b749aa8c9a84ad6be7713f7c77b13fd8fb21042fcca30ca3aae1a0e8dadb18fed1990c6a6590dda46ba74625517ebf8b7d55cdfb130e98f454a06260 SHA512 02be4080ef90b46ef6fafba259922539a06c6372e3eeb8edfb0e30d3eaa54a69bf303230bbd937472b91eed502e39a50378a20ef428dfd0ca77b6f75938c8e50 DIST fcft-3.1.2.tar.gz 741659 BLAKE2B d4c3b9ef444771f255b7b19e9645d53558caed2022a59759418fe0b9961f74833da2b760c0c961ce5fbbf91f3e0291dd87590fe00ab300ee194a497accba392e SHA512 b3874819ef90a4f1d1975cae72b925c928bc9758629e63b2083dab807166133bc68308ba4f9481c34c9e0b5262a1d2558e47cccf6ce9d34516583e48d03a5bf9 DIST fcft-3.1.3.tar.gz 741726 BLAKE2B 00792d3bb3848e271b28be7d9afe81e917f547558663b7cc3ce08a3b36cc2d56f3e69b1e06bf16cf73f1a08c8b20696906d6eaa07b59e113846820dd57e22419 SHA512 7275f4807b72b5125242dfba9499647d6c1e80ac9a7df8adde4e8ad082744472d3efa6b8c608c07a2107a7df3005ccad69d574cfb06f35991ccf676df6f1b407 DIST fcft-3.1.5.tar.gz 742014 BLAKE2B 39266ab2a7ea422671414d97c21a90b0eeabe9ed7480c54e44e33ff6d39ab903ac3df154b6733bb4de1e69401480d313f067e6f73f13748bf7fd54aa617cd5e6 SHA512 e223d7e825d8f81f05d2f7ec1b945b28311386dc6ccf55eefaeff2231d64483fdf18a2468f942586ecc0bb4ef75ed9ef0a8a490162b0f8bf7a8619e46742c564 diff --git a/media-libs/fcft/fcft-3.1.10-r1.ebuild b/media-libs/fcft/fcft-3.1.10-r1.ebuild new file mode 100644 index 000000000000..6d4f09e5ac52 --- /dev/null +++ b/media-libs/fcft/fcft-3.1.10-r1.ebuild @@ -0,0 +1,94 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +inherit meson python-any-r1 + +DESCRIPTION="Simple library for font loading and glyph rasterization" +HOMEPAGE="https://codeberg.org/dnkl/fcft" +SRC_URI="https://codeberg.org/dnkl/fcft/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}" + +# MIT for fcft +# ZLIB for nanosvg +LICENSE="MIT ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" +IUSE="examples +harfbuzz +libutf8proc test" +REQUIRED_USE=" + libutf8proc? ( harfbuzz ) + examples? ( libutf8proc ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + media-libs/fontconfig + media-libs/freetype + x11-libs/pixman + examples? ( + dev-libs/libutf8proc:= + dev-libs/wayland + ) + harfbuzz? ( + media-libs/harfbuzz:=[truetype] + ) + libutf8proc? ( + dev-libs/libutf8proc:=[-cjk] + ) +" +DEPEND=" + ${RDEPEND} + app-i18n/unicode-data + dev-libs/tllist + examples? ( + dev-libs/wayland-protocols + ) + test? ( + dev-libs/check + harfbuzz? ( media-fonts/noto-emoji ) + ) +" +BDEPEND=" + ${PYTHON_DEPS} + app-text/scdoc + virtual/pkgconfig + examples? ( + dev-util/wayland-scanner + ) +" + +src_prepare() { + default + + rm -r unicode || die "Failed removing vendored unicode-data" + + sed -i "s;unicode/UnicodeData.txt;${EPREFIX}/usr/share/unicode-data/UnicodeData.txt;" \ + meson.build || die "Failed changing UnicodeData.txt to system's copy" + sed -i "s;unicode/emoji-data.txt;${EPREFIX}/usr/share/unicode-data/emoji/emoji-data.txt;" \ + meson.build || die "Failed changing emoji-data.txt to system's copy" +} + +src_configure() { + local emesonargs=( + $(meson_feature harfbuzz grapheme-shaping) + $(meson_feature libutf8proc run-shaping) + $(meson_use examples) + $(use test && meson_use harfbuzz test-text-shaping) + # bundled, tiny, I believe this means we should always include it + -Dsvg-backend=nanosvg + -Ddocs=enabled + ) + + meson_src_configure +} + +src_install() { + local DOCS=( CHANGELOG.md README.md ) + meson_src_install + + rm -r "${ED}"/usr/share/doc/${PN} || die + + use examples && newbin "${BUILD_DIR}/example/example" fcft-example +} diff --git a/media-libs/fcft/fcft-3.1.9.ebuild b/media-libs/fcft/fcft-3.1.9.ebuild index 7cbcbbb0160c..9239434b14c3 100644 --- a/media-libs/fcft/fcft-3.1.9.ebuild +++ b/media-libs/fcft/fcft-3.1.9.ebuild @@ -1,4 +1,4 @@ -# Copyright 2020-2024 Gentoo Authors +# Copyright 2020-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -15,7 +15,7 @@ S="${WORKDIR}/${PN}" # ZLIB for nanosvg LICENSE="MIT ZLIB" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" +KEYWORDS="amd64 arm64 ppc64 ~riscv" IUSE="examples +harfbuzz +libutf8proc test" REQUIRED_USE=" libutf8proc? ( harfbuzz ) diff --git a/media-libs/flac/Manifest b/media-libs/flac/Manifest index 9d54fa1cffa1..df74f08fda0d 100644 --- a/media-libs/flac/Manifest +++ b/media-libs/flac/Manifest @@ -1 +1,2 @@ DIST flac-1.4.3.tar.xz 1006728 BLAKE2B c4f441aeaa0493433347b8a110ca01865fd40d5b21150174372af2fee4fa5c3397a67add31138e92999eab9d9abe6c46a5ac29e13cbac60093fbff6d7a672ad3 SHA512 3cf095720bd590a588be8ccbe187d22e7a1c60ab85b1d510ce5e8a22ab0a51827b9acfeaad59bbd645a17d1f200f559255a640101b0330709a164306c0e9709e +DIST flac-1.5.0.tar.xz 1078872 BLAKE2B 6b1c9a36db5daf24e2c21fa8429aa8776df5fd2fb430de8ee6728628a1ffc44f49c2bdedba514a24dea5ea87553e32dd08af4830870d64d77b3f776e4fe69644 SHA512 34c9193b804e990b0828a5759e4d7ef1d1859174262d3b305d03e65285edb35c7f429e8071d9dd2c6da0c16e842b40b439bf215704636ae15dd5886151f0d17a diff --git a/media-libs/flac/flac-1.4.3.ebuild b/media-libs/flac/flac-1.4.3.ebuild index ac7441965009..c862e6b390a1 100644 --- a/media-libs/flac/flac-1.4.3.ebuild +++ b/media-libs/flac/flac-1.4.3.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 @@ -34,7 +34,7 @@ src_prepare() { multilib_src_configure() { # -fipa-pta exposes a test failure in replaygain_analysis (https://gcc.gnu.org/PR115533) - # TOOD: Replace with some -ffp-contract= option? + # TODO: Replace with some -ffp-contract= option? append-flags $(test-flags-CC -fno-ipa-pta) local myeconfargs=( diff --git a/media-libs/flac/flac-1.5.0.ebuild b/media-libs/flac/flac-1.5.0.ebuild new file mode 100644 index 000000000000..13b211937252 --- /dev/null +++ b/media-libs/flac/flac-1.5.0.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic libtool multilib-minimal + +DESCRIPTION="Free lossless audio encoder and decoder" +HOMEPAGE="https://xiph.org/flac/" +SRC_URI=" + https://github.com/xiph/flac/releases/download/${PV}/${P}.tar.xz + https://downloads.xiph.org/releases/${PN}/${P}.tar.xz +" + +LICENSE="BSD FDL-1.2 GPL-2 LGPL-2.1" +# <libFLAC SONAME>-<libFLAC++ SONAME> +SLOT="0/11-14" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" +IUSE="+cxx debug ogg cpu_flags_x86_avx2 cpu_flags_x86_avx static-libs" +# AVX configure switch is for both AVX & AVX2 +REQUIRED_USE=" + cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) +" + +RDEPEND="ogg? ( media-libs/libogg[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND}" +BDEPEND=" + app-arch/xz-utils + sys-devel/gettext + virtual/pkgconfig +" + +src_prepare() { + default + elibtoolize +} + +multilib_src_configure() { + # -fipa-pta exposes a test failure in replaygain_analysis (https://gcc.gnu.org/PR115533) + # TODO: Replace with some -ffp-contract= option? + append-flags $(test-flags-CC -fno-ipa-pta) + + local myeconfargs=( + --disable-doxygen-docs + --disable-examples + --disable-valgrind-testing + --disable-version-from-git + $([[ ${CHOST} == *-darwin* ]] && echo "--disable-asm-optimizations") + + $(use_enable cpu_flags_x86_avx avx) + $(use_enable cxx cpplibs) + $(use_enable debug) + $(use_enable ogg) + $(use_enable static-libs static) + + $(multilib_native_enable programs) + + # cross-compile fix (bug #521446) + # no effect if ogg support is disabled + --with-ogg + ) + + # bash for https://github.com/xiph/flac/pull/803 + CONFIG_SHELL="${BROOT}"/bin/bash ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_test() { + # configure has --enable-exhaustive-tests we could pass... + # there's also --disable-thorough-test. + if [[ ${UID} != 0 ]]; then + # Parallel tests work for CMake but don't for autotools as of 1.4.3 + # https://github.com/xiph/flac/commit/aaffdcaa969c19aee9dc89be420eae470b55e405 + emake -j1 check + else + ewarn "Tests will fail if ran as root, skipping." + fi +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/media-libs/fontconfig/Manifest b/media-libs/fontconfig/Manifest index 77d112707da0..a549ec7e0e44 100644 --- a/media-libs/fontconfig/Manifest +++ b/media-libs/fontconfig/Manifest @@ -1,2 +1,3 @@ DIST fontconfig-2.14.2.tar.xz 1440844 BLAKE2B 4efeeb7f9a6705d493128d00b60e681a20a47556f4c0d7787a5c7a6d2cbbc22f150cad7988a9836a9e72aeb61e2b6a196c00a071c7042c62283c7720cdbb743d SHA512 23483e0ae6aa7589fd37f9949a4cf951c5bff981739dbb446881e4cea86a208c0ab31e2358666eac724af1dc6a689a42733a7ce91cd3e76d8d91eacedb318085 DIST fontconfig-2.15.0.tar.xz 1447820 BLAKE2B 17c85fddc4ab84111c4f50afb89ecd8792c3aeaa2690b38fd39fca6f6cece69e9ce0cd3af8a2e54968c79ad1f9bee1e444699a13c068d9dfd3dfe1212ff37533 SHA512 754cd5fffa198fc07a39cf7df683e9adfa7f54ab41fdff8c0eacc078fd35d3e01069ba343f2b045e0b40df88d9f1fc1ee0f7565799f9cb194a59cf95b64c4417 +DIST fontconfig-2.16.0.tar.xz 1294156 BLAKE2B 48d6fcbfe83f0a4c026a4f90d864a4195805e04cc6dd486bd18d68caa8b55fd51fc37822781298152d363b70dc103c9f8b216f6dc0193b2b192eb35565482ec4 SHA512 90b5c39e5eadc56a9fbddd69b2a6eaa6bf9ee5cda003091b0896e66f87f3c1be8ab4442f54d20fca7232d72f60d9578f5e5ba3f376e39b64b8a2aa7b8f13b062 diff --git a/media-libs/fontconfig/files/fontconfig-2.16.0-endian.patch b/media-libs/fontconfig/files/fontconfig-2.16.0-endian.patch new file mode 100644 index 000000000000..744208f84e0f --- /dev/null +++ b/media-libs/fontconfig/files/fontconfig-2.16.0-endian.patch @@ -0,0 +1,40 @@ +https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/7c082953381038d5c35820cba939047d708bbb5a + +From 7c082953381038d5c35820cba939047d708bbb5a Mon Sep 17 00:00:00 2001 +From: Akira TAGOH <akira@tagoh.org> +Date: Mon, 27 Jan 2025 11:24:19 +0900 +Subject: [PATCH] meson: set WORDS_BIGENDIAN + +Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/446 +--- + meson.build | 1 + + src/fcmd5.h | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 9e9993a2..5aacfc5e 100644 +--- a/meson.build ++++ b/meson.build +@@ -181,6 +181,7 @@ conf.set_quoted('PACKAGE_VERSION', meson.project_version()) + conf.set_quoted('PACKAGE_STRING', '@0@ @1@'.format(meson.project_name(), meson.project_version())) + conf.set_quoted('PACKAGE_BUGREPORT', 'https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new') + conf.set_quoted('PACKAGE_URL', '') ++conf.set('WORDS_BIGENDIAN', (host_machine.endian() == 'big').to_int()) + + if host_machine.system() == 'windows' + conf.set('EXEEXT', '.exe') +diff --git a/src/fcmd5.h b/src/fcmd5.h +index 7e8a6e1e..bf507285 100644 +--- a/src/fcmd5.h ++++ b/src/fcmd5.h +@@ -27,7 +27,7 @@ static void MD5Update(struct MD5Context *ctx, const unsigned char *buf, unsigned + static void MD5Final(unsigned char digest[16], struct MD5Context *ctx); + static void MD5Transform(FcChar32 buf[4], FcChar32 in[16]); + +-#ifndef WORDS_BIGENDIAN ++#if !defined(WORDS_BIGENDIAN) || !WORDS_BIGENDIAN + #define byteReverse(buf, len) /* Nothing */ + #else + /* +-- +GitLab diff --git a/media-libs/fontconfig/files/fontconfig-2.16.0-fc_cachedir.patch b/media-libs/fontconfig/files/fontconfig-2.16.0-fc_cachedir.patch new file mode 100644 index 000000000000..74d6fadbe2e9 --- /dev/null +++ b/media-libs/fontconfig/files/fontconfig-2.16.0-fc_cachedir.patch @@ -0,0 +1,30 @@ +https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/9b864e8ceb480c31cd76ce3fe1d6215f8655ec55 + +From 9b864e8ceb480c31cd76ce3fe1d6215f8655ec55 Mon Sep 17 00:00:00 2001 +From: Akira TAGOH <akira@tagoh.org> +Date: Mon, 20 Jan 2025 12:08:36 +0900 +Subject: [PATCH] meson: create fc_cachedir at the installation time + +Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/445 +--- + meson.build | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/meson.build b/meson.build +index 4439758d..85968b29 100644 +--- a/meson.build ++++ b/meson.build +@@ -550,6 +550,11 @@ if not meson.is_subproject() + meson.add_dist_script('build-aux/meson-dist-autotools.py') + endif + ++if host_machine.system() != 'windows' ++ install_emptydir(fc_cachedir, ++ install_tag: 'runtime') ++endif ++ + # Summary + doc_targets = get_variable('doc_targets', []) + +-- +GitLab diff --git a/media-libs/fontconfig/files/fontconfig-2.16.0-macro-preprocess.patch b/media-libs/fontconfig/files/fontconfig-2.16.0-macro-preprocess.patch new file mode 100644 index 000000000000..28d7ab95f829 --- /dev/null +++ b/media-libs/fontconfig/files/fontconfig-2.16.0-macro-preprocess.patch @@ -0,0 +1,12 @@ +https://github.com/mesonbuild/meson/issues/14201 +--- a/src/meson.build ++++ b/src/meson.build +@@ -29,7 +29,7 @@ fc_sources = [ + 'ftglue.c', + ] + +-fcobjshash_h = cc.preprocess('fcobjshash.gperf.h', include_directories: incbase) ++fcobjshash_h = cc.preprocess('fcobjshash.gperf.h', include_directories: incbase, compile_args: '-g0') + fcobjshash_gperf = custom_target( + input: fcobjshash_h, + output: 'fcobjshash.gperf', diff --git a/media-libs/fontconfig/files/fontconfig-2.16.0-network-test.patch b/media-libs/fontconfig/files/fontconfig-2.16.0-network-test.patch new file mode 100644 index 000000000000..890d25f4f16b --- /dev/null +++ b/media-libs/fontconfig/files/fontconfig-2.16.0-network-test.patch @@ -0,0 +1,15 @@ +If pytest is found, it tries to use pytest-tap (which is currently unpackaged). + +But as of fontconfig-2.16.0, this only runs test_issue431.py which needs +network access, so we can't run it anyway. Stub it out. +--- a/test/meson.build ++++ b/test/meson.build +@@ -61,7 +61,7 @@ if host_machine.system() != 'windows' + + test('run_test_sh', find_program('run-test.sh'), timeout: 600, env: ['srcdir=@0@'.format(meson.current_source_dir()), 'builddir=@0@'.format(meson.current_build_dir()), 'EXEEXT=@0@'.format(conf.get('EXEEXT')), 'VERBOSE=1']) + +- if pytest.found() ++ if false + test('pytest', pytest, args: ['--tap'], + workdir: meson.current_source_dir(), + env: ['builddir=@0@'.format(meson.current_build_dir())], diff --git a/media-libs/fontconfig/files/fontconfig-2.16.0-pthread.patch b/media-libs/fontconfig/files/fontconfig-2.16.0-pthread.patch new file mode 100644 index 000000000000..df68082cca6e --- /dev/null +++ b/media-libs/fontconfig/files/fontconfig-2.16.0-pthread.patch @@ -0,0 +1,37 @@ +https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/aad470dad519b6fe3459023b82941b4414b71313 + +From aad470dad519b6fe3459023b82941b4414b71313 Mon Sep 17 00:00:00 2001 +From: Thomas Devoogdt <thomas@devoogdt.com> +Date: Sun, 26 Jan 2025 10:15:39 +0100 +Subject: [PATCH] meson.build: explicitly check for pthread support + +Tested using buildroot. The br-arm-full-nothread fails +because meson assumes thread support when cross-compiling. + +Dependency threads found: YES unknown (cached) +Has header "pthread.h" : NO + +Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com> +--- + meson.build | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 85968b29..9e9993a2 100644 +--- a/meson.build ++++ b/meson.build +@@ -383,8 +383,10 @@ endif + + if host_machine.system() != 'windows' + thread_dep = dependency('threads') +- conf.set('HAVE_PTHREAD', 1) +- deps += [thread_dep] ++ if thread_dep.found() and cc.has_header('pthread.h') ++ conf.set('HAVE_PTHREAD', 1) ++ deps += [thread_dep] ++ endif + endif + + fc_templatedir = get_option('template-dir') +-- +GitLab diff --git a/media-libs/fontconfig/fontconfig-2.15.0-r1.ebuild b/media-libs/fontconfig/fontconfig-2.15.0-r1.ebuild index 9259f43d257c..6feaacd6fbd7 100644 --- a/media-libs/fontconfig/fontconfig-2.15.0-r1.ebuild +++ b/media-libs/fontconfig/fontconfig-2.15.0-r1.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://fontconfig.org/release/${P}.tar.xz" LICENSE="MIT" SLOT="1.0" if ! [[ $(ver_cut 3) -ge 90 ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi IUSE="doc nls test" RESTRICT="!test? ( test )" diff --git a/media-libs/fontconfig/fontconfig-2.16.0.ebuild b/media-libs/fontconfig/fontconfig-2.16.0.ebuild new file mode 100644 index 000000000000..71ab244159db --- /dev/null +++ b/media-libs/fontconfig/fontconfig-2.16.0.ebuild @@ -0,0 +1,243 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit multilib meson-multilib python-any-r1 readme.gentoo-r1 + +DESCRIPTION="A library for configuring and customizing font access" +HOMEPAGE="https://fontconfig.org/" +SRC_URI="https://fontconfig.org/release/${P}.tar.xz" + +LICENSE="MIT" +SLOT="1.0" +if ! [[ $(ver_cut 3) -ge 90 ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +IUSE="doc nls test" +RESTRICT="!test? ( test )" + +# - Check minimum freetype & other deps on bumps. See +# https://gitlab.freedesktop.org/fontconfig/fontconfig/-/blob/main/configure.ac#L314. +# Note that FT versioning is confusing, need to map it using +# https://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/docs/VERSIONS.TXT +# But sometimes it's actually greater than that, e.g. see Fedora's spec file +# https://src.fedoraproject.org/rpms/fontconfig/blob/rawhide/f/fontconfig.spec#_1 +# +# - Purposefully dropped the xml USE flag and libxml2 support. Expat is the +# default and used by every distro. See bug #283191. +# +# - There's a test-only dep on json-c. +# It might become an optional(?) runtime dep in future though. Who knows. +# Keep an eye on it. +RDEPEND=" + >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=media-libs/freetype-2.9.1[${MULTILIB_USEDEP}] + virtual/libintl[${MULTILIB_USEDEP}] + !elibc_Darwin? ( !elibc_SunOS? ( sys-apps/util-linux[${MULTILIB_USEDEP}] ) ) + elibc_Darwin? ( sys-libs/native-uuid ) + elibc_SunOS? ( sys-libs/libuuid ) +" +DEPEND=" + ${RDEPEND} + test? ( dev-libs/json-c ) +" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-build/meson-1.6.0 + dev-util/gperf + virtual/pkgconfig + doc? ( + =app-text/docbook-sgml-dtd-3.1* + app-text/docbook-sgml-utils[jadetex] + ) + nls? ( >=sys-devel/gettext-0.19.8 ) +" +PDEPEND="virtual/ttf-fonts" +# We need app-eselect/eselect-fontconfig in IDEPEND to update ROOT +# when cross-compiling. +IDEPEND="app-eselect/eselect-fontconfig" + +PATCHES=( + # bug #130466 + make liberation default + "${FILESDIR}"/${PN}-2.14.0-latin-update.patch + # Avoid test failure (bubblewrap doesn't work within sandbox) + "${FILESDIR}"/${PN}-2.14.0-skip-bubblewrap-tests.patch + # Avoid network access and unpackaged pytest-tap + "${FILESDIR}"/${PN}-2.16.0-network-test.patch + + # Patches from upstream (can usually be removed with next version bump) + "${FILESDIR}"/${P}-fc_cachedir.patch + "${FILESDIR}"/${P}-pthread.patch + "${FILESDIR}"/${P}-endian.patch + "${FILESDIR}"/${PN}-2.16.0-macro-preprocess.patch +) + +DOC_CONTENTS="Please make fontconfig configuration changes using +\`eselect fontconfig\`. Any changes made to /etc/fonts/fonts.conf will be +overwritten. If you need to reset your configuration to upstream defaults, +delete the directory ${EROOT}/etc/fonts/conf.d/ and re-emerge fontconfig." + +src_prepare() { + default + + # Test needs network access + # https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/319 + # On bumps, please check to see if this has been fixed + # to allow local access! + sed -i -e '/test-crbug1004254/d' test/meson.build || die +} + +multilib_src_configure() { + local addfonts=( + "${EPREFIX}"/usr/local/share/fonts + ) + + # Harvest some font locations, such that users can benefit from the + # host OS's installed fonts + case ${CHOST} in + *-darwin*) + addfonts+=( + /Library/Fonts + /System/Library/Fonts + ) + ;; + + *-solaris*) + [[ -d /usr/X/lib/X11/fonts/TrueType ]] && \ + addfonts+=( /usr/X/lib/X11/fonts/TrueType ) + [[ -d /usr/X/lib/X11/fonts/Type1 ]] && + addfonts+=( /usr/X/lib/X11/fonts/Type1 ) + ;; + + *-linux-gnu) + use prefix && [[ -d /usr/share/fonts ]] && \ + addfonts+=( /usr/share/fonts ) + ;; + esac + + local emesonargs=( + # USE=doc only controls the additional bits like html/pdf + # and regeneration of man pages from source. We always install + # the prebuilt man pages. + $(meson_native_use_feature doc) + $(meson_native_use_feature doc doc-txt) + $(meson_native_use_feature doc doc-html) + $(meson_native_use_feature doc doc-man) + $(meson_native_use_feature doc doc-pdf) + + $(meson_native_use_feature nls) + $(meson_feature test tests) + + -Dcache-build=disabled + -Dcache-dir="${EPREFIX}"/var/cache/fontconfig + -Ddefault-fonts-dirs="${EPREFIX}"/usr/share/fonts + -Dadditional-fonts-dirs=$(IFS=, ; echo "${addfonts[*]}" ) + -Dtemplate-dir="${EPREFIX}"/etc/fonts/conf.avail + # TODO: Rust + -Dfontations=disabled + -Dxml-backend=expat + + # Let users choose via eselect-fontconfig. See bug #900681 + # and https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/356. + -Ddefault-sub-pixel-rendering=none + ) + + meson_src_configure +} + +multilib_src_install() { + MULTILIB_CHOST_TOOLS=( /usr/bin/fc-cache$(get_exeext) ) + + meson_src_install + + rm -rf "${ED}"/var/cache || die + + # Avoid calling this multiple times, bug #459210 + if multilib_is_native_abi; then + insinto /etc/fonts + doins fonts.conf + fi +} + +multilib_src_install_all() { + einstalldocs + + # fc-lang directory contains language coverage datafiles + # which are needed to test the coverage of fonts. + insinto /usr/share/fc-lang + doins fc-lang/*.orth + + dodoc doc/fontconfig-user.{txt,pdf} + + if ! use doc ; then + find "${S}" -name "*.[[:digit:]]" -type f -exec doman '{}' + || die + fi + + if [[ -e ${ED}/usr/share/doc/fontconfig/ ]] ; then + mv "${ED}"/usr/share/doc/fontconfig/* "${ED}"/usr/share/doc/${PF} || die + rm -rf "${ED}"/usr/share/doc/fontconfig || die + fi + + # Changes should be made to /etc/fonts/local.conf, and as we had + # too much problems with broken fonts.conf we force update it ... + echo 'CONFIG_PROTECT_MASK="/etc/fonts/fonts.conf"' > "${T}"/37fontconfig || die + doenvd "${T}"/37fontconfig + + # As of fontconfig 2.7, everything sticks their noses in here. + dodir /etc/sandbox.d + echo 'SANDBOX_PREDICT="/var/cache/fontconfig"' > "${ED}"/etc/sandbox.d/37fontconfig || die + + readme.gentoo_create_doc +} + +pkg_preinst() { + # bug #193476 + # /etc/fonts/conf.d/ contains symlinks to ../conf.avail/ to include various + # config files. If we install as-is, we'll blow away user settings. + ebegin "Syncing fontconfig configuration to system" + if [[ -e ${EROOT}/etc/fonts/conf.d ]] ; then + local file f + for file in "${EROOT}"/etc/fonts/conf.avail/* ; do + f=${file##*/} + if [[ -L ${EROOT}/etc/fonts/conf.d/${f} ]] ; then + [[ -f ${ED}/etc/fonts/conf.avail/${f} ]] \ + && ln -sf ../conf.avail/"${f}" \ + "${ED}"/etc/fonts/conf.d/ &>/dev/null + else + [[ -f ${ED}/etc/fonts/conf.avail/${f} ]] \ + && rm "${ED}"/etc/fonts/conf.d/"${f}" &>/dev/null + fi + done + fi + eend $? +} + +pkg_postinst() { + einfo "Cleaning broken symlinks in ${EROOT}/etc/fonts/conf.d/" + find -L "${EROOT}"/etc/fonts/conf.d/ -type l -delete + + readme.gentoo_print_elog + + local ver + for ver in ${REPLACING_VERSIONS} ; do + # 2.14.2 and 2.14.2-r1 included the bad 10-sub-pixel-none.conf + if ver_test ${ver} -lt 2.14.2-r2 && ver_test ${ver} -ge 2.14.2 ; then + if [[ -e "${EROOT}"/etc/fonts/conf.d/10-sub-pixel-none.conf ]] ; then + einfo "Deleting 10-sub-pixel-none.conf from bad fontconfig-2.14.2 (bug #900681)" + rm "${EROOT}"/etc/fonts/conf.d/10-sub-pixel-none.conf || die + fi + fi + done + + if [[ -z ${ROOT} ]] ; then + multilib_pkg_postinst() { + ebegin "Creating global font cache for ${ABI}" + "${EPREFIX}"/usr/bin/${CHOST}-fc-cache -srf + eend $? + } + + multilib_parallel_foreach_abi multilib_pkg_postinst + fi +} diff --git a/media-libs/freeglut/freeglut-3.6.0-r1.ebuild b/media-libs/freeglut/freeglut-3.6.0-r1.ebuild index d21631d891b0..97c0694706ee 100644 --- a/media-libs/freeglut/freeglut-3.6.0-r1.ebuild +++ b/media-libs/freeglut/freeglut-3.6.0-r1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" # enabling GLES support seems to cause build failures RDEPEND=">=virtual/glu-9.0-r1[${MULTILIB_USEDEP}] diff --git a/media-libs/freeglut/freeglut-3.6.0.ebuild b/media-libs/freeglut/freeglut-3.6.0.ebuild deleted file mode 100644 index d73fd4e40595..000000000000 --- a/media-libs/freeglut/freeglut-3.6.0.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake-multilib - -DESCRIPTION="A free OpenGL utility toolkit, the open-sourced alternative to the GLUT library" -HOMEPAGE="https://freeglut.sourceforge.net/" -SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" - -# enabling GLES support seems to cause build failures -RDEPEND=">=virtual/glu-9.0-r1[${MULTILIB_USEDEP}] - >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}] - >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]" -# gles? ( media-libs/mesa[egl(+),gles1,gles2,${MULTILIB_USEDEP}] ) -DEPEND="${RDEPEND} - x11-base/xorg-proto" -BDEPEND="virtual/pkgconfig" - -src_configure() { - local mycmakeargs=( -# "-DOpenGL_GL_PREFERENCE=GLVND" # bug 721006 - "-DFREEGLUT_GLES=OFF" - "-DFREEGLUT_BUILD_DEMOS=OFF" - "-DFREEGLUT_BUILD_STATIC_LIBS=OFF" - ) -# $(cmake-utils_use gles FREEGLUT_GLES) - cmake-multilib_src_configure -} - -multilib_src_install() { - cmake_src_install - cp "${ED}"/usr/$(get_libdir)/pkgconfig/{,free}glut.pc || die -} diff --git a/media-libs/freetype/freetype-2.13.3.ebuild b/media-libs/freetype/freetype-2.13.3.ebuild index e45b12ff7c84..a644a8588720 100644 --- a/media-libs/freetype/freetype-2.13.3.ebuild +++ b/media-libs/freetype/freetype-2.13.3.ebuild @@ -23,7 +23,7 @@ else mirror://nongnu/freetype/${PN}-doc-${PV}.tar.xz ) " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="|| ( FTL GPL-2+ )" diff --git a/media-libs/ftgl/files/ftgl-2.1.3_rc5-freetype-2.13.3.patch b/media-libs/ftgl/files/ftgl-2.1.3_rc5-freetype-2.13.3.patch index d22b25757fa6..a1a5263e8c09 100644 --- a/media-libs/ftgl/files/ftgl-2.1.3_rc5-freetype-2.13.3.patch +++ b/media-libs/ftgl/files/ftgl-2.1.3_rc5-freetype-2.13.3.patch @@ -1,40 +1,4 @@ https://bugs.gentoo.org/937849 - ---- a/src/FTContour.cpp -+++ b/src/FTContour.cpp -@@ -163,7 +163,7 @@ void FTContour::SetParity(int parity) - } - - --FTContour::FTContour(FT_Vector* contour, char* tags, unsigned int n) -+FTContour::FTContour(FT_Vector* contour, FTContour::PointTagsType tags, unsigned int n) - { - FTPoint prev, cur(contour[(n - 1) % n]), next(contour[0]); - FTPoint a, b = next - cur; ---- a/src/FTContour.h -+++ b/src/FTContour.h -@@ -44,6 +44,12 @@ - */ - class FTContour - { -+#if (FREETYPE_MAJOR * 1000 + FREETYPE_MINOR) * 1000 + FREETYPE_PATCH < 2013003 -+ typedef char* PointTagsType; -+#else -+ typedef unsigned char* PointTagsType; -+#endif -+ - public: - /** - * Constructor -@@ -52,7 +58,7 @@ class FTContour - * @param pointTags - * @param numberOfPoints - */ -- FTContour(FT_Vector* contour, char* pointTags, unsigned int numberOfPoints); -+ FTContour(FT_Vector* contour, PointTagsType pointTags, unsigned int numberOfPoints); - - /** - * Destructor --- a/src/FTVectoriser.cpp +++ b/src/FTVectoriser.cpp @@ -166,7 +166,7 @@ void FTVectoriser::ProcessContours() @@ -42,8 +6,7 @@ https://bugs.gentoo.org/937849 { FT_Vector* pointList = &outline.points[startIndex]; - char* tagList = &outline.tags[startIndex]; -+ auto tagList = &outline.tags[startIndex]; ++ char* tagList = reinterpret_cast<char*>(&outline.tags[startIndex]); endIndex = outline.contours[i]; contourLength = (endIndex - startIndex) + 1; - diff --git a/media-libs/ftgl/ftgl-2.1.3_rc5-r2.ebuild b/media-libs/ftgl/ftgl-2.1.3_rc5-r3.ebuild index 0fb8b7874d6b..4c131405323a 100644 --- a/media-libs/ftgl/ftgl-2.1.3_rc5-r2.ebuild +++ b/media-libs/ftgl/ftgl-2.1.3_rc5-r3.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 @@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_P2}" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" IUSE="static-libs" DEPEND=" diff --git a/media-libs/gegl/Manifest b/media-libs/gegl/Manifest index e1c810f7de04..fcbaf497b020 100644 --- a/media-libs/gegl/Manifest +++ b/media-libs/gegl/Manifest @@ -1,3 +1,3 @@ -DIST gegl-0.4.46.tar.xz 5799248 BLAKE2B 2fc9ccd0c711cc901abd50740a24d0f75b162cbb196bdd62ab8430882da3b9ea72c08dd587ecfecaf5e4ba9aca4df51bcd7d98ec197325375b1d954c2995029e SHA512 cd733208da7dc1ec77ca023f03f47e578350e156ad07ece701b39f517a292e9f9c081b3a8a2db846813483b4ddb21f32f9fc8b9c70fea8a6ba27bb97ef8bb847 DIST gegl-0.4.48.tar.xz 5805488 BLAKE2B 3a800004f166fdbfbd563688bb71c4579bba132380f5f45496e8fb813943333b89781320230adf6e0ee49b9bde7db37d81929a8fd42e19e62281e7f8d1ea3bfb SHA512 8f47e6445062894c16d54eeeec4a55cccc32fc49c9fb9be3428a591daaeb21b1a5b8529a68d82613fd75f107bb8c0418c9e5337346bd94da3226e545189c226b DIST gegl-0.4.50.tar.xz 5987700 BLAKE2B 08d59ec417194b17819c8996efcb4e10cd86e3626bbe2690ca6f22e095a8bc346fac83460896019044978f5577b7ccdf02265487b3d3dfe8e28a7390741d38d7 SHA512 6ba7cc6a1feca518857a6f474fffec4d3ddce81104541d9d8c9d6a6d7464a00ec0d4fce63194ba2d457d606fea3049fbd365b20b70fdbdf275dac61bc35f8205 +DIST gegl-0.4.52.tar.xz 5989340 BLAKE2B bb1c7a0869474347ad2765750967007f0412f38740010525ebb871ab4521b95bb62392e7e5b40e7157050151bb761b8d643229acccfdced6b6cb795ee1f7a916 SHA512 fc6c9306733624eb34774c2707d7628a32fc33d1543c93ee62ac970d36d94f60547f89690651d17feca4d60d0c9decaba9214b95bbd96a7cd0db035af4bfc772 diff --git a/media-libs/gegl/gegl-0.4.48.ebuild b/media-libs/gegl/gegl-0.4.48.ebuild index 94ff22957d61..b8bf073072f5 100644 --- a/media-libs/gegl/gegl-0.4.48.ebuild +++ b/media-libs/gegl/gegl-0.4.48.ebuild @@ -15,7 +15,7 @@ if [[ ${PV} == *9999* ]]; then SRC_URI="" else SRC_URI="https://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.xz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="A graph based image processing framework" diff --git a/media-libs/gegl/gegl-0.4.50.ebuild b/media-libs/gegl/gegl-0.4.50.ebuild index 878b5ac31d73..f51262988f0c 100644 --- a/media-libs/gegl/gegl-0.4.50.ebuild +++ b/media-libs/gegl/gegl-0.4.50.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) # vala and introspection support is broken, bug #468208 VALA_USE_DEPEND=vapigen diff --git a/media-libs/gegl/gegl-0.4.46.ebuild b/media-libs/gegl/gegl-0.4.52.ebuild index b8bf073072f5..f51262988f0c 100644 --- a/media-libs/gegl/gegl-0.4.46.ebuild +++ b/media-libs/gegl/gegl-0.4.52.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) # vala and introspection support is broken, bug #468208 VALA_USE_DEPEND=vapigen @@ -15,7 +15,7 @@ if [[ ${PV} == *9999* ]]; then SRC_URI="" else SRC_URI="https://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.xz" - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="A graph based image processing framework" @@ -39,7 +39,7 @@ RESTRICT="!test? ( test )" RDEPEND=" >=dev-libs/glib-2.68.2:2 >=dev-libs/json-glib-1.2.6 - >=media-libs/babl-0.1.98[introspection?,lcms?,vala?] + >=media-libs/babl-0.1.110[introspection?,lcms?,vala?] media-libs/libjpeg-turbo media-libs/libnsgif >=media-libs/libpng-1.6.0:0= @@ -114,6 +114,9 @@ src_prepare() { fi done popd || die + + # Fix QA warning, install docs into /usr/share/gtk-doc/gegl-0.4 instead of /usr/share/doc/gegl-0.4 + sed -i -e "s/'doc'/'gtk-doc'/" docs/reference/meson.build || die } src_configure() { diff --git a/media-libs/gegl/gegl-9999.ebuild b/media-libs/gegl/gegl-9999.ebuild index c215d10b7af4..ff40c2a29cce 100644 --- a/media-libs/gegl/gegl-9999.ebuild +++ b/media-libs/gegl/gegl-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) # vala and introspection support is broken, bug #468208 VALA_USE_DEPEND=vapigen @@ -39,7 +39,7 @@ RESTRICT="!test? ( test )" RDEPEND=" >=dev-libs/glib-2.68.2:2 >=dev-libs/json-glib-1.2.6 - >=media-libs/babl-0.1.98[introspection?,lcms?,vala?] + >=media-libs/babl-0.1.110[introspection?,lcms?,vala?] media-libs/libjpeg-turbo media-libs/libnsgif >=media-libs/libpng-1.6.0:0= diff --git a/media-libs/gexiv2/gexiv2-0.14.3.ebuild b/media-libs/gexiv2/gexiv2-0.14.3.ebuild index 5a52d62a46fb..459d8fa7769a 100644 --- a/media-libs/gexiv2/gexiv2-0.14.3.ebuild +++ b/media-libs/gexiv2/gexiv2-0.14.3.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/gexiv2.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86" fi LICENSE="LGPL-2.1+ GPL-2" diff --git a/media-libs/glfw/glfw-3.4.ebuild b/media-libs/glfw/glfw-3.4.ebuild index 908b4b8f468b..bd58bd3501d1 100644 --- a/media-libs/glfw/glfw-3.4.ebuild +++ b/media-libs/glfw/glfw-3.4.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/glfw/glfw/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="ZLIB" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc64 ~riscv x86" IUSE="wayland X" # Most are dlopen'd so use strings or check the source: diff --git a/media-libs/glycin-loaders/Manifest b/media-libs/glycin-loaders/Manifest index 128dae3c9ce4..d7ecb389b5d1 100644 --- a/media-libs/glycin-loaders/Manifest +++ b/media-libs/glycin-loaders/Manifest @@ -1,2 +1,2 @@ -DIST glycin-1.1.0.tar.xz 28570152 BLAKE2B 762c8208c5cc8bf6be93a8daa70cd22b1cbd93c60075ccf38225a10c303b2c503bdc1ec2e6efeb85f36f3787b45a6061926e314f44841a583e0e3cb3debc3d48 SHA512 6e4b84dceb8957f0ab6e840dbc60f6c9bb8179fde841075c614a9742282ea578a51a966eb8e7a2482daf631932e8ce5af2f1f41523f376f4d1a0a2069af94631 -DIST glycin-1.1.1.tar.xz 28914480 BLAKE2B ef39c3b15e9addd36c6bc7010bbdaf1d5efe7aeaf1a5562217c87310b16efae75b568ae0291f91815238bd4b01747cbc5d3eef26f945f0a21f008904cc382392 SHA512 ce3961b4cbe71739cdf24b985b5a609284e2cdb3869671606cbd0f31c5c99f80da7608f2e29df5a0cc7d7ef0f7bd5926eb3fff993e80cbd8ec03bf321b92b0f0 +DIST glycin-1.1.4.tar.xz 28352904 BLAKE2B 0623a05462fb8a59d9d7e7f49968b4b68a26bd4f2088702d857048f206e9bc466907dfe2b979fdd4f80ee08e9daa888e4210cc177ca8ca5cc87fc9c10bd86e03 SHA512 8bfeefbbc36794d8b57ac86a0166038372c93aeec65a335db91a098f7442f9d33838c7f657f6a98b5528f62f89cc24b6d52e0e45738e333a3fe0179d0b02ee8c +DIST glycin-1.2.beta.1.tar.xz 36989732 BLAKE2B 47e9d07f5487767fa0625fda352e6cb686227474addc38d2bc8acde1cb81689d62bd834949a82302153bdbe6dc3a08bb42f7fd1ba85ea67c61f62a7ba08d1b2a SHA512 2479f8044745e9203e2733359248d78e01cf1407eda770478936101dc7cbf32218c6c6cb21583b6e2444eecb8645c81cb8b9c73c6986593908cf6b11e4a5a25d diff --git a/media-libs/glycin-loaders/glycin-loaders-1.1.1-r1.ebuild b/media-libs/glycin-loaders/glycin-loaders-1.1.4.ebuild index 0775282f7108..217ae3663814 100644 --- a/media-libs/glycin-loaders/glycin-loaders-1.1.1-r1.ebuild +++ b/media-libs/glycin-loaders/glycin-loaders-1.1.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 2024 Gentoo Authors +# Copyright 2024-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -7,7 +7,7 @@ inherit cargo meson MY_P=glycin-${PV/_/.} DESCRIPTION="Loaders for glycin clients (glycin crate or libglycin)" -HOMEPAGE="https://gitlab.gnome.org/sophie-h/glycin/" +HOMEPAGE="https://gitlab.gnome.org/GNOME/glycin/" SRC_URI=" https://download.gnome.org/sources/glycin/$(ver_cut 1-2)/${MY_P}.tar.xz " @@ -56,8 +56,11 @@ QA_FLAGS_IGNORED="usr/libexec/glycin-loaders/.*" src_prepare() { default - # https://gitlab.gnome.org/sophie-h/glycin/-/issues/81 + # https://gitlab.gnome.org/GNOME/glycin/-/issues/81 sed -i -e '\|/fonts|d' tests/tests.rs || die + # avoid depending on git + # https://gitlab.gnome.org/GNOME/glycin/-/issues/110 + sed -i -e 's/git/false/' loaders/meson.build || die } src_configure() { diff --git a/media-libs/glycin-loaders/glycin-loaders-1.1.0-r1.ebuild b/media-libs/glycin-loaders/glycin-loaders-1.2_beta1.ebuild index 0775282f7108..d70934f73076 100644 --- a/media-libs/glycin-loaders/glycin-loaders-1.1.0-r1.ebuild +++ b/media-libs/glycin-loaders/glycin-loaders-1.2_beta1.ebuild @@ -1,13 +1,19 @@ -# Copyright 2024 Gentoo Authors +# Copyright 2024-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 +# crates vendored upstream +CRATES=" +" + +RUST_MIN_VERSION=1.80.0 + inherit cargo meson -MY_P=glycin-${PV/_/.} +MY_P=glycin-${PV%_*}.beta.${PV#*beta} DESCRIPTION="Loaders for glycin clients (glycin crate or libglycin)" -HOMEPAGE="https://gitlab.gnome.org/sophie-h/glycin/" +HOMEPAGE="https://gitlab.gnome.org/GNOME/glycin/" SRC_URI=" https://download.gnome.org/sources/glycin/$(ver_cut 1-2)/${MY_P}.tar.xz " @@ -16,8 +22,8 @@ S=${WORKDIR}/${MY_P} LICENSE="|| ( LGPL-2.1+ MPL-2.0 )" # Dependent crate licenses LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD GPL-3+ ISC MIT - Unicode-DFS-2016 + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD GPL-3+ ISC LGPL-3+ + MIT Unicode-3.0 || ( LGPL-2.1+ MPL-2.0 ) " SLOT="0" @@ -38,7 +44,7 @@ RDEPEND=" DEPEND=" ${RDEPEND} test? ( - >=gui-libs/gtk-4.12.0:4 + >=gui-libs/gtk-4.16.0:4 >=media-libs/lcms-2.14:2 ) " @@ -56,8 +62,11 @@ QA_FLAGS_IGNORED="usr/libexec/glycin-loaders/.*" src_prepare() { default - # https://gitlab.gnome.org/sophie-h/glycin/-/issues/81 + # https://gitlab.gnome.org/GNOME/glycin/-/issues/81 sed -i -e '\|/fonts|d' tests/tests.rs || die + # avoid depending on git + # https://gitlab.gnome.org/GNOME/glycin/-/issues/110 + sed -i -e 's/git/false/' loaders/meson.build || die } src_configure() { diff --git a/media-libs/glycin-loaders/metadata.xml b/media-libs/glycin-loaders/metadata.xml index 52ff5d43ffe7..c138ac037769 100644 --- a/media-libs/glycin-loaders/metadata.xml +++ b/media-libs/glycin-loaders/metadata.xml @@ -6,6 +6,6 @@ <name>Michał Górny</name> </maintainer> <upstream> - <remote-id type="gnome-gitlab">sophie-h/glycin</remote-id> + <remote-id type="gnome-gitlab">GNOME/glycin</remote-id> </upstream> </pkgmetadata> diff --git a/media-libs/gmmlib/Manifest b/media-libs/gmmlib/Manifest index 6bc9c563d90a..39378a393cde 100644 --- a/media-libs/gmmlib/Manifest +++ b/media-libs/gmmlib/Manifest @@ -1 +1,2 @@ -DIST intel-gmmlib-22.5.2.tar.gz 867665 BLAKE2B 64559ec6489614df352ba58d25f8706c234f3cff008228a7056e29d92584fab27af311fdb3db8c2e4f6983598019c646df8761ed422a47bcdbff02e79896d613 SHA512 516e2cc0d678d8fd44d8d2b1bfdf61c05670c01c906bd7f55a807846cd6399d4b616f86e6a1d85e2a6a0480c4616a40e9d5b29a3f45fbf588cc4d725ada71d49 +DIST intel-gmmlib-22.5.5.tar.gz 868894 BLAKE2B be17a0b1c16bf0ffcb37da3f63db20643803757ea42911f5666218e34bb3f59919bfa369749bef81598e8fb1855a8cad7347b6811791bc2c483b20a3e644e6dd SHA512 8603847f7d2daf0e7839973fea96fa552dbd8c25f29eb961a4f3c5918c70e61ed975a1f6f886547b605dd9f65a059e9decad6372a4269e2b61195259b049630e +DIST intel-gmmlib-22.6.0.tar.gz 869017 BLAKE2B 8c17ecffb77150c4a2d97ccc13f86a75e2846eb8f3d61310452ad091d7d5f6375abc3e703b37a97ea8b6c18cd2f5adc52747cfa72b3fb9d3ad0785ef45b47dba SHA512 b4d7fb6bcc5827f5883f76fb7371ac17192c5278aa0f68650667f2257536bd0d01e1939927be0f7df4186aeb500eeb648d0336ac821a4f92bcfec75190c89fe1 diff --git a/media-libs/gmmlib/gmmlib-22.5.5.ebuild b/media-libs/gmmlib/gmmlib-22.5.5.ebuild new file mode 100644 index 000000000000..a2f2b89e674b --- /dev/null +++ b/media-libs/gmmlib/gmmlib-22.5.5.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib + +if [[ ${PV} == *9999 ]] ; then + : ${EGIT_REPO_URI:="https://github.com/intel/gmmlib"} + if [[ ${PV%9999} != "" ]] ; then + : ${EGIT_BRANCH:="release/${PV%.9999}"} + fi + inherit git-r3 +else + KEYWORDS="amd64" + SRC_URI="https://github.com/intel/gmmlib/archive/intel-${P}.tar.gz" + S="${WORKDIR}/${PN}-intel-${P}" +fi + +DESCRIPTION="Intel Graphics Memory Management Library" +HOMEPAGE="https://github.com/intel/gmmlib" + +LICENSE="MIT" +SLOT="0/12.3" +IUSE="+custom-cflags test" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch + "${FILESDIR}"/${PN}-20.3.2_cmake_project.patch + "${FILESDIR}"/${PN}-22.1.1_custom_cflags.patch +) + +multilib_src_configure() { + local mycmakeargs=( + -DBUILD_TESTING="$(usex test)" + -DOVERRIDE_COMPILER_FLAGS="$(usex !custom-cflags)" + ) + + cmake_src_configure +} diff --git a/media-libs/gmmlib/gmmlib-22.5.2.ebuild b/media-libs/gmmlib/gmmlib-22.6.0.ebuild index 0a7ae2c25cdb..2a09f24b8f3d 100644 --- a/media-libs/gmmlib/gmmlib-22.5.2.ebuild +++ b/media-libs/gmmlib/gmmlib-22.6.0.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then fi inherit git-r3 else - KEYWORDS="amd64" + KEYWORDS="~amd64" SRC_URI="https://github.com/intel/gmmlib/archive/intel-${P}.tar.gz" S="${WORKDIR}/${PN}-intel-${P}" fi diff --git a/media-libs/gst-plugins-bad/Manifest b/media-libs/gst-plugins-bad/Manifest index 94ba53d60500..df086fb7aacd 100644 --- a/media-libs/gst-plugins-bad/Manifest +++ b/media-libs/gst-plugins-bad/Manifest @@ -1 +1,4 @@ DIST gst-plugins-bad-1.22.11.tar.xz 5552716 BLAKE2B 2b1106f22114c6133d27c4cf8ea00af7efb60a21239b9a7655e35550ffa8401e5c04f9b4894d3ad74126ca67c3eb840b2257c86ad4f78ada208606f679e70fb4 SHA512 cf1901b4d4459be253d00bb65fdf6c86920ad4f034d91bd278509dfcb4e1729fdbedc127aebcd4470cc24c841d94e4199ef60747576b881ded6afc6d41985c70 +DIST gst-plugins-bad-1.22.12.tar.xz 5555004 BLAKE2B d15aa65ffef15e691f84882ee76ce9d3f6e2ec31a95f1c18f56ebcda93043faa11fcd0f0d4d5783fc5aaeac020fe139449651c2008b9ff56a6853d9c55bfd2f7 SHA512 3de9decfce7f16308b077ef687cebc665f9cad7ed327fc0cc816e93c0c842dfbabf673e42cf8915c83d2f80d8ba9496508bc3b94dd587c4ae39798f67682f0bb +DIST gst-plugins-bad-1.24.10.tar.xz 7078644 BLAKE2B 928a79f10e93cad4bddfa1a8ce31ea2ea61e7e0424ed83789ed08c52d44665ce9da44a8b79c5f1b29cb69371ad220daafc741cf1c3bb3eababe0636dbd1b994d SHA512 b4f0ca2899052ba48aca2b4364479cfe580f6150e2b2b043e2a0e687409f5529f548fa06dedd73733d857c1243871426668664228d74bbdfcbd7ed35aea24189 +DIST gst-plugins-bad-1.24.11.tar.xz 7081520 BLAKE2B 5f1114eb20ff7426cd1edc568b535fcf93c5c819a04cc9d86e729ae0b5bd5984d79cd8cbf674fa0ed01c07d1faf3551b8415745b681b4941ad848869db256974 SHA512 12925f006a4a4b848fc4daf772688c8c1c0efe14aceb823954b4c05fcc2305bde1e8d9b7183a833299162de1e6ab5667d9865dee54851cc02d17cb61e72ae066 diff --git a/media-libs/gst-plugins-bad/files/0001-analyticsoverlay-move-option-to-right-section.patch b/media-libs/gst-plugins-bad/files/0001-analyticsoverlay-move-option-to-right-section.patch new file mode 100644 index 000000000000..803f31f64286 --- /dev/null +++ b/media-libs/gst-plugins-bad/files/0001-analyticsoverlay-move-option-to-right-section.patch @@ -0,0 +1,39 @@ +https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8238 + +From 30bce05f5cc6ed0b0f2cf43fcb5558900eeaa198 Mon Sep 17 00:00:00 2001 +Message-ID: <30bce05f5cc6ed0b0f2cf43fcb5558900eeaa198.1736022660.git.sam@gentoo.org> +From: Sam James <sam@gentoo.org> +Date: Sat, 4 Jan 2025 19:52:48 +0000 +Subject: [PATCH 1/2] analyticsoverlay: move option to right section + +It has an external dependency (pango/cairo) so should be under +that heading. Also, fix an inconsistency with the ':' style. + +Fixes: 95464c89772e144088af54c1e8a4c1fecc45f09a +--- + meson_options.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson_options.txt b/meson_options.txt +index 28448ec6db..b3ec11e911 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -6,7 +6,6 @@ option('accurip', type : 'feature', value : 'auto') + option('adpcmdec', type : 'feature', value : 'auto') + option('adpcmenc', type : 'feature', value : 'auto') + option('aiff', type : 'feature', value : 'auto') +-option('analyticsoverlay', type:'feature', value : 'auto') + option('asfmux', type : 'feature', value : 'auto') + option('audiobuffersplit', type : 'feature', value : 'auto') + option('audiofxbad', type : 'feature', value : 'auto') +@@ -92,6 +91,7 @@ option('aja', type : 'feature', value : 'auto', description : 'AJA audio/video s + option('aom', type : 'feature', value : 'auto', description : 'AOM AV1 video codec plugin') + option('avtp', type : 'feature', value : 'auto', description : 'Audio/Video Transport Protocol (AVTP) plugin') + option('amfcodec', type : 'feature', value : 'auto', description : 'AMD AMF codec plugin') ++option('analyticsoverlay', type: 'feature', value : 'auto') + option('androidmedia', type : 'feature', value : 'auto', description : 'Video capture and codec plugins for Android') + option('applemedia', type : 'feature', value : 'auto', description : 'Video capture and codec access plugins for macOS and iOS') + option('asio', type : 'feature', value : 'auto', description : 'Steinberg Audio Streaming Input Output (ASIO) plugin') +-- +2.47.1 + diff --git a/media-libs/gst-plugins-bad/files/0002-codec2json-move-option-to-right-section.patch b/media-libs/gst-plugins-bad/files/0002-codec2json-move-option-to-right-section.patch new file mode 100644 index 000000000000..c5ced3449d6b --- /dev/null +++ b/media-libs/gst-plugins-bad/files/0002-codec2json-move-option-to-right-section.patch @@ -0,0 +1,41 @@ +https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8238 + +From e76098268a833f697336d718d38ce911a8fd38fb Mon Sep 17 00:00:00 2001 +Message-ID: <e76098268a833f697336d718d38ce911a8fd38fb.1736022660.git.sam@gentoo.org> +In-Reply-To: <30bce05f5cc6ed0b0f2cf43fcb5558900eeaa198.1736022660.git.sam@gentoo.org> +References: <30bce05f5cc6ed0b0f2cf43fcb5558900eeaa198.1736022660.git.sam@gentoo.org> +From: Sam James <sam@gentoo.org> +Date: Sat, 4 Jan 2025 20:30:01 +0000 +Subject: [PATCH 2/2] codec2json: move option to right section + +It has an external dependency (json-glib) so should be under +that heading. + +Fixes: fd588a50e415feb0ab21c4a3386bd426c8c9043b +--- + meson_options.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson_options.txt b/meson_options.txt +index b3ec11e911..568871f42d 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -15,7 +15,6 @@ option('audiovisualizers', type : 'feature', value : 'auto') + option('autoconvert', type : 'feature', value : 'auto') + option('bayer', type : 'feature', value : 'auto') + option('camerabin2', type : 'feature', value : 'auto') +-option('codec2json', type : 'feature', value : 'auto') + option('codecalpha', type : 'feature', value : 'auto') + option('codectimestamper', type : 'feature', value : 'auto') + option('coloreffects', type : 'feature', value : 'auto') +@@ -101,6 +100,7 @@ option('bs2b', type : 'feature', value : 'auto', description : 'Bauer stereophon + option('bz2', type : 'feature', value : 'auto', description : 'bz2 stream encoder and decoder plugin') + option('chromaprint', type : 'feature', value : 'auto', description : 'Chromaprint fingerprint audio plugin') + option('closedcaption', type : 'feature', value : 'auto', description : 'Closed caption extractor, decoder, and overlay plugin') ++option('codec2json', type : 'feature', value : 'auto') + option('colormanagement', type : 'feature', value : 'auto', description : 'Color management correction plugin') + option('curl', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin') + option('curl-ssh2', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin libssh2 support') +-- +2.47.1 + diff --git a/media-libs/gst-plugins-bad/gst-plugins-bad-1.22.12.ebuild b/media-libs/gst-plugins-bad/gst-plugins-bad-1.22.12.ebuild new file mode 100644 index 000000000000..b2a1bf3d89dc --- /dev/null +++ b/media-libs/gst-plugins-bad/gst-plugins-bad-1.22.12.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-bad" +inherit gstreamer-meson + +DESCRIPTION="Less plugins for GStreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + +IUSE="X bzip2 +introspection +orc udev vaapi vnc wayland" + +# X11 is automagic for now, upstream #709530 - only used by librfb USE=vnc plugin +# Baseline requirement for libva is 1.6, but 1.10 gets more features +RDEPEND=" + !media-plugins/gst-plugins-va + !media-plugins/gst-transcoder + + >=media-libs/gstreamer-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + vnc? ( X? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) ) + wayland? ( + >=dev-libs/wayland-1.4.0[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}] + >=dev-libs/wayland-protocols-1.15 + ) + + orc? ( >=dev-lang/orc-0.4.33[${MULTILIB_USEDEP}] ) + + vaapi? ( + >=media-libs/libva-1.10:=[${MULTILIB_USEDEP}] + udev? ( dev-libs/libgudev[${MULTILIB_USEDEP}] ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND="dev-util/glib-utils" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) + +PATCHES=( + "${FILESDIR}"/0001-meson-Fix-libdrm-and-vaapi-configure-checks.patch + "${FILESDIR}"/0002-meson-Add-feature-options-for-optional-va-deps-libdr.patch +) + +src_prepare() { + default + addpredict /dev # Prevent sandbox violations bug #570624 +} + +multilib_src_configure() { + GST_PLUGINS_NOAUTO="bz2 hls ipcpipeline librfb shm va wayland" + + local emesonargs=( + -Dshm=enabled + -Dipcpipeline=enabled + -Dhls=disabled + $(meson_feature bzip2 bz2) + $(meson_feature vaapi va) + -Dudev=$(usex udev $(usex vaapi enabled disabled) disabled) + $(meson_feature vnc librfb) + -Dx11=$(usex X $(usex vnc enabled disabled) disabled) + $(meson_feature wayland) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_test() { + # Tests are slower than upstream expects + CK_DEFAULT_TIMEOUT=300 gstreamer_multilib_src_test +} diff --git a/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.10.ebuild b/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.10.ebuild new file mode 100644 index 000000000000..36a30b5c51c4 --- /dev/null +++ b/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.10.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-bad" +inherit gstreamer-meson + +DESCRIPTION="Less plugins for GStreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + +IUSE="X bzip2 +introspection +orc udev vaapi vnc wayland" + +# X11 is automagic for now, upstream #709530 - only used by librfb USE=vnc plugin +# Baseline requirement for libva is 1.6, but 1.15 gets more features +RDEPEND=" + !media-plugins/gst-plugins-va + !media-plugins/gst-transcoder + + >=media-libs/gstreamer-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + vnc? ( X? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) ) + wayland? ( + >=dev-libs/wayland-1.4.0[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.98[${MULTILIB_USEDEP}] + >=dev-libs/wayland-protocols-1.26 + ) + + orc? ( >=dev-lang/orc-0.4.33[${MULTILIB_USEDEP}] ) + + vaapi? ( + >=media-libs/libva-1.15:=[${MULTILIB_USEDEP}] + udev? ( dev-libs/libgudev[${MULTILIB_USEDEP}] ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND="dev-util/glib-utils" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) + +PATCHES=( + "${FILESDIR}"/0001-analyticsoverlay-move-option-to-right-section.patch + "${FILESDIR}"/0002-codec2json-move-option-to-right-section.patch +) + +src_prepare() { + default + addpredict /dev # Prevent sandbox violations bug #570624 +} + +multilib_src_configure() { + GST_PLUGINS_NOAUTO="bz2 hls ipcpipeline librfb shm va wayland" + + local emesonargs=( + -Dshm=enabled + -Dipcpipeline=enabled + -Dhls=disabled + $(meson_feature bzip2 bz2) + $(meson_feature vaapi va) + -Dudev=$(usex udev $(usex vaapi enabled disabled) disabled) + $(meson_feature vnc librfb) + -Dx11=$(usex X $(usex vnc enabled disabled) disabled) + $(meson_feature wayland) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_test() { + # Tests are slower than upstream expects + CK_DEFAULT_TIMEOUT=300 gstreamer_multilib_src_test +} diff --git a/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.11.ebuild b/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.11.ebuild new file mode 100644 index 000000000000..378ee6cb883d --- /dev/null +++ b/media-libs/gst-plugins-bad/gst-plugins-bad-1.24.11.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-bad" +inherit gstreamer-meson + +DESCRIPTION="Less plugins for GStreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + +IUSE="X bzip2 +introspection +orc udev vaapi vnc wayland" + +# X11 is automagic for now, upstream #709530 - only used by librfb USE=vnc plugin +# Baseline requirement for libva is 1.6, but 1.15 gets more features +RDEPEND=" + !media-plugins/gst-plugins-va + !media-plugins/gst-transcoder + + >=media-libs/gstreamer-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP},introspection?] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + vnc? ( X? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) ) + wayland? ( + >=dev-libs/wayland-1.4.0[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.98[${MULTILIB_USEDEP}] + >=dev-libs/wayland-protocols-1.26 + ) + + orc? ( >=dev-lang/orc-0.4.33[${MULTILIB_USEDEP}] ) + + vaapi? ( + >=media-libs/libva-1.15:=[${MULTILIB_USEDEP}] + udev? ( dev-libs/libgudev[${MULTILIB_USEDEP}] ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND="dev-util/glib-utils" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) + +PATCHES=( + "${FILESDIR}"/0001-analyticsoverlay-move-option-to-right-section.patch + "${FILESDIR}"/0002-codec2json-move-option-to-right-section.patch +) + +src_prepare() { + default + addpredict /dev # Prevent sandbox violations bug #570624 +} + +multilib_src_configure() { + GST_PLUGINS_NOAUTO="bz2 hls ipcpipeline librfb shm va wayland" + + local emesonargs=( + -Dshm=enabled + -Dipcpipeline=enabled + -Dhls=disabled + $(meson_feature bzip2 bz2) + $(meson_feature vaapi va) + -Dudev=$(usex udev $(usex vaapi enabled disabled) disabled) + $(meson_feature vnc librfb) + -Dx11=$(usex X $(usex vnc enabled disabled) disabled) + $(meson_feature wayland) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_test() { + # Tests are slower than upstream expects + CK_DEFAULT_TIMEOUT=300 gstreamer_multilib_src_test +} diff --git a/media-libs/gst-plugins-base/Manifest b/media-libs/gst-plugins-base/Manifest index 3b95369e79d3..0ab140eea80d 100644 --- a/media-libs/gst-plugins-base/Manifest +++ b/media-libs/gst-plugins-base/Manifest @@ -1 +1,2 @@ -DIST gst-plugins-base-1.22.11.tar.xz 2373020 BLAKE2B 0809629afae7b82a12079dc40dd5a6a7c86876b591389c3179a74cea975b0ef3c66d9fc2f42a2f722892de2c75ef87eb0cfc5cc5df65f0ebefa02a891b0c392a SHA512 cfd8f7fe66f4707e043c8f070110eb80f9804cec529c8d29b13dbc8604db90e3f010c9614d538ad076b826df54f75ce5ebac355bd05a874e44dccead6a953c60 +DIST gst-plugins-base-1.22.12.tar.xz 2374324 BLAKE2B 7600d5a10a3d7d4f6874cc166cdca2d45d3daedec3fbb56982db172bd4f6c0463fcde812e31c42f912d8fbda793730695ab39e44b7f126b49581f7c87858b988 SHA512 f72edccd49ce2a35577dff80feb1d0f667df54d6b8f61ef2320b5d4564442b907954d015bccec7a915acf25d2197a507c32b72c1ab18dd38d254f57a3277b334 +DIST gst-plugins-base-1.24.11.tar.xz 2455952 BLAKE2B efbf7b1aaece5a287738afb93e4b99c27471c640079bc7312f84925309de0eb91ecb9837eab314e5f787d745fda6c9113105156bd819db64c869ddec6a04e7ff SHA512 b0a2a072c52628b85ae3d2ff8f2769f149fd2d0c3644fb9d9d934ea586835e29af97f41731023969a8120a470f998080ef5a0cac5aa26823d01698dfe2a5e2fb diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.22.11-r1.ebuild b/media-libs/gst-plugins-base/gst-plugins-base-1.22.12.ebuild index 38ac060220c2..7ff6a0837362 100644 --- a/media-libs/gst-plugins-base/gst-plugins-base-1.22.11-r1.ebuild +++ b/media-libs/gst-plugins-base/gst-plugins-base-1.22.12.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 diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.24.11.ebuild b/media-libs/gst-plugins-base/gst-plugins-base-1.24.11.ebuild new file mode 100644 index 000000000000..e7ee39543358 --- /dev/null +++ b/media-libs/gst-plugins-base/gst-plugins-base-1.24.11.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-base" + +inherit flag-o-matic gstreamer-meson + +DESCRIPTION="Basepack of plugins for gstreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="GPL-2+ LGPL-2+" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + +# For OpenGL we have three separate concepts, with a list of possibilities in each: +# * opengl APIs - opengl and/or gles2; USE=opengl and USE=gles2 enable these accordingly; if neither is enabled, OpenGL helper library and elements are not built at all and all the other options aren't relevant +# * opengl platforms - glx and/or egl; also cgl, wgl, eagl for non-linux; USE="X opengl" enables glx platform; USE="egl" enables egl platform. Rest is up for relevant prefix teams. +# * opengl windowing system - x11, wayland, win32, cocoa, android, viv_fb, gbm and/or dispmanx; USE=X enables x11 (but for WSI it's automagic - FIXME), USE=wayland enables wayland, USE=gbm enables gbm (automagic upstream - FIXME); rest is up for relevant prefix/arch teams/contributors to test and provide patches +# With the following limitations: +# * If opengl and/or gles2 is enabled, a platform has to be enabled - x11 or egl in our case, but x11 (glx) is acceptable only with opengl +# * If opengl and/or gles2 is enabled, a windowing system has to be enabled - x11, wayland or gbm in our case +# * glx platform requires opengl API (but we don't REQUIRED_USE that as USE=X is common, glx is just disabled with USE=-opengl or USE=-X) +# * wayland, gbm and most other non-glx WSIs require egl platform +# Additionally there is optional dmabuf support with egl for additional dmabuf based upload/download/eglimage options; +# and optional graphene usage for gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader; +# and libpng/jpeg are required for gloverlay element; + +# Keep default IUSE options for relevant ones mirrored with gst-plugins-gtk and gst-plugins-bad +IUSE="alsa +egl gbm +gles2 +introspection ivorbis +ogg opengl +orc +pango theora +vorbis wayland +X" +GL_REQUIRED_USE=" + || ( gbm wayland X ) + wayland? ( egl ) + gbm? ( egl ) +" +REQUIRED_USE=" + ivorbis? ( ogg ) + theora? ( ogg ) + vorbis? ( ogg ) + opengl? ( || ( egl X ) ${GL_REQUIRED_USE} ) + gles2? ( egl ${GL_REQUIRED_USE} ) +" + +# Dependencies needed by opengl library and plugin (enabled via USE gles2 and/or opengl) +# dmabuf automagic from libdrm headers (drm_fourcc.h) and EGL, so ensure it with USE=egl (platform independent header used only, thus no MULTILIB_USEDEP); provides dmabuf based upload/download/eglimage options +GL_DEPS=" + || ( + >=media-libs/mesa-24.1.0_rc1[opengl,wayland?,${MULTILIB_USEDEP}] + <media-libs/mesa-24.1.0_rc1[egl(+)?,gbm(+)?,gles2?,wayland?,${MULTILIB_USEDEP}] + ) + egl? ( + x11-libs/libdrm + ) + gbm? ( + >=dev-libs/libgudev-147[${MULTILIB_USEDEP}] + >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}] + ) + wayland? ( + >=dev-libs/wayland-1.20.0[${MULTILIB_USEDEP}] + >=dev-libs/wayland-protocols-1.15 + ) + + >=media-libs/graphene-1.4.0[${MULTILIB_USEDEP}] + media-libs/libpng:0[${MULTILIB_USEDEP}] + media-libs/libjpeg-turbo:0=[${MULTILIB_USEDEP}] +" # graphene for optional gltransformation and glvideoflip elements and more GLSL Uniforms support in glshader; libpng/jpeg for gloverlay element +# >=media-libs/graphene-1.4.0[${MULTILIB_USEDEP}] + +RDEPEND=" + app-text/iso-codes + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] ) + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + ivorbis? ( >=media-libs/tremor-0_pre20130223[${MULTILIB_USEDEP}] ) + ogg? ( >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] ) + orc? ( >=dev-lang/orc-0.4.33[${MULTILIB_USEDEP}] ) + kernel_linux? ( >=x11-libs/libdrm-2.4.55[${MULTILIB_USEDEP}] ) + pango? ( >=x11-libs/pango-1.36.3[${MULTILIB_USEDEP}] ) + theora? ( >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] ) + vorbis? ( >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] ) + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}] + ) + + gles2? ( ${GL_DEPS} ) + opengl? ( ${GL_DEPS} ) +" +DEPEND="${RDEPEND} + dev-util/glib-utils + X? ( x11-base/xorg-proto ) +" + +DOCS=( AUTHORS NEWS README.md RELEASE ) + +PATCHES=( +) + +multilib_src_configure() { + filter-flags -mno-sse -mno-sse2 -mno-sse4.1 #610340 + + # opus: split to media-plugins/gst-plugins-opus + GST_PLUGINS_NOAUTO="alsa gl ogg pango theora vorbis x11 xshm xvideo" + + local emesonargs=( + -Dtools=enabled + + $(meson_feature alsa) + $(meson_feature kernel_linux drm) + $(meson_feature ogg) + $(meson_feature pango) + $(meson_feature theora) + $(meson_feature vorbis) + $(meson_feature X x11) + $(meson_feature X xshm) + $(meson_feature X xvideo) + ) + + if use opengl || use gles2; then + # because meson doesn't like extraneous commas + local gl_api=( $(use opengl && echo opengl) $(use gles2 && echo gles2) ) + local gl_platform=( $(use X && use opengl && echo glx) $(use egl && echo egl) ) + local gl_winsys=( + $(use X && echo x11) + $(use wayland && echo wayland) + $(use egl && echo egl) + $(use gbm && echo gbm) + ) + + emesonargs+=( + -Dgl=enabled + -Dgl-graphene=enabled + -Dgl_api=$(IFS=, ; echo "${gl_api[*]}") + -Dgl_platform=$(IFS=, ; echo "${gl_platform[*]}") + -Dgl_winsys=$(IFS=, ; echo "${gl_winsys[*]}") + ) + else + emesonargs+=( + -Dgl=disabled + -Dgl_api= + -Dgl_platform= + -Dgl_winsys= + ) + fi + + # Workaround EGL/eglplatform.h being built with X11 present + use X || export CFLAGS="${CFLAGS} -DEGL_NO_X11" + + gstreamer_multilib_src_configure +} diff --git a/media-libs/gst-plugins-good/Manifest b/media-libs/gst-plugins-good/Manifest index 08d2b2aa7987..1a6fa0237bb0 100644 --- a/media-libs/gst-plugins-good/Manifest +++ b/media-libs/gst-plugins-good/Manifest @@ -1 +1,2 @@ -DIST gst-plugins-good-1.22.11.tar.xz 2847708 BLAKE2B d61f834727719992e207ce3aa2e9b4ca779930f8bc0baf12bef7869f456ac86fad4a3874b50071d28724e414c5b134f7604af4b66c836da3388e584fbbe16dcf SHA512 e6105c90a66bfee8a69f621bf44f53fcbf832ec9290cee984354da91e57b61d2bbd548e3ad0c5d9f859d0c3f5ba3c313539f24b350e0a7acf29cb8983d4f40cb +DIST gst-plugins-good-1.22.12.tar.xz 2844924 BLAKE2B 5bc2f802a6abac4405642f9fe9a0ce4aacfdd1273a9e6224f7fa917ec3a654a2db97c6f74f8cbba93211bc7d41a10ea5394342ea9c902fddb723adfe8535cdec SHA512 06edbec1981681eef13852f21814666ccd9b664892795109d605015e0fe351d9cc3159af3e0ff92aa0d6bf085af8a749333d128544a2ce8b545067b95b7e09c0 +DIST gst-plugins-good-1.24.11.tar.xz 2937828 BLAKE2B 66d2f4ff4564d34a0cb26c6bd00d7dd933d7674a08ea8119e94c32f2088c8f3aebc006e4288309bb3c2b5862f44806f74395609f4c58f2d563247dd8acf4f49d SHA512 7b15baf2aa0aa72f469d0c44cc13a892b85e7d4e08d04c44bfeb0ff475aa274474adcf652ed4fb9bca22155d04afa47898a423d3b5844a9b597337a3ab46faed diff --git a/media-libs/gst-plugins-good/gst-plugins-good-1.22.11.ebuild b/media-libs/gst-plugins-good/gst-plugins-good-1.22.12.ebuild index 47f709973afa..e7591b57374f 100644 --- a/media-libs/gst-plugins-good/gst-plugins-good-1.22.11.ebuild +++ b/media-libs/gst-plugins-good/gst-plugins-good-1.22.12.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 diff --git a/media-libs/gst-plugins-good/gst-plugins-good-1.24.11.ebuild b/media-libs/gst-plugins-good/gst-plugins-good-1.24.11.ebuild new file mode 100644 index 000000000000..e7591b57374f --- /dev/null +++ b/media-libs/gst-plugins-good/gst-plugins-good-1.24.11.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-good" + +inherit gstreamer-meson + +DESCRIPTION="Basepack of plugins for GStreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2.1+" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" +IUSE="+orc" + +# Old media-libs/gst-plugins-ugly blocker for xingmux moving from ugly->good +RDEPEND=" + !<media-libs/gst-plugins-ugly-1.22.3 + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP}] + >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + orc? ( >=dev-lang/orc-0.4.33[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND}" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) + +multilib_src_configure() { + # gst/matroska can use bzip2 + GST_PLUGINS_NOAUTO="bz2" + + local emesonargs=( + -Dbz2=enabled + ) + + gstreamer_multilib_src_configure +} diff --git a/media-libs/gst-plugins-ugly/Manifest b/media-libs/gst-plugins-ugly/Manifest index b2b2d4a984d9..4c6a49b345af 100644 --- a/media-libs/gst-plugins-ugly/Manifest +++ b/media-libs/gst-plugins-ugly/Manifest @@ -1 +1,4 @@ DIST gst-plugins-ugly-1.22.11.tar.xz 256812 BLAKE2B 143fe16c92465be0c5bfb5b6c452be9e730501d372e49c26c6837eb2ff336b8098cda5afc61b3620f9ea9ed13eed6118e0deed8dcc9eab499b941e5e64157fd9 SHA512 767e80c1d15ec79ff196c4c4ad6128bc17502b490201c1a3799341a2784848f639392310de7dabc922d022acb5156bd25e4191ba2409c17b3a23a278f7722c5c +DIST gst-plugins-ugly-1.22.12.tar.xz 257464 BLAKE2B c7f89dda309712cb2380b2e29b67a40c02c561bbe49a83acb2beb84aac6ebaed895e1a27d5f6fb6787c803e2e94a0409d14a3206feb9797c5329bbaff5e4a61d SHA512 3ef5cb384578bcaff3bb45fa8fa8f97884acb2e09a1621c504fca4bd8744cb83e71c342372a7ddd06bc4077fdd2684d1f7f078278392361ed4e18afed374c659 +DIST gst-plugins-ugly-1.24.10.tar.xz 231124 BLAKE2B d4e5d5a4abd3860d98ea9066d9eb13662ef639bd0ee8b8a1c5d5ffb155e0febc968019a151259cfd6592c8f27332bf6b4b6a3d74249b530c1a25eb31adf31b19 SHA512 87430ccf3e0382bae8f24e429734c38d9339ea95205e2a5fe5db8408ca9a369ee971b2e84b0717f918d65b2b91dec4baf032d8a01658512ec0af9ee9dfe397c5 +DIST gst-plugins-ugly-1.24.11.tar.xz 232056 BLAKE2B 849c34c099d062c81e7e008aee95d36ac6aae0c08eacec0e2ba3582b421d912f9dc0322031310eb459c76af30056ee38d5b5849d0400540656571c1a110f1c54 SHA512 461f3a07b4265bfe66b5b22f3a10bbf254068381f5634e970b3cb6d1c2d3ea401e0be43d188934a490e29658d8447a83de50253380cde371b0f5a55178f90e6a diff --git a/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.22.12.ebuild b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.22.12.ebuild new file mode 100644 index 000000000000..2f0d2890b287 --- /dev/null +++ b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.22.12.ebuild @@ -0,0 +1,19 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-ugly" +inherit gstreamer-meson + +DESCRIPTION="Basepack of plugins for gstreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2+" # some split plugins are LGPL but combining with a GPL library +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + +RDEPEND=" + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP}] +" +DEPEND="${RDEPEND}" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) diff --git a/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.10.ebuild b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.10.ebuild new file mode 100644 index 000000000000..9c9d7568b882 --- /dev/null +++ b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.10.ebuild @@ -0,0 +1,19 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-ugly" +inherit gstreamer-meson + +DESCRIPTION="Basepack of plugins for gstreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2+" # some split plugins are LGPL but combining with a GPL library +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP}] +" +DEPEND="${RDEPEND}" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) diff --git a/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.11.ebuild b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.11.ebuild new file mode 100644 index 000000000000..2f0d2890b287 --- /dev/null +++ b/media-libs/gst-plugins-ugly/gst-plugins-ugly-1.24.11.ebuild @@ -0,0 +1,19 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GST_ORG_MODULE="gst-plugins-ugly" +inherit gstreamer-meson + +DESCRIPTION="Basepack of plugins for gstreamer" +HOMEPAGE="https://gstreamer.freedesktop.org/" + +LICENSE="LGPL-2+" # some split plugins are LGPL but combining with a GPL library +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + +RDEPEND=" + >=media-libs/gst-plugins-base-${PV}:${SLOT}[${MULTILIB_USEDEP}] +" +DEPEND="${RDEPEND}" + +DOCS=( AUTHORS ChangeLog NEWS README.md RELEASE ) diff --git a/media-libs/gst-rtsp-server/Manifest b/media-libs/gst-rtsp-server/Manifest index 395530c61a87..c71da8ace979 100644 --- a/media-libs/gst-rtsp-server/Manifest +++ b/media-libs/gst-rtsp-server/Manifest @@ -1 +1,4 @@ DIST gst-rtsp-server-1.22.11.tar.xz 281608 BLAKE2B 50c2fdaeb828b4f1d8f23cea4e4054ab07bd7be3b3fcf1c977852c13b18b3360603da62daa19bc1f71b6d138158bd2d51f0e048490c99b1dcfc5cf4dbf5bd52a SHA512 cf3c698dbbcaa790b6bb1b1df4bae88be5f54fb70ba4bce5a4a0f907d693616d52b1cf67e73f694dcd7c9588b63a6303949f9f36fde952011a2d2ff80f9b44de +DIST gst-rtsp-server-1.22.12.tar.xz 282316 BLAKE2B 0f7795271bf8943c322d65f490e1e100db7775f21cb853a39c199871dfa5cd4fcd1ee0169256a1b5bdf31d1c999c22ef355011d326086f13cdf92371b4ab29cc SHA512 fde52d8b08b58170bdf573e76c60aab8c46c857f3111504916d4901246567f4bf018e1c67913425fc1501e8b99723c19c9237297b1f84c2b489331d34199aa2c +DIST gst-rtsp-server-1.24.10.tar.xz 287084 BLAKE2B fc9da46980c740e256019e4bd461e7672c10f3f44517c80bd9007f344ffa9ce8bcc772fb62c6498e3eba55c05db5c6bf9207b9f4a64ee79049f73c244453a347 SHA512 e5baba79f98ecbc10c90d1e91d6709d20e3faf8bf7f8e166c383229337ec3e3986fc17ef554c5276d517153f380a82c83092261a324b47ae66aeebb9bc741cab +DIST gst-rtsp-server-1.24.11.tar.xz 288008 BLAKE2B 717af25bd36a414bbe17d629f250d05db63828d6ff34dd27dbad5dc942cc06c85651e829d5770699e75a56a076d0c123db3bd1509640d34d2a4bc1c0b49fc76b SHA512 d1342a75154ff79f26447a14104cbdc6b8ebec46ff7588c3a1dad08ddb591e34401ad02c359e3f8fc3f018020f111573f5e38e9ebe1d3d0a73c142bb3affcf58 diff --git a/media-libs/gst-rtsp-server/gst-rtsp-server-1.22.12.ebuild b/media-libs/gst-rtsp-server/gst-rtsp-server-1.22.12.ebuild new file mode 100644 index 000000000000..530afd82d813 --- /dev/null +++ b/media-libs/gst-rtsp-server/gst-rtsp-server-1.22.12.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit gstreamer-meson + +DESCRIPTION="A GStreamer based RTSP server" +HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-rtsp-server.html" + +LICENSE="LGPL-2+" +KEYWORDS="amd64 ~arm64 x86" +IUSE="examples +introspection static-libs" + +# gst-plugins-base for many used elements and API +# gst-plugins-good for rtprtxsend and rtpbin elements, maybe more +# gst-plugins-srtp for srtpenc and srtpdec elements +RDEPEND=" + >=media-libs/gstreamer-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-good-${PV}:${SLOT}[${MULTILIB_USEDEP}] + >=media-plugins/gst-plugins-srtp-${PV}:${SLOT}[${MULTILIB_USEDEP}] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="" + +multilib_src_configure() { + local emesonargs=( + -Dintrospection=$(multilib_native_usex introspection enabled disabled) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_install_all() { + einstalldocs + + if use examples ; then + docinto examples + dodoc "${S}"/examples/*.c + fi +} diff --git a/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.10.ebuild b/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.10.ebuild new file mode 100644 index 000000000000..85cf45dde01e --- /dev/null +++ b/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.10.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit gstreamer-meson + +DESCRIPTION="A GStreamer based RTSP server" +HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-rtsp-server.html" + +LICENSE="LGPL-2+" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="examples +introspection static-libs" + +# gst-plugins-base for many used elements and API +# gst-plugins-good for rtprtxsend and rtpbin elements, maybe more +# gst-plugins-srtp for srtpenc and srtpdec elements +RDEPEND=" + >=media-libs/gstreamer-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-good-${PV}:${SLOT}[${MULTILIB_USEDEP}] + >=media-plugins/gst-plugins-srtp-${PV}:${SLOT}[${MULTILIB_USEDEP}] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="" + +multilib_src_configure() { + local emesonargs=( + -Dintrospection=$(multilib_native_usex introspection enabled disabled) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_install_all() { + einstalldocs + + if use examples ; then + docinto examples + dodoc "${S}"/examples/*.c + fi +} diff --git a/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.11.ebuild b/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.11.ebuild new file mode 100644 index 000000000000..530afd82d813 --- /dev/null +++ b/media-libs/gst-rtsp-server/gst-rtsp-server-1.24.11.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit gstreamer-meson + +DESCRIPTION="A GStreamer based RTSP server" +HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-rtsp-server.html" + +LICENSE="LGPL-2+" +KEYWORDS="amd64 ~arm64 x86" +IUSE="examples +introspection static-libs" + +# gst-plugins-base for many used elements and API +# gst-plugins-good for rtprtxsend and rtpbin elements, maybe more +# gst-plugins-srtp for srtpenc and srtpdec elements +RDEPEND=" + >=media-libs/gstreamer-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-base-${PV}:${SLOT}[introspection?,${MULTILIB_USEDEP}] + >=media-libs/gst-plugins-good-${PV}:${SLOT}[${MULTILIB_USEDEP}] + >=media-plugins/gst-plugins-srtp-${PV}:${SLOT}[${MULTILIB_USEDEP}] + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="" + +multilib_src_configure() { + local emesonargs=( + -Dintrospection=$(multilib_native_usex introspection enabled disabled) + ) + + gstreamer_multilib_src_configure +} + +multilib_src_install_all() { + einstalldocs + + if use examples ; then + docinto examples + dodoc "${S}"/examples/*.c + fi +} diff --git a/media-libs/gstreamer-editing-services/Manifest b/media-libs/gstreamer-editing-services/Manifest index 817afbcbf4a8..2c7cb8c938b5 100644 --- a/media-libs/gstreamer-editing-services/Manifest +++ b/media-libs/gstreamer-editing-services/Manifest @@ -1 +1,4 @@ DIST gst-editing-services-1.22.11.tar.xz 836008 BLAKE2B 49ce48e45b956f9675f64f8da4ce2a8cd851ccba5573e722d8f823ff08a96053a4b8beca14fe5d32b4d8f71abf32feba2c2b80c10cf3825c32a5eaf52ce474a4 SHA512 87f1240c3c18d1530ace3f15ad50acef90dab2808198658b5f9da54a5cfe2ee2c040e7bdd766550e566c5e86a1509b12a473b6063f3a7e471ee18b163b40873d +DIST gst-editing-services-1.22.12.tar.xz 836768 BLAKE2B 252426269ab9b7893bf688335ec8920203846f3211a37ccbbd5256104bcee44d3897986e8787ecc138cfb97402c69f27e1622a774f7ada5d0ae6ea07e0495204 SHA512 34a888ca63c883c55e27b5b7270c6842f03d45544fd698c60e35a640f978c60667a23baec096e4be73a618beffdbf251bcc310437a1f1122aa98c2dc7a0b301c +DIST gst-editing-services-1.24.10.tar.xz 854400 BLAKE2B 85ac071a608e6d21c9c72328851b70d046eef58c9c029d92c0f8e78673a36cf8c6d5b4c00f8b8dec2f801da989edbd9645b20b1961a5cdcc107e30493707bebf SHA512 864c6f03470288bdad2ab9d9c712bc471ae313bad58c08b83aca4b7959d71f7e026b55a8c125fae8abecc89bfb9717e0eaae5bce7c681a82cbd96f1f66684e64 +DIST gst-editing-services-1.24.11.tar.xz 855536 BLAKE2B 3273bb65ddbd23a98f1046a34b1fee28d4187e817662603ecd6fd723e1b9feada4ed478eb9d921062bc2b7f75c3fc04de3c306297f63dd77c85b5cc57d6e6903 SHA512 04535b53aa6120d944ad10beec717fc10a5241d62d3277922750a6523dc0f2e939b2eb4e87b8d7bed615c1920b9cc97e1a40bc25b5b5b7427251541904e4eaa8 diff --git a/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.22.12.ebuild b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.22.12.ebuild new file mode 100644 index 000000000000..869b38181cd2 --- /dev/null +++ b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.22.12.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit meson python-r1 + +DESCRIPTION="SDK for making video editors and more" +HOMEPAGE="http://wiki.pitivi.org/wiki/GES" +SRC_URI="https://gstreamer.freedesktop.org/src/${PN}/${P/gstreamer/gst}.tar.xz" +S="${WORKDIR}"/${P/gstreamer/gst} + +LICENSE="LGPL-2+" +SLOT="1.0" +KEYWORDS="amd64 ~arm64 x86" + +IUSE="+introspection test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +# Some tests are failing +RESTRICT="test" + +RDEPEND=" + ${PYTHON_DEPS} + >=dev-libs/glib-2.40.0:2 + dev-libs/libxml2:2 + >=media-libs/gstreamer-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-base-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-bad-${PV}:1.0[introspection?] + introspection? ( >=dev-libs/gobject-introspection-0.9.6:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +src_configure() { + python_setup + + local emesonargs=( + -Ddoc=disabled # hotdoc not packaged + $(meson_feature introspection) + $(meson_feature test tests) + -Dbash-completion=disabled + -Dxptv=disabled + -Dpython=enabled + -Dvalidate=disabled + -Dexamples=disabled + ) + meson_src_configure +} + +src_install() { + meson_src_install + python_moduleinto gi.overrides + python_foreach_impl python_domodule bindings/python/gi/overrides/GES.py +} diff --git a/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.10.ebuild b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.10.ebuild new file mode 100644 index 000000000000..c5c89ff1d13a --- /dev/null +++ b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.10.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit meson python-r1 + +DESCRIPTION="SDK for making video editors and more" +HOMEPAGE="http://wiki.pitivi.org/wiki/GES" +SRC_URI="https://gstreamer.freedesktop.org/src/${PN}/${P/gstreamer/gst}.tar.xz" +S="${WORKDIR}"/${P/gstreamer/gst} + +LICENSE="LGPL-2+" +SLOT="1.0" +KEYWORDS="~amd64 ~arm64 ~x86" + +IUSE="+introspection test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +# Some tests are failing +RESTRICT="test" + +RDEPEND=" + ${PYTHON_DEPS} + >=dev-libs/glib-2.40.0:2 + dev-libs/libxml2:2 + >=media-libs/gstreamer-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-base-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-bad-${PV}:1.0[introspection?] + introspection? ( >=dev-libs/gobject-introspection-0.9.6:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +src_configure() { + python_setup + + local emesonargs=( + -Ddoc=disabled # hotdoc not packaged + $(meson_feature introspection) + $(meson_feature test tests) + -Dbash-completion=disabled + -Dxptv=disabled + -Dpython=enabled + -Dvalidate=disabled + -Dexamples=disabled + ) + meson_src_configure +} + +src_install() { + meson_src_install + python_moduleinto gi.overrides + python_foreach_impl python_domodule bindings/python/gi/overrides/GES.py +} diff --git a/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.11.ebuild b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.11.ebuild new file mode 100644 index 000000000000..869b38181cd2 --- /dev/null +++ b/media-libs/gstreamer-editing-services/gstreamer-editing-services-1.24.11.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit meson python-r1 + +DESCRIPTION="SDK for making video editors and more" +HOMEPAGE="http://wiki.pitivi.org/wiki/GES" +SRC_URI="https://gstreamer.freedesktop.org/src/${PN}/${P/gstreamer/gst}.tar.xz" +S="${WORKDIR}"/${P/gstreamer/gst} + +LICENSE="LGPL-2+" +SLOT="1.0" +KEYWORDS="amd64 ~arm64 x86" + +IUSE="+introspection test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +# Some tests are failing +RESTRICT="test" + +RDEPEND=" + ${PYTHON_DEPS} + >=dev-libs/glib-2.40.0:2 + dev-libs/libxml2:2 + >=media-libs/gstreamer-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-base-${PV}:1.0[introspection?] + >=media-libs/gst-plugins-bad-${PV}:1.0[introspection?] + introspection? ( >=dev-libs/gobject-introspection-0.9.6:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +src_configure() { + python_setup + + local emesonargs=( + -Ddoc=disabled # hotdoc not packaged + $(meson_feature introspection) + $(meson_feature test tests) + -Dbash-completion=disabled + -Dxptv=disabled + -Dpython=enabled + -Dvalidate=disabled + -Dexamples=disabled + ) + meson_src_configure +} + +src_install() { + meson_src_install + python_moduleinto gi.overrides + python_foreach_impl python_domodule bindings/python/gi/overrides/GES.py +} diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest index 4e39f93eb248..4298b23a2b3d 100644 --- a/media-libs/gstreamer/Manifest +++ b/media-libs/gstreamer/Manifest @@ -1 +1,2 @@ -DIST gstreamer-1.22.11.tar.xz 1801248 BLAKE2B 856342994bc8750598cb256313151355e7c58d751214c168c53ba831cfcdf3ab789a192473ba0e0645df8cb7cb9e625348b18cfe83d839f1f231f8f746877f49 SHA512 8976cebd2cbac3ef31ee6163d2c5264be7d10d54ab9fe6f0b2317d7d0380420ef2378e1b476af09f1e6b203e3eafcda88fc08bb2f550a6f411d8670dec04843e +DIST gstreamer-1.22.12.tar.xz 1803104 BLAKE2B c44d0b2a18f523c6e826f774255e0a6946ef6a8386f92dd611ee1f9d2e3bee6dc837654efd61017c7bc4784e6356a66698f9038e1747ed14ff3e468b4fcb8652 SHA512 2443a337a97ac805267d683d049b5023281db54d0d9c561510cff478b0a13256078eb08b1dd89440d2348c84e6e64c8137ce8e6e7c131440a7bd3a8975ebe722 +DIST gstreamer-1.24.11.tar.xz 1870996 BLAKE2B 8d4a24a2c4ee7af8b30eed569f27125cafd8e77b0d93b210a87b2b442809e6bd4b3009b01e961f1c488b11f0c1e21b8d12702a4c32f4c76718d12a4df6dfed9e SHA512 980dcabb5481cc1c59060c0b9b396deb4bc5646f757bc6be6ac514847f046473b5a997ca2d5a394cbedd079403ac0ae84e6b1d94997761018d080fadf9e99af5 diff --git a/media-libs/gstreamer/files/gstreamer-1.24.10-disable-test-with-no-tools.patch b/media-libs/gstreamer/files/gstreamer-1.24.10-disable-test-with-no-tools.patch new file mode 100644 index 000000000000..bf751b0ce086 --- /dev/null +++ b/media-libs/gstreamer/files/gstreamer-1.24.10-disable-test-with-no-tools.patch @@ -0,0 +1,18 @@ +gstregistry needs to be able to find gst-plugin-scanner which doesn't +exist if tools are disabled, as we do for multilib. + +But really, this seems to be papering over a bigger, longer-standing +problem: +* https://bugs.gentoo.org/870361 +* https://bugzilla.redhat.com/show_bug.cgi?id=1472160 +--- a/tests/check/meson.build ++++ b/tests/check/meson.build +@@ -36,7 +36,7 @@ core_tests = [ + [ 'gst/gstpreset.c' ], + [ 'gst/gstprotection.c' ], + [ 'gst/gstquery.c', not gst_registry ], +- [ 'gst/gstregistry.c', not gst_registry ], ++ [ 'gst/gstregistry.c', not gst_registry or not get_option('tools').enabled() ], + [ 'gst/gstpromise.c'], + [ 'gst/gstsegment.c' ], + [ 'gst/gststream.c' ], diff --git a/media-libs/gstreamer/gstreamer-1.22.11.ebuild b/media-libs/gstreamer/gstreamer-1.22.12.ebuild index 4aa50b8c28c9..3c23bc3b78ab 100644 --- a/media-libs/gstreamer/gstreamer-1.22.11.ebuild +++ b/media-libs/gstreamer/gstreamer-1.22.12.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 diff --git a/media-libs/gstreamer/gstreamer-1.24.11.ebuild b/media-libs/gstreamer/gstreamer-1.24.11.ebuild new file mode 100644 index 000000000000..72c0bfbf5027 --- /dev/null +++ b/media-libs/gstreamer/gstreamer-1.24.11.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_OPTIONAL=1 +RUST_MIN_VER=1.48 +inherit gstreamer-meson rust + +DESCRIPTION="Open source multimedia framework" +HOMEPAGE="https://gstreamer.freedesktop.org/" +SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz" + +LICENSE="LGPL-2+" +SLOT="1.0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+caps +introspection ptp unwind" + +# gstreamer-1.22.x requires 2.62, but 2.64 is strongly recommended +RDEPEND=" + >=dev-libs/glib-2.64.0:2[${MULTILIB_USEDEP}] + caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] ) + introspection? ( >=dev-libs/gobject-introspection-1.31.1:= ) + unwind? ( + >=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}] + dev-libs/elfutils[${MULTILIB_USEDEP}] + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-util/glib-utils + app-alternatives/yacc + app-alternatives/lex + ptp? ( ${RUST_DEPEND} ) +" + +DOCS=( AUTHORS ChangeLog NEWS MAINTAINERS README.md RELEASE ) + +PATCHES=( + "${FILESDIR}"/gstreamer-1.24.10-disable-test-with-no-tools.patch +) + +# Rust +QA_FLAGS_IGNORED="usr/libexec/gstreamer-1.0/gst-ptp-helper" + +pkg_setup() { + gstreamer-meson_pkg_setup + use ptp && rust_pkg_setup +} + +multilib_src_configure() { + local emesonargs=( + -Dtools=$(multilib_is_native_abi && echo enabled || echo disabled) + -Dbenchmarks=disabled + -Dexamples=disabled + -Dcheck=enabled + -Dptp-helper=$(multilib_is_native_abi && echo $(usex 'ptp' 'enabled' 'disabled') || echo disabled) + $(meson_feature unwind libunwind) + $(meson_feature unwind libdw) + ) + + if use caps ; then + emesonargs+=( -Dptp-helper-permissions=capabilities ) + else + emesonargs+=( + -Dptp-helper-permissions=setuid-root + -Dptp-helper-setuid-user=nobody + -Dptp-helper-setuid-group=nobody + ) + fi + + gstreamer_multilib_src_configure +} diff --git a/media-libs/gstreamer/metadata.xml b/media-libs/gstreamer/metadata.xml index 3484eebda129..46db1e6af323 100644 --- a/media-libs/gstreamer/metadata.xml +++ b/media-libs/gstreamer/metadata.xml @@ -8,5 +8,7 @@ <use> <flag name="unwind">Enable <pkg>sys-libs/libunwind</pkg> usage for better backtrace support in leaks tracer module</flag> + <flag name="ptp">Controls Precision Time Protocol (PTP) helper. + Written in Rust.</flag> </use> </pkgmetadata> diff --git a/media-libs/hamlib/Manifest b/media-libs/hamlib/Manifest index bee3703d46c6..9af00835dea4 100644 --- a/media-libs/hamlib/Manifest +++ b/media-libs/hamlib/Manifest @@ -1 +1,3 @@ DIST hamlib-4.5.5.tar.gz 2603846 BLAKE2B ad4a286a7aa1e972707cb9ed15a4268909a7d252a64b98b01d35c9d9e42c605cd600e819e195e49d501c1e135191fda585581e27801fa217c9141236a81ad770 SHA512 2cdff2630e89fa95c7ac40e998492e8a04e000fcca18b9491ddcb967927ffaa771ed2e6ac3232a060947883533a6ae7405042a2f8fdb1de157d71f74381f5899 +DIST hamlib-4.6.1.tar.gz 2909273 BLAKE2B d8ab443bd19068ec76fbe021f9dcdbaf3cead9a6eac1eab47c148c35fe7c98d294d50386cc3c386e8113ac26a9aa594f7a9d121e81601c84660350115566b1b6 SHA512 3363665e2fc5541e2bd68767e9c0d8c856a7d2ea9a7e4a2d7e79d6e7349150642cba4e96d27ab6dc029fd838e05c3f0f9f7acadcc7c8bc51bedaf61ef67e95ce +DIST hamlib-4.6.2.tar.gz 2909790 BLAKE2B 8bba73b446be13f4be592333b51b863f7299d189c640e2d1bfb6dd82f8f5e19ed6a1f39be09811d2061bb416696dd24907a9248b7bc96360e7a0fec8783701b1 SHA512 8b8b7e4c95e4331f1ace1d724924e30c66a88d04d5354fd28d28090b751184300196e4512504136ece98cef374e69dd58cc597819f8802ddadb978c7a0bf731d diff --git a/media-libs/hamlib/files/hamlib-drop-lua.patch b/media-libs/hamlib/files/hamlib-drop-lua.patch new file mode 100644 index 000000000000..aae145c0ddeb --- /dev/null +++ b/media-libs/hamlib/files/hamlib-drop-lua.patch @@ -0,0 +1,88 @@ +diff --git a/configure.ac b/configure.ac +index 609db45..fe0ad42 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -666,34 +666,6 @@ AC_SUBST([TCL_LIBS]) + AC_SUBST([TCL_CFLAGS]) + + +-dnl Check for lua availability, so we can enable HamlibLua +-# Lua bindings +-AC_MSG_CHECKING([whether to build lua binding]) +-AC_ARG_WITH([lua-binding], +- [AS_HELP_STRING([--with-lua-binding], +- [build lua binding @<:@default=no@:>@])], +- [cf_with_lua_binding=$withval], +- [cf_with_lua_binding=no]) +-AC_MSG_RESULT([$cf_with_lua_binding]) +- +-dnl AX_LUA_DEVEL from macros/ax_lua_devel.m4 +-AS_IF([test x"${cf_with_lua_binding}" = "xyes"],[ +- +- AX_PROG_LUA([5.2], [5.5]) +- AX_LUA_HEADERS +- AX_LUA_LIBS +- +- BINDING_LIST="${BINDING_LIST} lua" +- BINDING_ALL="${BINDING_ALL} all-lua" +- BINDING_CHECK="${BINDING_CHECK} check-lua" +- BINDING_CLEAN="${BINDING_CLEAN} clean-lua" +- BINDING_DISTCLEAN="${BINDING_DISTCLEAN} distclean-lua" +- BINDING_INSTALL_EXEC="${BINDING_INSTALL_EXEC} install-lua" +- BINDING_UNINSTALL="${BINDING_UNINSTALL} uninstall-lua" +- BINDING_LIB_TARGETS="${BINDING_LIB_TARGETS} \$(lua_ltlib)"]) +- +-AM_CONDITIONAL([ENABLE_LUA], [test x"${cf_with_lua_binding}" = "xyes"]) +- + + dnl Only search for Swig if one or more bindings are enabled. + AS_IF([test "x${BINDING_ALL}" != "x"], +diff --git a/bindings/Makefile.am b/bindings/Makefile.am +index fa75abc..75319ff 100644 +--- a/bindings/Makefile.am ++++ b/bindings/Makefile.am +@@ -191,44 +191,7 @@ uninstall-tcl: + endif + # TCL + +-if ENABLE_LUA +-########################################## +-# Lua binding +- +-luaexec_ltlib = Hamliblua.la +- +-MOSTLYCLEANFILES += hamliblua_wrap.c +-BUILT_SOURCES += hamliblua_wrap.c +-example_DATA += luatest.lua +- +-nodist_luaexec_LUA = Hamlib.lua +-nodist_Hamliblua_la_SOURCES = hamliblua_wrap.c +- +-Hamliblua_la_CPPFLAGS = $(LUA_INCLUDE) -I$(top_srcdir)/include -I$(top_srcdir)/src +-Hamliblua_la_LDFLAGS = -no-undefined -module -avoid-version +-Hamliblua_la_LIBADD = $(top_builddir)/src/libhamlib.la +-Hamliblua_ladir = $(luaexecdir) +-Hamliblua_la_LTLIBRARIES = $(luaexec_ltlib) +- +-all-lua: $(luaexec_ltlib) + +-check-lua: all-lua +- $(AM_V_at)LUA_CPATH="$(abs_builddir)/.libs/?.so" $(LUA) $(srcdir)/luatest.lua \ +- || echo "Lua test failed" 1>&2 +- +-Hamlib.lua: hamliblua_wrap.c +- +-hamliblua_wrap.c: hamlib.swg $(SWGDEP) +- $(AM_V_GEN)$(SWIG) -lua $(AM_CPPFLAGS) -I$(top_srcdir)/bindings \ +- -o $@ $$(test -f hamlib.swg || echo '$(srcdir)/')hamlib.swg +- +-install-lua: +-clean-lua: +-distclean-lua: +-uninstall-lua: +- +-endif +-# Lua + + + all-local: @BINDING_ALL@ diff --git a/media-libs/hamlib/hamlib-4.5.5-r3.ebuild b/media-libs/hamlib/hamlib-4.5.5-r4.ebuild index daa89b08622c..460369f15605 100644 --- a/media-libs/hamlib/hamlib-4.5.5-r3.ebuild +++ b/media-libs/hamlib/hamlib-4.5.5-r4.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 @@ -42,6 +42,7 @@ DOCS=(AUTHORS NEWS PLAN README README.betatester README.developer) PATCHES=( "${FILESDIR}/${PN}-4.5.5-gcc14-fix.patch" + "$FILESDIR/hamlib-drop-lua.patch" ) pkg_setup() { diff --git a/media-libs/hamlib/hamlib-4.6.1.ebuild b/media-libs/hamlib/hamlib-4.6.1.ebuild new file mode 100644 index 000000000000..6b606145abd6 --- /dev/null +++ b/media-libs/hamlib/hamlib-4.6.1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +MY_P=${P/_rc2/~rc2} + +inherit autotools flag-o-matic python-single-r1 + +DESCRIPTION="Ham radio backend rig control libraries" +HOMEPAGE="https://www.hamlib.github.io" +SRC_URI="https://downloads.sourceforge.net/hamlib/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2+ GPL-2+" +SLOT="0/4.2" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="doc perl python tcl" + +RESTRICT="test" + +RDEPEND=" + =virtual/libusb-0* + dev-libs/libxml2 + sys-libs/readline:0= + perl? ( dev-lang/perl ) + python? ( ${PYTHON_DEPS} ) + tcl? ( dev-lang/tcl:0= )" + +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + dev-lang/swig + >=dev-build/libtool-2.2 + doc? ( app-text/doxygen + dev-util/source-highlight )" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DOCS=(AUTHORS NEWS PLAN README README.betatester README.developer) + +PATCHES=( "$FILESDIR/hamlib-drop-lua.patch" ) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Correct install target to whatever INSTALLDIRS says and use vendor + # installdirs everywhere (bug #611550) + sed -i -e "s#install_site#install#" \ + -e 's#MAKEFILE="Hamlib-pl.mk"#MAKEFILE="Hamlib-pl.mk" INSTALLDIRS=vendor#' \ + bindings/Makefile.am || die "sed failed patching for perl" + + # make building of documentation compatible with autotools-utils + sed -i -e "s/doc:/html:/g" doc/Makefile.am || die "sed failed" + + eautoreconf +} + +src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/926839 + # https://github.com/Hamlib/Hamlib/issues/1524 + filter-lto + + econf \ + --libdir=/usr/$(get_libdir)/hamlib \ + --disable-static \ + --with-xml-support \ + $(use_with perl perl-binding) \ + $(use_with python python-binding) \ + $(use_with tcl tcl-binding) +} + +src_compile() { + emake + use doc && emake html +} + +src_install() { + emake DESTDIR="${D}" install + + use python && python_optimize + + use doc && HTML_DOCS=( doc/html/ ) + einstalldocs + + insinto /usr/$(get_libdir)/pkgconfig + doins hamlib.pc + + echo "LDPATH=/usr/$(get_libdir)/hamlib" > "${T}"/73hamlib + doenvd "${T}"/73hamlib + + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/hamlib/hamlib-4.6.2.ebuild b/media-libs/hamlib/hamlib-4.6.2.ebuild new file mode 100644 index 000000000000..93bef7210d3e --- /dev/null +++ b/media-libs/hamlib/hamlib-4.6.2.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +MY_P=${P/_rc2/~rc2} + +inherit autotools flag-o-matic python-single-r1 + +DESCRIPTION="Ham radio backend rig control libraries" +HOMEPAGE="https://www.hamlib.github.io" +SRC_URI="https://downloads.sourceforge.net/hamlib/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2+ GPL-2+" +SLOT="0/4.2" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="doc perl python tcl" + +RESTRICT="test" + +RDEPEND=" + =virtual/libusb-0* + dev-libs/libxml2 + sys-libs/readline:0= + perl? ( dev-lang/perl ) + python? ( ${PYTHON_DEPS} ) + tcl? ( dev-lang/tcl:0= )" + +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + dev-lang/swig + dev-build/autoconf-archive + >=dev-build/libtool-2.2 + doc? ( app-text/doxygen + dev-util/source-highlight )" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DOCS=(AUTHORS NEWS PLAN README README.betatester README.developer) + +PATCHES=( "$FILESDIR/hamlib-drop-lua.patch" ) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Correct install target to whatever INSTALLDIRS says and use vendor + # installdirs everywhere (bug #611550) + sed -i -e "s#install_site#install#" \ + -e 's#MAKEFILE="Hamlib-pl.mk"#MAKEFILE="Hamlib-pl.mk" INSTALLDIRS=vendor#' \ + bindings/Makefile.am || die "sed failed patching for perl" + + # make building of documentation compatible with autotools-utils + sed -i -e "s/doc:/html:/g" doc/Makefile.am || die "sed failed" + + eautoreconf +} + +src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/926839 + # https://github.com/Hamlib/Hamlib/issues/1524 + filter-lto + + econf \ + --libdir=/usr/$(get_libdir)/hamlib \ + --disable-static \ + --with-xml-support \ + $(use_with perl perl-binding) \ + $(use_with python python-binding) \ + $(use_with tcl tcl-binding) +} + +src_compile() { + emake + use doc && emake html +} + +src_install() { + emake DESTDIR="${D}" install + + use python && python_optimize + + use doc && HTML_DOCS=( doc/html/ ) + einstalldocs + + insinto /usr/$(get_libdir)/pkgconfig + doins hamlib.pc + + echo "LDPATH=/usr/$(get_libdir)/hamlib" > "${T}"/73hamlib + doenvd "${T}"/73hamlib + + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/harfbuzz/Manifest b/media-libs/harfbuzz/Manifest index 347c5efdbb53..12a58a80d5cc 100644 --- a/media-libs/harfbuzz/Manifest +++ b/media-libs/harfbuzz/Manifest @@ -1,3 +1,2 @@ -DIST harfbuzz-10.0.1.tar.xz 17914712 BLAKE2B d1506658646a589c772d8efec1f40095ff8097f5d34c6498aa848027e71583c511d337ceea5005a4f5ce08f28c2d952fd3007383d701e957fb0c923edeba9466 SHA512 3fb7dda6e51496337698d46cebe623f678a4e5b0f006be6e1309143a82408a362c149812477e083e14811a5cba565d76eb2c0804f5e1bbea7e1bf83678176048 DIST harfbuzz-10.1.0.tar.xz 17922136 BLAKE2B 7d78e31d045b984d8d1a8b1d1f8f282ff9b7dc748ffd65355266266e75064b14eb94ec6b1418e208ebb0fffb99ef174d1978ab14f0c318c1112c2d8005285979 SHA512 14b0e8fd417af9c78f36e532e3737c163902b85837be1028a8fd569508639b87afeb56f70a2313ba2f0f6d4b72bb6cee0bf50fb333dfc503c713e4d9cd86e9c3 -DIST harfbuzz-9.0.0.tar.xz 17895360 BLAKE2B fd35c41d25e77c96b1fc760b8ca0ffd1ac8f3382b51991bb28797d55c2171bf0700ac65266996bf5cab82b8e9c835c2fad9c8374d9c60d2a361c924d805afbf6 SHA512 2700b560727d9c4440ad9c74a170b857f20f9e553e5d98b0c4bcf086a25ba644149d7c89009a41d964af7a924efcc486da4dcbfa5cc4d47f9f10e9b6b8c689af +DIST harfbuzz-10.2.0.tar.xz 17957608 BLAKE2B 6711eed94c4cbc7b4d37ec17c3bd4512110f873d0f179bc213773ad89af99cd349f92ea8ce957ddeb5084ad3719e2436cb712a880b02668954c69e0b1c3ceb98 SHA512 522028a5de91a042832b1634fc4b7636b1b42c5ee258882d155bc33fca7b30de19ca714b4f9ea8dc3d3f537142ca2305fcf5af04bec4edbf608f557c12742e54 diff --git a/media-libs/harfbuzz/harfbuzz-10.1.0.ebuild b/media-libs/harfbuzz/harfbuzz-10.1.0.ebuild index 7214ae683e59..771a0996c06b 100644 --- a/media-libs/harfbuzz/harfbuzz-10.1.0.ebuild +++ b/media-libs/harfbuzz/harfbuzz-10.1.0.ebuild @@ -8,14 +8,14 @@ PYTHON_COMPAT=( python3_{10..13} ) inherit flag-o-matic meson-multilib python-any-r1 xdg-utils DESCRIPTION="An OpenType text shaping engine" -HOMEPAGE="https://www.freedesktop.org/wiki/Software/HarfBuzz" +HOMEPAGE="https://harfbuzz.github.io/" if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/harfbuzz/harfbuzz.git" inherit git-r3 else SRC_URI="https://github.com/harfbuzz/harfbuzz/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="Old-MIT ISC icu" diff --git a/media-libs/harfbuzz/harfbuzz-10.0.1.ebuild b/media-libs/harfbuzz/harfbuzz-10.2.0.ebuild index 7214ae683e59..05db84d3684c 100644 --- a/media-libs/harfbuzz/harfbuzz-10.0.1.ebuild +++ b/media-libs/harfbuzz/harfbuzz-10.2.0.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 @@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{10..13} ) inherit flag-o-matic meson-multilib python-any-r1 xdg-utils DESCRIPTION="An OpenType text shaping engine" -HOMEPAGE="https://www.freedesktop.org/wiki/Software/HarfBuzz" +HOMEPAGE="https://harfbuzz.github.io/" if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/harfbuzz/harfbuzz.git" diff --git a/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild b/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild deleted file mode 100644 index 65c323f24324..000000000000 --- a/media-libs/harfbuzz/harfbuzz-9.0.0.ebuild +++ /dev/null @@ -1,89 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) - -inherit flag-o-matic meson-multilib 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/harfbuzz/harfbuzz/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="Old-MIT ISC icu" -# 0.9.18 introduced the harfbuzz-icu split; bug #472416 -# 3.0.0 dropped some unstable APIs; bug #813705 -# 6.0.0 changed libharfbuzz-subset.so ABI -SLOT="0/6.0.0" - -IUSE="+cairo debug doc experimental +glib +graphite icu +introspection test +truetype" -RESTRICT="!test? ( test )" -REQUIRED_USE="introspection? ( glib )" - -RDEPEND=" - cairo? ( x11-libs/cairo:=[${MULTILIB_USEDEP}] ) - 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}" -BDEPEND=" - ${PYTHON_DEPS} - virtual/pkgconfig - doc? ( dev-util/gtk-doc ) - introspection? ( dev-util/glib-utils ) -" - -src_prepare() { - default - - xdg_environment_reset - - # bug #790359 - filter-flags -fexceptions -fthreadsafe-statics - - if ! use debug ; then - append-cppflags -DHB_NDEBUG - fi -} - -multilib_src_configure() { - # harfbuzz-gobject only used for introspection, bug #535852 - local emesonargs=( - -Dcoretext=disabled - -Dchafa=disabled - -Dwasm=disabled - - $(meson_feature cairo) - $(meson_feature glib) - $(meson_feature graphite graphite2) - $(meson_feature icu) - $(meson_feature introspection gobject) - $(meson_feature test tests) - $(meson_feature truetype freetype) - - $(meson_native_use_feature doc docs) - $(meson_native_use_feature introspection) - # Breaks building tests.. - #$(meson_native_use_feature utilities) - - $(meson_use experimental experimental_api) - ) - - meson_src_configure -} - -multilib_src_test() { - # harfbuzz:src / check-static-inits times out on hppa - meson_src_test --timeout-multiplier 5 -} diff --git a/media-libs/harfbuzz/harfbuzz-9999.ebuild b/media-libs/harfbuzz/harfbuzz-9999.ebuild index 7214ae683e59..d5fe619aae87 100644 --- a/media-libs/harfbuzz/harfbuzz-9999.ebuild +++ b/media-libs/harfbuzz/harfbuzz-9999.ebuild @@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{10..13} ) inherit flag-o-matic meson-multilib python-any-r1 xdg-utils DESCRIPTION="An OpenType text shaping engine" -HOMEPAGE="https://www.freedesktop.org/wiki/Software/HarfBuzz" +HOMEPAGE="https://harfbuzz.github.io/" if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/harfbuzz/harfbuzz.git" diff --git a/media-libs/icc-profiles-openicc/icc-profiles-openicc-1.3.1.ebuild b/media-libs/icc-profiles-openicc/icc-profiles-openicc-1.3.1.ebuild index 2f0eabe1a3c2..23f8a11c5c29 100644 --- a/media-libs/icc-profiles-openicc/icc-profiles-openicc-1.3.1.ebuild +++ b/media-libs/icc-profiles-openicc/icc-profiles-openicc-1.3.1.ebuild @@ -11,5 +11,5 @@ SRC_URI="https://downloads.sourceforge.net/openicc/OpenICC-Profiles/${P}.tar.bz2 LICENSE="ZLIB" SLOT="0" -KEYWORDS="~amd64 ~ppc64 ~x86" +KEYWORDS="amd64 ~ppc64 x86" IUSE="" diff --git a/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch new file mode 100644 index 000000000000..17f59eab4da1 --- /dev/null +++ b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch @@ -0,0 +1,71 @@ +From a52d71d202f6e45cab766c83c16366ca5561a9f2 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Tue, 4 Feb 2025 15:43:28 +0000 +Subject: [PATCH] Fix C23 compatibility as best as we can + +The situation here is complicated. With C23, 'bool' is exposed properly +out of the box (as the same type as '_Bool'). But this is problematic +when it comes to C++ where 'bool' was always '_Bool' (or near-enough +guaranteed), and where we have existing C applications that we don't +want to break ABI for. + +For C++, id3tag was always using native C++ 'bool', so we don't want to change +that now when looking at C23 compat. This means the ABI issues between +C and C++ remain: typedef bool my_bool. + +For C, continue using the old 'int bool' that the project did before +C23. This doesn't solve the pre-existing C/C++ ABI issue here where +C++ always had "good _Bool-as-bool", unfortunately: typedef int my_bool. + +Bug: https://bugs.gentoo.org/949086 +Signed-off-by: Sam James <sam@gentoo.org> +--- + include/id3/globals.h | 25 ++++++++++++++++--------- + 1 file changed, 16 insertions(+), 9 deletions(-) + +diff --git a/include/id3/globals.h b/include/id3/globals.h +index 5d8fa20..69c02b4 100644 +--- a/include/id3/globals.h ++++ b/include/id3/globals.h +@@ -82,12 +82,19 @@ + + #define ID3_C_VAR extern + +-#ifndef __cplusplus +- +-typedef int bool; +-# define false (0) +-# define true (!false) +- ++#if __cplusplus ++/* id3tag was always using native C++ 'bool', so we don't want to change ++ that now when looking at C23 compat. This means the ABI issues between ++ C and C++ remain. */ ++#include <stdbool.h> ++typedef bool my_bool; ++#else ++/* For C, continue using the old 'int bool' that the project did before ++ C23. This doesn't solve the pre-existing C/C++ ABI issue here where ++ C++ always had "good _Bool-as-bool", unfortunately. */ ++typedef int my_bool; ++#define false (0) ++#define true (!false) + #endif /* __cplusplus */ + + ID3_C_VAR const char * const ID3LIB_NAME; +@@ -532,9 +539,9 @@ ID3_STRUCT(Mp3_Headerinfo) + uint32 framesize; + uint32 frames; // nr of frames + uint32 time; // nr of seconds in song +- bool privatebit; +- bool copyrighted; +- bool original; ++ my_bool privatebit; ++ my_bool copyrighted; ++ my_bool original; + }; + + #define ID3_NR_OF_V1_GENRES 148 +-- +2.48.1 + diff --git a/media-libs/id3lib/id3lib-3.8.3-r11.ebuild b/media-libs/id3lib/id3lib-3.8.3-r11.ebuild new file mode 100644 index 000000000000..b15873edd43b --- /dev/null +++ b/media-libs/id3lib/id3lib-3.8.3-r11.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Id3 library for C/C++" +HOMEPAGE="https://id3lib.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/${PN}/${P/_}.tar.gz" +S="${WORKDIR}/${P/_}" + +LICENSE="LGPL-2.1+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc static-libs" +RESTRICT="test" + +RDEPEND="sys-libs/zlib:=" +DEPEND="${RDEPEND}" +BDEPEND="doc? ( app-text/doxygen )" + +DOCS=( AUTHORS ChangeLog HISTORY README THANKS TODO ) + +PATCHES=( + "${FILESDIR}"/${P}-zlib.patch + "${FILESDIR}"/${P}-test_io.patch + "${FILESDIR}"/${P}-autoconf259.patch + "${FILESDIR}"/${P}-doxyinput.patch + "${FILESDIR}"/${P}-unicode16.patch + "${FILESDIR}"/${P}-gcc-4.3.patch + "${FILESDIR}"/${P}-missing_nullpointer_check.patch + "${FILESDIR}"/${P}-security.patch + "${FILESDIR}"/${P}-vbr-stack-smashing.patch # bug 398571 + "${FILESDIR}"/${P}-configure-clang.patch + "${FILESDIR}"/${P}-fix-c23.patch +) + +src_prepare() { + default + + sed -i 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' {.,zlib}/configure.in || die + + AT_M4DIR="${S}"/m4 eautoreconf +} + +src_configure() { + econf \ + --cache-file="${S}"/config.cache \ + $(use_enable static-libs static) +} + +src_compile() { + default + + if use doc; then + pushd doc >/dev/null || die + doxygen Doxyfile || die + popd >/dev/null || die + fi +} + +src_install() { + use doc && local HTML_DOCS=( doc/. ) + default + find "${D}" -name '*.la' -delete || die +} diff --git a/media-libs/jg/metadata.xml b/media-libs/jg/metadata.xml index 4525b8490bca..84d023d82aa3 100644 --- a/media-libs/jg/metadata.xml +++ b/media-libs/jg/metadata.xml @@ -18,6 +18,7 @@ </longdescription> <upstream> <bugs-to>https://gitlab.com/jgemu/jg/-/issues</bugs-to> + <changelog>https://gitlab.com/jgemu/jg/-/blob/master/ChangeLog</changelog> <remote-id type="gitlab">jgemu/jg</remote-id> </upstream> </pkgmetadata> diff --git a/media-libs/kquickimageeditor/Manifest b/media-libs/kquickimageeditor/Manifest index 7927ec30a654..7f43194d30bf 100644 --- a/media-libs/kquickimageeditor/Manifest +++ b/media-libs/kquickimageeditor/Manifest @@ -1 +1,2 @@ DIST kquickimageeditor-0.4.0.tar.xz 3294388 BLAKE2B 64214edc236871cbeef7cf8d11ba376a1752852a68d11dd46cfdee6dab2fcf0d3f319e825170aa7e01b506ff4b7e3972c120485d8da1bfd7b4e6ff4a38c57e66 SHA512 58ae6af9dc9c8fb0bd99279246acb360eee4110b8e2b1f51bbcb3daf246a60fcb308b111e164a40f1bff09c6f0c1298dfe1588d7bd0f2a571bda8ac9d6252e8c +DIST kquickimageeditor-0.5.0.tar.xz 3295008 BLAKE2B 69409326be9d4c6604faff7abe3533bdfce415da482170779952a3bbc4ea38e6dbbd3210a890ba7788391e15b1f272cb8026c6ec8009b9f32fa546eec32a5444 SHA512 d1ac919f075a7ade101b3fafa794387a88c50a7580dcd2221bec54ab18c5f9550ba1efcf12c4d2dce958bd3f8ac203021525790afa9adcb9f47375a6b7a648f9 diff --git a/media-libs/kquickimageeditor/kquickimageeditor-0.5.0.ebuild b/media-libs/kquickimageeditor/kquickimageeditor-0.5.0.ebuild new file mode 100644 index 000000000000..749a67df5f4d --- /dev/null +++ b/media-libs/kquickimageeditor/kquickimageeditor-0.5.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KFMIN=6.3.0 +QTMIN=6.6.2 +inherit ecm kde.org + +DESCRIPTION="QtQuick components providing basic image editing capabilities" +HOMEPAGE="https://invent.kde.org/libraries/kquickimageeditor +https://api.kde.org/kquickimageeditor/html/index.html" + +if [[ ${KDE_BUILD_TYPE} = release ]]; then + SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +fi + +LICENSE="LGPL-2.1+" +SLOT="6" + +DEPEND=" + >=dev-qt/qtbase-${QTMIN}:6[gui] + >=dev-qt/qtdeclarative-${QTMIN}:6 +" +RDEPEND="${DEPEND} + !${CATEGORY}/${PN}:5 + >=kde-frameworks/kirigami-${KFMIN}:6 +" diff --git a/media-libs/ksanecore-common/Manifest b/media-libs/ksanecore-common/Manifest index dbc13e54c7aa..0991e033472b 100644 --- a/media-libs/ksanecore-common/Manifest +++ b/media-libs/ksanecore-common/Manifest @@ -1,2 +1 @@ -DIST ksanecore-24.08.1.tar.xz 51164 BLAKE2B b4d9ecc8886b963efbbd5ed8dcca84cb7e0805726306ad942fbae9a73f1402e25851142893943b63c90e60c7d3b00542e0174fe9e07379146667d1383080cc8b SHA512 ebfccc54704438a9ec0fab2f8029c95745921438b63a8928a048f6f2cfcfea4c1f871fe7872331d8e9e7ac24a0a5e0df654b388430102f73027ee0afcf8ee002 DIST ksanecore-24.08.3.tar.xz 51184 BLAKE2B 285285ece94d8c55a81be2cb932c1e34b2154d04101a4501fb2cc69c310656529eee7e3d612ff12a240009a86d22d5738352dbad408d8a7871fc66c378083077 SHA512 808c220cf01ec9de1fc5e6cf55f873fe6f70f8ab231e59b7c048db5a5b7ecde542e3291798118d0e65b99c4b627e34beceef38948ba208e9dfb2c992e65a06f8 diff --git a/media-libs/ksanecore-common/ksanecore-common-24.08.1.ebuild b/media-libs/ksanecore-common/ksanecore-common-24.08.1.ebuild deleted file mode 100644 index d598909ef7f0..000000000000 --- a/media-libs/ksanecore-common/ksanecore-common-24.08.1.ebuild +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ECM_HANDBOOK="false" -KDE_ORG_NAME="${PN/-common/}" -KFMIN=5.115.0 -inherit ecm-common gear.kde.org - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86" - -RDEPEND=" - !<media-libs/ksanecore-23.08.5-r2:5 - !<media-libs/ksanecore-24.05.2-r1:6 -" diff --git a/media-libs/ksanecore-common/ksanecore-common-24.08.3.ebuild b/media-libs/ksanecore-common/ksanecore-common-24.08.3.ebuild index 83b9a8d84cba..d598909ef7f0 100644 --- a/media-libs/ksanecore-common/ksanecore-common-24.08.3.ebuild +++ b/media-libs/ksanecore-common/ksanecore-common-24.08.3.ebuild @@ -10,7 +10,7 @@ inherit ecm-common gear.kde.org LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv x86" +KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86" RDEPEND=" !<media-libs/ksanecore-23.08.5-r2:5 diff --git a/media-libs/ksanecore/Manifest b/media-libs/ksanecore/Manifest index dbc13e54c7aa..17d4ea31bbf2 100644 --- a/media-libs/ksanecore/Manifest +++ b/media-libs/ksanecore/Manifest @@ -1,2 +1,2 @@ -DIST ksanecore-24.08.1.tar.xz 51164 BLAKE2B b4d9ecc8886b963efbbd5ed8dcca84cb7e0805726306ad942fbae9a73f1402e25851142893943b63c90e60c7d3b00542e0174fe9e07379146667d1383080cc8b SHA512 ebfccc54704438a9ec0fab2f8029c95745921438b63a8928a048f6f2cfcfea4c1f871fe7872331d8e9e7ac24a0a5e0df654b388430102f73027ee0afcf8ee002 DIST ksanecore-24.08.3.tar.xz 51184 BLAKE2B 285285ece94d8c55a81be2cb932c1e34b2154d04101a4501fb2cc69c310656529eee7e3d612ff12a240009a86d22d5738352dbad408d8a7871fc66c378083077 SHA512 808c220cf01ec9de1fc5e6cf55f873fe6f70f8ab231e59b7c048db5a5b7ecde542e3291798118d0e65b99c4b627e34beceef38948ba208e9dfb2c992e65a06f8 +DIST ksanecore-24.12.2.tar.xz 54708 BLAKE2B b1dd67bef5e27b750ef8ede48344246f448b29c83d939a900aa3374ef527c3f0c91e5d961064851dd6dc5e20dcb4fd100376573f400f3ee3f309e6598b05a715 SHA512 eb4eb35840c5b167e4b66dbdeb9a951a59a3fcdc763ea754685666679d6ea1a74c56d35c4dac4b967763e3a79eaa91776c563fdcfd3b8fa3c752e2fba0858d4b diff --git a/media-libs/ksanecore/ksanecore-24.08.3.ebuild b/media-libs/ksanecore/ksanecore-24.08.3.ebuild index 625b222fc648..ed8e9ed31c12 100644 --- a/media-libs/ksanecore/ksanecore-24.08.3.ebuild +++ b/media-libs/ksanecore/ksanecore-24.08.3.ebuild @@ -13,7 +13,7 @@ https://api.kde.org/ksanecore/html/index.html" LICENSE="|| ( LGPL-2.1 LGPL-3 )" SLOT="6" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86" DEPEND=" >=dev-qt/qtbase-${QTMIN}:6[gui] diff --git a/media-libs/ksanecore/ksanecore-24.08.1.ebuild b/media-libs/ksanecore/ksanecore-24.12.2.ebuild index ed8e9ed31c12..954dfe302363 100644 --- a/media-libs/ksanecore/ksanecore-24.08.1.ebuild +++ b/media-libs/ksanecore/ksanecore-24.12.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -KFMIN=6.5.0 +KFMIN=6.7.0 QTMIN=6.7.2 inherit ecm gear.kde.org @@ -13,7 +13,7 @@ https://api.kde.org/ksanecore/html/index.html" LICENSE="|| ( LGPL-2.1 LGPL-3 )" SLOT="6" -KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" DEPEND=" >=dev-qt/qtbase-${QTMIN}:6[gui] @@ -21,10 +21,6 @@ DEPEND=" media-gfx/sane-backends " RDEPEND="${DEPEND} - >=media-libs/${PN}-common-${PV} + !<media-libs/ksanecore-23.08.5-r2:5 + !media-libs/ksanecore-common " - -src_prepare() { - ecm_src_prepare - ecm_punt_po_install -} diff --git a/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild b/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild index 79849082fcfa..0cc28565bb31 100644 --- a/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild +++ b/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} = *9999 ]] ; then else SRC_URI="https://github.com/ultravideo/kvazaar/archive/v${PV}.tar.gz -> ${P}.tar.gz test? ( https://github.com/silentbicycle/greatest/archive/v${GREATEST_PV}.tar.gz -> greatest-${GREATEST_PV}.tar.gz )" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86" fi inherit autotools multilib-minimal diff --git a/media-libs/lcms/Manifest b/media-libs/lcms/Manifest index 60d253d2191a..d78ddea35a4e 100644 --- a/media-libs/lcms/Manifest +++ b/media-libs/lcms/Manifest @@ -1,2 +1,3 @@ DIST lcms2-2.15.tar.gz 7548405 BLAKE2B 97ce1e87c8de17e7d0dd1b00e1b49cf4e3c6912c74ff16d5afb9979565ad830fd8b3f08f7535ae8b5e763fbd22d2a058c577536ddb7487b7aa8fb25d585f8c84 SHA512 ab038c369e66736e0dd3810fbac6cf5381bc3102c4dd693819367b1224f59d9e853ede081388464c0e7c213d92e6cddc48c23020953af10ad6c6802cfa17e213 DIST lcms2-2.16.tar.gz 7632822 BLAKE2B cf4d10908e6b8e6cf15ec8a99f0a299a9bcb7082f0df5ab1c9d84fcb739132855edf717c2ab746040fc09bace7afaaa8a39538e7ceabd0e68cdb3b4fb5627c6d SHA512 638dd6ad6787456c8145510d18b2d0727bd0a446a13ac2934aabc9531d1156eca2a2c0fd780a453823fbd35a1895f9d8de5dc4b3cab505459dd3f0535b4e837d +DIST lcms2-2.17.tar.gz 5245319 BLAKE2B 746b0bdff61cbb12f4b27b42a17136a64fd6c437a9f6e620e0a27ba24ebeac595635c3e79929ae4f425b98fba7df1ce1e4a05ebd8bc2e03d23c99cf246fb46e0 SHA512 81885c70fb26a9b7d37a398f43ccb0d1d3ab8f43de7da8f760b26d053a0d7e0543e7d3b0cdcaf9b3b681a1b88f032134c5a3c1a6774a9abc66a8a3f10ba64398 diff --git a/media-libs/lcms/lcms-2.17.ebuild b/media-libs/lcms/lcms-2.17.ebuild new file mode 100644 index 000000000000..2eb9b2b7d368 --- /dev/null +++ b/media-libs/lcms/lcms-2.17.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson-multilib + +DESCRIPTION="A lightweight, speed optimized color management engine" +HOMEPAGE="https://www.littlecms.com/" +SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV/_}/${PN}2-${PV/_}.tar.gz" +S="${WORKDIR}/lcms2-${PV/_}" + +# GPL-3 for the threaded & fastfloat plugins, see meson_options.txt +LICENSE="GPL-3 MIT" +SLOT="2" +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +IUSE="doc jpeg static-libs test tiff" +RESTRICT="!test? ( test )" + +RDEPEND=" + jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + tiff? ( >=media-libs/tiff-4.0.3-r6:=[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND}" + +multilib_src_configure() { + local emesonargs=( + -Ddefault_library=$(multilib_native_usex static-libs both shared) + -Dthreaded=true + -Dfastfloat=true + $(meson_feature jpeg) + $(meson_feature test tests) + $(meson_feature tiff) + $(meson_native_true utils) + ) + + meson_src_configure +} + +multilib_src_test() { + # fast_float_testbed on hppa -> 1458s from default timeout of 600, #913067 + meson_src_test --timeout-multiplier=3 +} + +multilib_src_install_all() { + use doc && dodoc doc/*.pdf +} diff --git a/media-libs/leptonica/leptonica-1.84.1-r2.ebuild b/media-libs/leptonica/leptonica-1.84.1-r2.ebuild index 3de09739be9f..1d72ab53ffd1 100644 --- a/media-libs/leptonica/leptonica-1.84.1-r2.ebuild +++ b/media-libs/leptonica/leptonica-1.84.1-r2.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/DanBloomberg/${PN}/releases/download/${PV}/${P}.tar. LICENSE="Apache-2.0" SLOT="0/6" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~ppc-macos" +KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86 ~ppc-macos" IUSE="gif jpeg jpeg2k png static-libs test tiff utils webp zlib" # N.B. Tests need some features enabled: REQUIRED_USE=" diff --git a/media-libs/lib3mf/Manifest b/media-libs/lib3mf/Manifest index be0a6fe8db35..637d297e7cfb 100644 --- a/media-libs/lib3mf/Manifest +++ b/media-libs/lib3mf/Manifest @@ -1 +1,2 @@ DIST lib3mf-2.2.0.tar.gz 16439833 BLAKE2B c98f57ea99f90625f2bfbdbcde9df8dbd8aeccc655e1bd9be165c24b2d9fb74471e4b01c816d8f665e5793db77c7bcf52016f030ec1947f908d6647e9ad12745 SHA512 2a9ee92312396b8966967a7ed696c58c69a77438f94432ad071659adc8c9d12fba34a3cf3d8c8d3ad3b26c12c9a89f4d8645e6f396987dc05b04952b004a1f07 +DIST lib3mf-2.3.2.tar.gz 35247937 BLAKE2B 8e20e44d715a2942dea8b3d08cb18593162bfd12b9f09b82b182e901f6beb76e2c88d83860c39cdd4e4c239e18f6949e9f9fd5921bc8a9d257975c54a8777e26 SHA512 875529759aff6128b32291d0719b95a75a72a3b19f98711b12c9b1076727b231668b3b14604e69bb1fec79b4725fd098f030b7e965072e566bfb061f3086279c diff --git a/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch b/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch new file mode 100644 index 000000000000..13df032b71fc --- /dev/null +++ b/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch @@ -0,0 +1,13 @@ +--- a/Source/Common/Platform/NMR_EncryptionHeader.cpp ++++ b/Source/Common/Platform/NMR_EncryptionHeader.cpp +@@ -8,6 +8,7 @@ + #include "Common/Platform/NMR_ExportStream.h" + + #include "Common/NMR_Architecture_Utils.h" ++#include <cstdint> + #include <cstring> + + #define LIB3MF_MAXENCRYPTIONHEADERSIZE (1UL << 31) +-- +2.47.1 + diff --git a/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch b/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch new file mode 100644 index 000000000000..0230335b87ec --- /dev/null +++ b/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch @@ -0,0 +1,30 @@ +From 057ae273bf223573b7cdb6ec978e051220ffe401 Mon Sep 17 00:00:00 2001 +From: Peter Levine <plevine457@gmail.com> +Date: Sat, 18 Feb 2023 13:21:29 -0500 +Subject: [PATCH] [Gentoo specific] remove optimization flags and C++ standard + flags + +Remove the lines in CMakeLists.txt that emit -std=c++11 (as wall as +emitting -O2) to enable the compiler default, which builds against +the latest GTest with both clang-16.0.0_pre20230107 and +gcc-12.2.1_p20230121-r1. + +Signed-off-by: Peter Levine <plevine457@gmail.com> +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -32,12 +32,10 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + # using GCC + add_definitions(-DBUILD_DLL) + add_compile_options(-Wall) +- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O2") + elseif ("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin") + # using GCC + add_definitions(-DBUILD_DLL) + add_compile_options(-Wall) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O2") + set(CMAKE_MACOSX_RPATH ON) + endif() + +-- +2.39.1 + diff --git a/media-libs/lib3mf/lib3mf-2.2.0.ebuild b/media-libs/lib3mf/lib3mf-2.2.0-r1.ebuild index d5d470010791..c980abe83fef 100644 --- a/media-libs/lib3mf/lib3mf-2.2.0.ebuild +++ b/media-libs/lib3mf/lib3mf-2.2.0-r1.ebuild @@ -39,6 +39,14 @@ PATCHES=( "${FILESDIR}"/${P}-include-cstdint.patch ) +src_prepare() { + cmake_src_prepare + + rm -r Include/Libraries/{libzip,zlib} || die + ln -s "${EPREFIX}/usr/include" Include/Libraries/zlib || die + ln -s "${EPREFIX}/usr/include" Include/Libraries/libzip || die +} + src_configure() { local mycmakeargs=( -DCMAKE_INSTALL_INCLUDEDIR="include/${PN}" diff --git a/media-libs/lib3mf/lib3mf-2.3.2.ebuild b/media-libs/lib3mf/lib3mf-2.3.2.ebuild new file mode 100644 index 000000000000..4cb044e73b86 --- /dev/null +++ b/media-libs/lib3mf/lib3mf-2.3.2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Implementation of the 3D Manufacturing Format file standard" +HOMEPAGE="https://3mf.io/ https://github.com/3MFConsortium/lib3mf" +SRC_URI="https://github.com/3MFConsortium/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/2" +KEYWORDS="amd64 ~arm64 ~ppc64 x86" +IUSE="+system-act test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/libzip:= + sys-apps/util-linux + sys-libs/zlib +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + test? ( + dev-cpp/gtest + dev-libs/openssl + dev-debug/valgrind + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.3.2-remove-std-and-opt-flags.patch + "${FILESDIR}"/${PN}-2.2.0-include-cstdint.patch + "${FILESDIR}"/${PN}-2.3.2-include-cstdint.patch +) + +src_prepare() { + cmake_src_prepare + + # DO NOT WANT! + rm -r Libraries/libressl || die +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_INCLUDEDIR="include/${PN}" + -DLIB3MF_TESTS=$(usex test) + -DUSE_INCLUDED_LIBZIP=OFF + -DUSE_INCLUDED_ZLIB=OFF + -DSTRIP_BINARIES=OFF + ) + + if use test; then + mycmakeargs+=( + # code says it uses libressl, but works with openssl too + -DUSE_INCLUDED_SSL=OFF + ) + fi + + cmake_src_configure +} + +src_install() { + cmake_src_install + + for suf in abi types implicit; do + dosym -r /usr/include/${PN}/Bindings/Cpp/${PN}_${suf}.hpp /usr/include/${PN}/${PN}_${suf}.hpp + done +} diff --git a/media-libs/libass/libass-0.17.1-r2.ebuild b/media-libs/libass/libass-0.17.1-r2.ebuild index eac26bff0857..559fa48be108 100644 --- a/media-libs/libass/libass-0.17.1-r2.ebuild +++ b/media-libs/libass/libass-0.17.1-r2.ebuild @@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( https://github.com/libass/libass/releases/download/${PV LICENSE="ISC" SLOT="0/9" # subslot = libass soname version -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" IUSE="+fontconfig libunibreak test" RESTRICT="!test? ( test )" diff --git a/media-libs/libcanberra-gtk3/libcanberra-gtk3-0.30.ebuild b/media-libs/libcanberra-gtk3/libcanberra-gtk3-0.30.ebuild index a8771a5d9054..e36909966861 100644 --- a/media-libs/libcanberra-gtk3/libcanberra-gtk3-0.30.ebuild +++ b/media-libs/libcanberra-gtk3/libcanberra-gtk3-0.30.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 @@ -14,7 +14,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2.1+" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" IUSE="gnome" COMMON_DEPEND=" diff --git a/media-libs/libcanberra/files/libcanberra-0.30-wayland.patch b/media-libs/libcanberra/files/libcanberra-0.30-wayland.patch deleted file mode 100644 index e51cfe00c0df..000000000000 --- a/media-libs/libcanberra/files/libcanberra-0.30-wayland.patch +++ /dev/null @@ -1,64 +0,0 @@ -From c0620e432650e81062c1967cc669829dbd29b310 Mon Sep 17 00:00:00 2001 -From: Michael Meeks <michael.meeks@suse.com> -Date: Fri, 09 Nov 2012 16:16:40 +0000 -Subject: gtk: Don't assume all GdkDisplays are GdkX11Displays: broadway/wayland - ---- -diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c -index 67791f0..c1532ab 100644 ---- a/src/canberra-gtk-module.c -+++ b/src/canberra-gtk-module.c -@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, -@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, -@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) { - gboolean ret = FALSE; - Atom xembed; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return FALSE; -+#endif -+ - /* Gnome Panel applets are XEMBED windows. We need to make sure we - * ignore them */ - -diff --git a/src/canberra-gtk.c b/src/canberra-gtk.c -index 34446f5..08cb668 100644 ---- a/src/canberra-gtk.c -+++ b/src/canberra-gtk.c -@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) { - guchar *data = NULL; - gint ret = -1; - -+#ifdef GDK_IS_X11_DISPLAY -+ if (!GDK_IS_X11_DISPLAY(d)) -+ return 0; -+#endif -+ - if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w), - gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type_return, --- -cgit v0.9.2 diff --git a/media-libs/libcanberra/files/libcanberra-gtk-module.sh b/media-libs/libcanberra/files/libcanberra-gtk-module.sh deleted file mode 100644 index 63c16af71861..000000000000 --- a/media-libs/libcanberra/files/libcanberra-gtk-module.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# to be sourced - -case "$SESSION" in - GNOME) - # Done by gnome-settings-daemon - ;; - *) - if [ -z "$GTK_MODULES" ] ; then - GTK_MODULES="canberra-gtk-module" - else - GTK_MODULES="$GTK_MODULES:canberra-gtk-module" - fi - export GTK_MODULES - ;; -esac diff --git a/media-libs/libcanberra/libcanberra-0.30-r7.ebuild b/media-libs/libcanberra/libcanberra-0.30-r7.ebuild deleted file mode 100644 index 9500c2604b9d..000000000000 --- a/media-libs/libcanberra/libcanberra-0.30-r7.ebuild +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit libtool multilib-minimal systemd - -DESCRIPTION="Portable sound event library" -HOMEPAGE="https://0pointer.de/lennart/projects/libcanberra/" -SRC_URI="https://0pointer.de/lennart/projects/${PN}/${P}.tar.xz" - -LICENSE="LGPL-2.1+" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="alsa gnome gstreamer gtk2 +gtk3 oss pulseaudio +sound tdb udev" - -DEPEND=" - dev-libs/libltdl:0[${MULTILIB_USEDEP}] - media-libs/libvorbis[${MULTILIB_USEDEP}] - alsa? ( - media-libs/alsa-lib:=[${MULTILIB_USEDEP}] - udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] ) ) - gstreamer? ( media-libs/gstreamer:1.0[${MULTILIB_USEDEP}] ) - gtk2? ( - >=dev-libs/glib-2.32:2[${MULTILIB_USEDEP}] - >=x11-libs/gtk+-2.20.0:2[${MULTILIB_USEDEP}] - x11-libs/libX11[${MULTILIB_USEDEP}] ) - gtk3? ( - >=dev-libs/glib-2.32:2[${MULTILIB_USEDEP}] - x11-libs/gtk+:3[X,${MULTILIB_USEDEP}] - x11-libs/libX11[${MULTILIB_USEDEP}] ) - pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] ) - tdb? ( sys-libs/tdb:=[${MULTILIB_USEDEP}] ) -" -RDEPEND="${DEPEND} - gnome? ( - gnome-base/dconf - gnome-base/gsettings-desktop-schemas ) - sound? ( x11-themes/sound-theme-freedesktop )" # Required for index.theme wrt #323379 -BDEPEND=" - app-arch/xz-utils - virtual/pkgconfig -" - -REQUIRED_USE="udev? ( alsa )" - -PATCHES=( - # gtk: Don't assume all GdkDisplays are GdkX11Displays: broadway/wayland (from 'master') - "${FILESDIR}/${PN}-0.30-wayland.patch" -) - -src_prepare() { - default - elibtoolize -} - -multilib_src_configure() { - ECONF_SOURCE="${S}" econf \ - --docdir="${EPREFIX}"/usr/share/doc/${PF} \ - $(use_enable alsa) \ - $(use_enable oss) \ - $(use_enable pulseaudio pulse) \ - $(use_enable gstreamer) \ - $(use_enable gtk2 gtk) \ - $(use_enable gtk3) \ - $(use_enable tdb) \ - $(use_enable udev) \ - --disable-lynx \ - --disable-gtk-doc \ - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" - - if multilib_is_native_abi; then - ln -s "${S}"/gtkdoc/html gtkdoc/html || die - fi -} - -multilib_src_install() { - # Disable parallel installation until bug #253862 is solved - emake DESTDIR="${D}" -j1 install -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die - - # This is needed for desktops different than GNOME, bug #520550 - exeinto /etc/X11/xinit/xinitrc.d - newexe "${FILESDIR}"/libcanberra-gtk-module.sh 40-libcanberra-gtk-module -} diff --git a/media-libs/libcanberra/libcanberra-0.30-r8.ebuild b/media-libs/libcanberra/libcanberra-0.30-r8.ebuild index 9e70735bd7e5..392d9e55c24d 100644 --- a/media-libs/libcanberra/libcanberra-0.30-r8.ebuild +++ b/media-libs/libcanberra/libcanberra-0.30-r8.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 @@ -11,7 +11,7 @@ SRC_URI="https://0pointer.de/lennart/projects/${PN}/${P}.tar.xz" LICENSE="LGPL-2.1+" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" IUSE="alsa gstreamer oss pulseaudio tdb udev" DEPEND=" diff --git a/media-libs/libcanberra/metadata.xml b/media-libs/libcanberra/metadata.xml index 854ff75b3c80..f3ff514df4e0 100644 --- a/media-libs/libcanberra/metadata.xml +++ b/media-libs/libcanberra/metadata.xml @@ -17,21 +17,10 @@ <flag name="alsa">Enables ALSA sound driver.</flag> <flag name="gstreamer">Enables gstreamer sound driver. Not useful when alsa or pulseaudio is available.</flag> - <flag name="gtk2">Enables building of gtk+ helper library, gtk+ runtime - sound effects and the canberra-gtk-play utility. To enable the gtk+ - sound effects add canberra-gtk-module to the colon separated list of - modules in the GTK_MODULES environment variable.</flag> - <flag name="gtk3">Enables building of gtk+3 helper library, gtk+3 - runtime sound effects and the canberra-gtk-play utility. To enable - the gtk+3 sound effects add canberra-gtk-module to the colon - separated list of modules in the GTK_MODULES environment - variable.</flag> <flag name="pulseaudio">Enables PulseAudio sound driver that should be able to support positional event sounds. This is the preferred choice for best sound events experience and picked by default if compiled in and possible to use at runtime.</flag> - <flag name="sound">Install <pkg>x11-themes/sound-theme-freedesktop</pkg> to get - sounds on Gnome and Xfce.</flag> <flag name="tdb">Enables Trivial Database support for caching purposes.</flag> </use> diff --git a/media-libs/libcdr/Manifest b/media-libs/libcdr/Manifest index 9a0875ed1917..28009ab8fa9b 100644 --- a/media-libs/libcdr/Manifest +++ b/media-libs/libcdr/Manifest @@ -1 +1,2 @@ DIST libcdr-0.1.7.tar.xz 618528 BLAKE2B 7e74b1936f80078f4b0a07e2e37f9d59489ad27acee66175032ba7250ab492310e4042c7b6d7995b1ffffee7da1c7562f5c2fc24457c3efe0b19fe7e00d8e42b SHA512 9af327fcf9f3f3ef1c446e92f4d2ff06ebaccb54d4c65b021960a212bf416f7098006324625f3e1c00500597eaa9da39832cc27b83a6cd593e97b76b1eb63d38 +DIST libcdr-0.1.8.tar.xz 625836 BLAKE2B e6f63b378e56f15cc194e9b5fb4ebedc3314cfe8179080b042fd84498343858710a5cc1e1e7c47937b6fe9de6f49310d0adc41e1d4b9c6260d6ec7eb49563cb6 SHA512 5dc25ca80817c5d166c89264fb727a723c3439abb8ec655047c2c15bff0a48b87e7c6e3d6b203296964060bf5c2a71a11bceffbbc2f5eb3f61a209bef071a57a diff --git a/media-libs/libcdr/libcdr-0.1.8.ebuild b/media-libs/libcdr/libcdr-0.1.8.ebuild new file mode 100644 index 000000000000..dc4381008e73 --- /dev/null +++ b/media-libs/libcdr/libcdr-0.1.8.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://anongit.freedesktop.org/git/libreoffice/libcdr.git" + inherit autotools git-r3 +else + SRC_URI="https://dev-www.libreoffice.org/src/libcdr/${P}.tar.xz" + KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86" +fi + +DESCRIPTION="Library parsing the Corel cdr documents" +HOMEPAGE="https://wiki.documentfoundation.org/DLP/Libraries/libcdr" + +LICENSE="MPL-2.0" +SLOT="0" +IUSE="doc test" + +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/icu-75:= + dev-libs/librevenge + media-libs/lcms:2 + sys-libs/zlib +" +DEPEND="${RDEPEND} + dev-libs/boost +" +BDEPEND=" + dev-build/libtool + virtual/pkgconfig + doc? ( app-text/doxygen ) + test? ( dev-util/cppunit ) +" + +src_prepare() { + default + [[ -d m4 ]] || mkdir "m4" + [[ ${PV} == *9999* ]] && eautoreconf +} + +src_configure() { + local myeconfargs=( + $(use_with doc docs) + $(use_enable test tests) + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} diff --git a/media-libs/libcdr/libcdr-9999.ebuild b/media-libs/libcdr/libcdr-9999.ebuild index c7af76ba83e5..c12b0b13e2e6 100644 --- a/media-libs/libcdr/libcdr-9999.ebuild +++ b/media-libs/libcdr/libcdr-9999.ebuild @@ -1,9 +1,9 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -if [[ ${PV} = 9999 ]]; then +if [[ ${PV} == *9999* ]]; then EGIT_REPO_URI="https://anongit.freedesktop.org/git/libreoffice/libcdr.git" inherit autotools git-r3 else @@ -21,7 +21,7 @@ IUSE="doc test" RESTRICT="!test? ( test )" RDEPEND=" - dev-libs/icu:= + >=dev-libs/icu-75:= dev-libs/librevenge media-libs/lcms:2 sys-libs/zlib @@ -39,12 +39,11 @@ BDEPEND=" src_prepare() { default [[ -d m4 ]] || mkdir "m4" - [[ ${PV} == 9999 ]] && eautoreconf + [[ ${PV} == *9999* ]] && eautoreconf } src_configure() { local myeconfargs=( - --disable-static $(use_with doc docs) $(use_enable test tests) ) diff --git a/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild b/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild index 42cc136a58ff..e401eba30b10 100644 --- a/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild +++ b/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.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 @@ -13,7 +13,7 @@ SRC_URI="https://gitlab.freedesktop.org/emersion/${PN}/-/releases/${PV}/download LICENSE="MIT" SLOT="0/2" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" BDEPEND=" ${PYTHON_DEPS} diff --git a/media-libs/libdv/Manifest b/media-libs/libdv/Manifest index 29ddb2bf12e9..7bea02791b2f 100644 --- a/media-libs/libdv/Manifest +++ b/media-libs/libdv/Manifest @@ -1,2 +1,3 @@ +DIST libdv-1.0.0-patches.tar.xz 11028 BLAKE2B ea9e69ed3dd59871ec6bcb3692f7fe4c08cee6489279e287648b3a938d3b2785a3c22fc5cac45c9dd732d222d4b7cd585fee144a68dc9cc9fdf08f72f832b344 SHA512 5f2a5b56cadd3544c9ac04b9755eb2d7404e2377ab2e4a383291fbd3a59aff1a99eba40e8098b64c8282ce2bc4c175f66a8dd28e0e73c33824355461164f210a DIST libdv-1.0.0-pic.patch.bz2 9771 BLAKE2B b8a597b5fb5facab05845dae1d08a84a17067804ef873b97b7f975a96c622a5cf3b2bbb17d3f5a364dd1aba1afbf3dbf2b18695f9ae8ccf3fcc478b3d7a17a4f SHA512 18fbc341f9a9349f2325c4cbdf2fcf60bf0b35e2efeaacb9a3e541ace4ab2ffcf64d18409b2d76fd40c6096a69ffd151c2bdc8c33411d1640f150202eef12021 DIST libdv-1.0.0.tar.gz 574565 BLAKE2B 42d17b07501fa508630afd1cdbaee9378f657a4ee4b77666f1a147ddfcf5a9d67d90e0a6da53bfe4f2b5418984579322565c9e8c76516e8193e75bd4751a731c SHA512 19887a6f452fa7da8924901ad841f5c4a434a3bde56c932ddb43717592aa744281e3a8ad220231e11d7e6bc3b0e704952a8324e5f85d4e088675edceeeca7dc8 diff --git a/media-libs/libdv/libdv-1.0.0-r4.ebuild b/media-libs/libdv/libdv-1.0.0-r5.ebuild index 657ba4a03421..65413cbfa123 100644 --- a/media-libs/libdv/libdv-1.0.0-r4.ebuild +++ b/media-libs/libdv/libdv-1.0.0-r5.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=7 @@ -32,12 +32,16 @@ src_prepare() { default eautoreconf + # bug #927212 + append-cflags -std=gnu89 + # bug #877709 + append-cflags -fno-strict-aliasing $(test-flags-CC -fno-aggressive-loop-optimizations) append-cppflags "-I${S}" } multilib_src_configure() { - # bug #622662 - tc-ld-disable-gold + # bug #622662, bug #910291 + tc-ld-force-bfd ECONF_SOURCE="${S}" econf \ --disable-static \ diff --git a/media-libs/libdv/libdv-1.0.0-r6.ebuild b/media-libs/libdv/libdv-1.0.0-r6.ebuild new file mode 100644 index 000000000000..b5d1ab4964ed --- /dev/null +++ b/media-libs/libdv/libdv-1.0.0-r6.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="Software codec for dv-format video (camcorders etc)" +HOMEPAGE="http://libdv.sourceforge.net/" +SRC_URI=" + https://downloads.sourceforge.net/${PN}/${P}.tar.gz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-1.0.0-patches.tar.xz +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + +RDEPEND="dev-libs/popt:=" +DEPEND=" + ${RDEPEND} + media-libs/libsdl +" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${WORKDIR}"/${PN}-1.0.0-patches/${PN}-0.99-2.6.patch + "${WORKDIR}"/${PN}-1.0.0-patches/${PN}-1.0.0-pic.patch + "${WORKDIR}"/${PN}-1.0.0-patches/${PN}-1.0.0-solaris.patch + "${WORKDIR}"/${PN}-1.0.0-patches/${PN}-1.0.0-darwin.patch + "${WORKDIR}"/${PN}-1.0.0-patches/${PN}-1.0.0-c99.patch +) + +src_prepare() { + default + eautoreconf + + # bug #877709 + append-cflags -fno-strict-aliasing $(test-flags-CC -fno-aggressive-loop-optimizations) + append-cppflags "-I${S}" +} + +multilib_src_configure() { + # bug #622662, bug #910291 + tc-ld-force-bfd + + local myeconfargs=( + --without-debug + --disable-gtk + $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + + if ! multilib_is_native_abi ; then + sed -i \ + -e 's/ encodedv//' \ + Makefile || die + fi +} + +multilib_src_install_all() { + einstalldocs + + # no static archives + find "${D}" -name '*.la' -delete || die +} diff --git a/media-libs/libexif/Manifest b/media-libs/libexif/Manifest index 3bed04290fc6..a684418e6bc5 100644 --- a/media-libs/libexif/Manifest +++ b/media-libs/libexif/Manifest @@ -1 +1,2 @@ DIST libexif-0.6.24.tar.bz2 1992163 BLAKE2B 75d3a2b4fefd7b7706226e70d31250ef7e99eeb81a4839ddc36cc9e3180534542d8a02851f8e6fd5034bbc925a616ead8c4bfb0cce8bc5886c3ec54811914a6b SHA512 35c9e7af2c3d44a638dc6bbe8f96962d41c0f3fe4a257494f7a73baefab9aba507477175289ccf9002a66cc16ca53d5d1f44d6fef9e014b27f687ecdc58f5111 +DIST libexif-0.6.25.tar.xz 1291276 BLAKE2B 8c9aa7d6b36b7d1a7f66ad9fa62ac4eb2f708f7df9917a6563230de7642e8ae961c41439f5948aece17942f167ada40d3850a63b7bbc5833bc647a12a27a6d46 SHA512 99fc1aa468968cbf2dd69a53ec451d3524b80fb01ad3abe4188d9c295b10812f531271655475bce681558745652a8c8b977e682f240e65e4f7e97992fdbfdcd2 diff --git a/media-libs/libexif/libexif-0.6.25.ebuild b/media-libs/libexif/libexif-0.6.25.ebuild new file mode 100644 index 000000000000..1d6d6c33cbea --- /dev/null +++ b/media-libs/libexif/libexif-0.6.25.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools multilib-minimal + +DESCRIPTION="Library for parsing, editing, and saving EXIF data" +HOMEPAGE="https://libexif.github.io/" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" + +LICENSE="LGPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc nls" + +RDEPEND="nls? ( virtual/libintl )" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/doxygen ) + nls? ( sys-devel/gettext )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.6.13-pkgconfig.patch +) + +QA_CONFIG_IMPL_DECL_SKIP=( + localtime_s # bug #898318 +) + +src_prepare() { + default + + # bug #390249 + sed -i -e '/FLAGS=/s:-g::' configure.ac || die + + # Previously elibtoolize for BSD + eautoreconf +} + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf \ + $(multilib_native_use_enable doc docs) \ + $(use_enable nls) \ + --with-doc-dir="${EPREFIX}"/usr/share/doc/${PF} +} + +multilib_src_install() { + emake DESTDIR="${D}" install +} + +multilib_src_install_all() { + find "${ED}" -name '*.la' -delete || die + + rm -f "${ED}"/usr/share/doc/${PF}/{ABOUT-NLS,COPYING} || die +} diff --git a/media-libs/libffado/Manifest b/media-libs/libffado/Manifest index 16bec4cb62b1..c328265b457d 100644 --- a/media-libs/libffado/Manifest +++ b/media-libs/libffado/Manifest @@ -1,2 +1 @@ -DIST libffado-2.4.8.tgz 1237955 BLAKE2B 14b83d55fc9a7b33c888b893c808f8419292fefaa2c2239b4b51c2b84070a584ea72821c8469bb8d965a9a5e6473b6fcfb5e85f4eecd2d424e3167322f8abb81 SHA512 fbbcd30640c55315f2e65fc6c07afc71a77dd2c9d1b6127ee55cd17e76511ad5f0563135e52397dbf113fb0d5925021a38780f231409bdd920da52e6c1ce3acc DIST libffado-2.4.9.tgz 1229651 BLAKE2B ec8300066d47d685aa701316efa6831f05d678c509de341d1b74551bf8a3f04b59dcd80d592e2111670212d4056bd1c150cc23dbf43a797a915bf65ae441c85e SHA512 0a0c61cf9339ab542c85eaefbe017b7613f716ae0ed08d11a37782dd7ef5815b18256c5d1b9240f077c9f59bbf4b4878019cefbd6cab78140477bcad6a9d3e44 diff --git a/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch b/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch deleted file mode 100644 index e16629c7a47e..000000000000 --- a/media-libs/libffado/files/libffado-2.4.7-fix-config-load-crash.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libffado-2.4.1-old/support/mixer-qt4/ffado/mixer/globalmixer.py -+++ libffado-2.4.1/support/mixer-qt4/ffado/mixer/globalmixer.py -@@ -96,7 +96,6 @@ class GlobalMixer(QWidget): - @pyqtSlot() - def on_txtNickname_returnPressed( self ): - if self.nickname.canChangeValue(): -- asciiData = self.txtNickname.text().toAscii() -- self.nickname.setText( asciiData.data() ) -+ self.nickname.setText( self.txtNickname.text().encode('utf-8') ) - else: - self.txtNickname.setText( self.nickname.text() ) diff --git a/media-libs/libffado/files/libffado-2.4.8-python3.12.patch b/media-libs/libffado/files/libffado-2.4.8-python3.12.patch deleted file mode 100644 index da5bdecc245d..000000000000 --- a/media-libs/libffado/files/libffado-2.4.8-python3.12.patch +++ /dev/null @@ -1,82 +0,0 @@ ---- libffado-2.4.8/SConstruct -+++ libffado-2.4.8-patched/SConstruct -@@ -977,7 +977,7 @@ else: - # Create a tags-file for easier emacs/vim-source-browsing - # I don't know if the dependency is right... - # --findcommand = "find . \( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" \) \! -path \"*.svn*\" \! -path \"./doc*\" \! -path \"./cache*\"" -+findcommand = "find . \\( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" \\) \\! -path \"*.svn*\" \\! -path \"./doc*\" \\! -path \"./cache*\"" - env.Command( "tags", "", findcommand + " |xargs ctags" ) - env.Command( "TAGS", "", findcommand + " |xargs etags" ) - env.AlwaysBuild( "tags", "TAGS" ) ---- libffado-2.4.8/admin/pyuic.py -+++ libffado-2.4.8-patched/admin/pyuic.py -@@ -21,7 +22,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - # - --import imp -+import importlib - - def pyuic_action( target, source, env ): - env.Execute( "pyuic " + str( source[0] ) + " > " + str( target[0] ) ) -@@ -32,11 +33,7 @@ def pyuic_string( target, source, env ): - - def PyQtCheck( context ): - context.Message( "Checking for pyuic (by checking for the python module pyqtconfig) " ) -- ret = True -- try: -- imp.find_module( "pyqtconfig" ) -- except ImportError: -- ret = False -+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None - context.Result( ret ) - return ret - ---- libffado-2.4.8/admin/pyuic4.py -+++ libffado-2.4.8-patched/admin/pyuic4.py -@@ -21,7 +22,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - # - --import imp -+import importlib - - def pyuic4_action( target, source, env ): - env.Execute( "pyuic4 " + str( source[0] ) + " > " + str( target[0] ) ) -@@ -32,11 +33,7 @@ def pyuic4_string( target, source, env ): - - def PyQt4Check( context ): - context.Message( "Checking for pyuic4 (by checking for the python module pyqtconfig) " ) -- ret = True -- try: -- imp.find_module( "pyqtconfig" ) -- except ImportError: -- ret = False -+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None - context.Result( ret ) - return ret - ---- libffado-2.4.8/admin/pyuic5.py -+++ libffado-2.4.8-patched/admin/pyuic5.py -@@ -22,7 +23,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - # - --import imp -+import importlib - - def pyuic5_action( target, source, env ): - env.Execute( "pyuic5 " + str( source[0] ) + " > " + str( target[0] ) ) -@@ -33,11 +34,7 @@ def pyuic5_string( target, source, env ): - - def PyQt5Check( context ): - context.Message( "Checking for pyuic5 (by checking for the python module pyqtconfig) " ) -- ret = True -- try: -- imp.find_module( "pyqtconfig" ) -- except ImportError: -- ret = False -+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None - context.Result( ret ) - return ret diff --git a/media-libs/libffado/libffado-2.4.8.ebuild b/media-libs/libffado/libffado-2.4.8.ebuild deleted file mode 100644 index 2bf41f8f6808..000000000000 --- a/media-libs/libffado/libffado-2.4.8.ebuild +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{9..12} ) - -inherit desktop python-single-r1 scons-utils toolchain-funcs udev multilib-minimal - -DESCRIPTION="Driver for IEEE1394 (Firewire) audio interfaces" -HOMEPAGE="http://www.ffado.org" - -if [[ "${PV}" = "9999" ]]; then - inherit subversion - ESVN_REPO_URI="http://subversion.ffado.org/ffado/trunk/${PN}" -else - SRC_URI="http://www.ffado.org/files/${P}.tgz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv x86" -fi - -S="${WORKDIR}/${P}/${PN}" -LICENSE="GPL-2 GPL-3" -SLOT="0" -IUSE="debug qt5 test-programs" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -BDEPEND=" - virtual/pkgconfig -" -CDEPEND="${PYTHON_DEPS} - dev-cpp/libxmlpp:2.6[${MULTILIB_USEDEP}] - >=dev-libs/dbus-c++-0.9.0-r5 - dev-libs/libconfig:=[cxx,${MULTILIB_USEDEP}] - media-libs/alsa-lib - media-libs/libiec61883[${MULTILIB_USEDEP}] - sys-apps/dbus - sys-libs/libavc1394[${MULTILIB_USEDEP}] - sys-libs/libraw1394[${MULTILIB_USEDEP}] - qt5? ( - $(python_gen_cond_dep ' - dev-python/dbus-python[${PYTHON_USEDEP}] - dev-python/PyQt5[dbus,${PYTHON_USEDEP}] - ') - x11-misc/xdg-utils - )" -DEPEND="${CDEPEND}" -RDEPEND="${CDEPEND}" - -PATCHES=( - "${FILESDIR}/libffado-2.4.7-fix-config-load-crash.patch" - "${FILESDIR}/libffado-2.4.8-python3.12.patch" -) - -myescons() { - local myesconsargs=( - PREFIX="${EPREFIX}/usr" - LIBDIR="${EPREFIX}/usr/$(get_libdir)" - MANDIR="${EPREFIX}/usr/share/man" - UDEVDIR="$(get_udevdir)/rules.d" - CUSTOM_ENV=true - DETECT_USERSPACE_ENV=false - DEBUG=$(usex debug) - PYPKGDIR="$(python_get_sitedir)" - # ENABLE_OPTIMIZATIONS detects cpu type and sets flags accordingly - # -fomit-frame-pointer is added also which can cripple debugging. - # we set flags from portage instead - ENABLE_OPTIMIZATIONS=false - # This only works for JACK1>=0.122.0 or JACK2>=1.9.9. - ENABLE_SETBUFFERSIZE_API_VER=force - ) - if multilib_is_native_abi; then - myesconsargs+=( - BUILD_MIXER=$(usex qt5 true false) - BUILD_TESTS=$(usex test-programs) - ) - else - myesconsargs+=( - BUILD_MIXER=false - BUILD_TESTS=false - ) - fi - escons "${myesconsargs[@]}" "${@}" -} - -src_prepare() { - default - - # Bug #808853 - cp "${BROOT}"/usr/share/gnuconfig/config.guess admin/ || die "Failed to update config.guess" - - # Always use Qt5 - sed -i -e 's/try:/if False:/' -e 's/except.*/else:/' support/mixer-qt4/ffado/import_pyqt.py || die - - # Bugs #658052, #659226 - sed -i -e 's/^CacheDir/#CacheDir/' SConstruct || die - - multilib_copy_sources -} - -multilib_src_compile() { - tc-export CC CXX - myescons -} - -multilib_src_install() { - myescons DESTDIR="${D}" WILL_DEAL_WITH_XDG_MYSELF="True" install -} - -multilib_src_install_all() { - einstalldocs - - python_fix_shebang "${D}" - python_optimize "${D}" - - if use qt5; then - newicon "support/xdg/hi64-apps-ffado.png" "ffado.png" - newmenu "support/xdg/ffado.org-ffadomixer.desktop" "ffado-mixer.desktop" - fi -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/media-libs/libffado/libffado-2.4.9.ebuild b/media-libs/libffado/libffado-2.4.9.ebuild index 47aacae4960b..0a2048db1c03 100644 --- a/media-libs/libffado/libffado-2.4.9.ebuild +++ b/media-libs/libffado/libffado-2.4.9.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{9..13} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit desktop python-single-r1 scons-utils toolchain-funcs udev multilib-minimal xdg @@ -15,7 +15,7 @@ if [[ "${PV}" = "9999" ]]; then ESVN_REPO_URI="http://subversion.ffado.org/ffado/trunk/${PN}" else SRC_URI="http://www.ffado.org/files/${P}.tgz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv x86" fi LICENSE="GPL-2 GPL-3" @@ -38,7 +38,7 @@ CDEPEND="${PYTHON_DEPS} qt5? ( $(python_gen_cond_dep ' dev-python/dbus-python[${PYTHON_USEDEP}] - dev-python/PyQt5[dbus,${PYTHON_USEDEP}] + dev-python/pyqt5[dbus,${PYTHON_USEDEP}] ') x11-misc/xdg-utils )" diff --git a/media-libs/libfishsound/files/libfishsound-1.0.0-oggz-interop.patch b/media-libs/libfishsound/files/libfishsound-1.0.0-oggz-interop.patch new file mode 100644 index 000000000000..2d9f6ebdeffa --- /dev/null +++ b/media-libs/libfishsound/files/libfishsound-1.0.0-oggz-interop.patch @@ -0,0 +1,102 @@ +Upstream commit https://gitlab.xiph.org/xiph/libfishsound/-/commit/e1ee9862e89b362ac49cf66f1485d91a75cffe9f +https://bugs.gentoo.org/929253 +From e1ee9862e89b362ac49cf66f1485d91a75cffe9f Mon Sep 17 00:00:00 2001 +From: Petter Reinholdtsen <pere@hungry.com> +Date: Sat, 8 Feb 2025 20:22:51 +0100 +Subject: [PATCH] Use correct oggz argument type in examples. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The examples using oggz must use oggz_package as the +second argument to read_package for the callback to be acceptable by +oggz_set_read_callback(). Adjust the method signature to use +oggz_package and extract the required ogg_package members from this +one to avoid compiler message like this: + +fishsound-identify.c: In function ‘main’: +fishsound-identify.c:101:37: warning: passing argument 3 of ‘oggz_set_read_callback’ from incompatible pointer type [-Wincompatible-pointer-types] + 101 | oggz_set_read_callback (oggz, -1, read_packet, NULL); + | ^~~~~~~~~~~ + | | + | int (*)(OGGZ *, ogg_packet *, long int, void *) {aka int (*)(void *, ogg_packet *, long int, void *)} +In file included from /usr/include/oggz/oggz.h:576, + from fishsound-identify.c:39: +/usr/include/oggz/oggz_read.h:109:44: note: expected ‘OggzReadPacket’ {aka ‘int (*)(void *, oggz_packet *, long int, void *)’} but argument is of type ‘int (*)(OGGZ *, ogg_packet *, long int, void *)’ {aka ‘int (*)(void *, ogg_packet *, long int, void *)’} + 109 | OggzReadPacket read_packet, void * user_data); + | ~~~~~~~~~~~~~~~^~~~~~~~~~~ + +Fixes #13 +--- + src/examples/fishsound-decenc.c | 3 ++- + src/examples/fishsound-decode.c | 3 ++- + src/examples/fishsound-identify.c | 4 ++-- + src/examples/fishsound-info.c | 3 ++- + 4 files changed, 8 insertions(+), 5 deletions(-) + +diff --git a/src/examples/fishsound-decenc.c b/src/examples/fishsound-decenc.c +index 96261ad..f9e8674 100644 +--- a/src/examples/fishsound-decenc.c ++++ b/src/examples/fishsound-decenc.c +@@ -129,9 +129,10 @@ decoded (FishSound * fsound, float ** pcm, long frames, void * user_data) + } + + static int +-read_packet (OGGZ * oggz, ogg_packet * op, long serialno, void * user_data) ++read_packet (OGGZ * oggz, oggz_packet * ozp, long serialno, void * user_data) + { + FS_DecEnc * ed = (FS_DecEnc *) user_data; ++ ogg_packet *op = &ozp->op; + + fish_sound_prepare_truncation (ed->decoder, op->granulepos, op->e_o_s); + fish_sound_decode (ed->decoder, op->packet, op->bytes); +diff --git a/src/examples/fishsound-decode.c b/src/examples/fishsound-decode.c +index d9c178d..9c61d0a 100644 +--- a/src/examples/fishsound-decode.c ++++ b/src/examples/fishsound-decode.c +@@ -82,9 +82,10 @@ decoded_float (FishSound * fsound, float ** pcm, long frames, void * user_data) + } + + static int +-read_packet (OGGZ * oggz, ogg_packet * op, long serialno, void * user_data) ++read_packet (OGGZ * oggz, oggz_packet * ozp, long serialno, void * user_data) + { + FishSound * fsound = (FishSound *)user_data; ++ ogg_packet *op = &ozp->op; + + /* If we have not yet selected an audio track to decode, then try + * to identify this one. If it is a known audio codec, then remember its +diff --git a/src/examples/fishsound-identify.c b/src/examples/fishsound-identify.c +index c5ff943..5a89e34 100644 +--- a/src/examples/fishsound-identify.c ++++ b/src/examples/fishsound-identify.c +@@ -60,9 +60,9 @@ dump_identity (unsigned char * buf, long bytes) + } + + static int +-read_packet (OGGZ * oggz, ogg_packet * op, long serialno, void * user_data) ++read_packet (OGGZ * oggz, oggz_packet * ozp, long serialno, void * user_data) + { +- ++ ogg_packet *op = &ozp->op; + if (op->bytes < 8) { + printf ("too short\n"); + } else { +diff --git a/src/examples/fishsound-info.c b/src/examples/fishsound-info.c +index 65138a1..d119d33 100644 +--- a/src/examples/fishsound-info.c ++++ b/src/examples/fishsound-info.c +@@ -76,8 +76,9 @@ decoded (FishSound * fsound, float ** pcm, long frames, void * user_data) + } + + static int +-read_packet (OGGZ * oggz, ogg_packet * op, long serialno, void * user_data) ++read_packet (OGGZ * oggz, oggz_packet * ozp, long serialno, void * user_data) + { ++ ogg_packet *op = &ozp->op; + FishSound * fsound = (FishSound *)user_data; + + if (op->e_o_s) { +-- +GitLab + diff --git a/media-libs/libfishsound/libfishsound-1.0.0-r1.ebuild b/media-libs/libfishsound/libfishsound-1.0.0-r1.ebuild deleted file mode 100644 index ab35ecbfcc2e..000000000000 --- a/media-libs/libfishsound/libfishsound-1.0.0-r1.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Simple programming interface to decode and encode audio with vorbis or speex" -HOMEPAGE="https://www.xiph.org/fishsound/" -SRC_URI="https://downloads.xiph.org/releases/libfishsound/${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="flac speex" - -RDEPEND=" - media-libs/libogg - media-libs/libvorbis - flac? ( media-libs/flac:= ) - speex? ( media-libs/speex )" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -# bug #395153 -RESTRICT="test" - -PATCHES=( "${FILESDIR}"/${P}-pc.patch ) - -src_prepare() { - default - sed -i \ - -e 's:doxygen:doxygen-dummy:' \ - configure || die -} - -src_configure() { - local myconf="--disable-static" - use flac || myconf="${myconf} --disable-flac" - use speex || myconf="${myconf} --disable-speex" - - econf ${myconf} -} - -src_install() { - emake DESTDIR="${D}" \ - docdir="${D}/usr/share/doc/${PF}" install - dodoc AUTHORS ChangeLog README - find "${ED}" -name '*.la' -delete || die -} diff --git a/media-libs/libfishsound/libfishsound-1.0.0-r2.ebuild b/media-libs/libfishsound/libfishsound-1.0.0-r3.ebuild index 174d912e442b..18d959853c9e 100644 --- a/media-libs/libfishsound/libfishsound-1.0.0-r2.ebuild +++ b/media-libs/libfishsound/libfishsound-1.0.0-r3.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 @@ -9,7 +9,7 @@ SRC_URI="https://downloads.xiph.org/releases/libfishsound/${P}.tar.gz" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="flac speex" RDEPEND=" @@ -27,6 +27,7 @@ RESTRICT="test" PATCHES=( "${FILESDIR}"/${P}-pc.patch "${FILESDIR}"/${PN}-1.0.0-c99.patch + "${FILESDIR}"/${PN}-1.0.0-oggz-interop.patch ) src_prepare() { diff --git a/media-libs/libggigcp/libggigcp-1.0.2-r2.ebuild b/media-libs/libggigcp/libggigcp-1.0.2-r2.ebuild new file mode 100644 index 000000000000..4b5846cf0fec --- /dev/null +++ b/media-libs/libggigcp/libggigcp-1.0.2-r2.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Libggi extension for advanced color and palette handling" +HOMEPAGE="https://ibiblio.org/ggicore/packages/libggigcp.html" +SRC_URI="https://downloads.sourceforge.net/ggi/${P}.src.tar.bz2" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=media-libs/libggi-2.2.2" +DEPEND="${RDEPEND}" + +DOCS=( ChangeLog README doc/TODO doc/libggigcp{,-functions,-libraries,-structures}.txt + doc/colors{,2}.faq ) + +src_prepare() { + default + + rm -f acinclude.m4 || die + eautoreconf +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} diff --git a/media-libs/libggimisc/libggimisc-2.2.2-r2.ebuild b/media-libs/libggimisc/libggimisc-2.2.2-r2.ebuild new file mode 100644 index 000000000000..61fa468d3272 --- /dev/null +++ b/media-libs/libggimisc/libggimisc-2.2.2-r2.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Adds support for some special graphical target features" +HOMEPAGE="https://ibiblio.org/ggicore/packages/libggimisc.html" +SRC_URI="https://downloads.sourceforge.net/ggi/${P}.src.tar.bz2" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="fbcon svga" + +RDEPEND=">=media-libs/libggi-2.2.2 + svga? ( media-libs/svgalib )" +DEPEND="${RDEPEND}" + +DOCS=( ChangeLog README TODO doc/ggimisc.txt doc/libggimisc{,-functions,-libraries}.txt + doc/retrace.txt ) + +src_prepare() { + default + + rm -f acinclude.m4 || die + eautoreconf +} + +src_configure() { + econf --disable-x --without-x \ + $(use_enable svga svgalib) \ + $(use_enable fbcon fbdev) +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + elog "X extension for ${PN} has been temporarily disabled for this release." +} diff --git a/media-libs/libggiwmh/libggiwmh-0.3.2-r2.ebuild b/media-libs/libggiwmh/libggiwmh-0.3.2-r2.ebuild new file mode 100644 index 000000000000..2aa255028000 --- /dev/null +++ b/media-libs/libggiwmh/libggiwmh-0.3.2-r2.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Window manager hints extensions for libggi" +HOMEPAGE="https://ibiblio.org/ggicore/packages/libggiwmh.html" +SRC_URI="https://downloads.sourceforge.net/ggi/${P}.src.tar.bz2" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="X" + +RDEPEND=">=media-libs/libggi-2.2.2 + X? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXxf86dga + x11-libs/libXxf86vm + )" +DEPEND="${RDEPEND}" + +DOCS=( ChangeLog README doc/libggiwmh{,-functions,-libraries}.txt ) + +src_prepare() { + default + + # https://bugs.gentoo.org/899822 + rm acinclude.m4 || die #it's not regenerated and breaks libggi check + eautoreconf +} + +src_configure() { + econf \ + $(use_enable X x) \ + $(use_with X x) +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} diff --git a/media-libs/libgphoto2/files/libgphoto2-2.5.31-remove-gpi_gphoto_port_type_map.patch b/media-libs/libgphoto2/files/libgphoto2-2.5.31-remove-gpi_gphoto_port_type_map.patch new file mode 100644 index 000000000000..d5f2068abff4 --- /dev/null +++ b/media-libs/libgphoto2/files/libgphoto2-2.5.31-remove-gpi_gphoto_port_type_map.patch @@ -0,0 +1,31 @@ +https://github.com/gphoto/libgphoto2/commit/8ddcae4ed2bd052318b0849617e22bf92a98dd17 +https://github.com/gphoto/libgphoto2/commit/3cf7a1d04dcffa52907026c4c2d35ee8273f3147 +From: Matt Jolly <kangie@gentoo.org> +Date: Mon, 25 Nov 2024 15:50:22 +1000 +Subject: [PATCH] consolidate removal of `gpi_gphoto_port_type_map` + +This was several upstream commits + +--- a/libgphoto2_port/gphoto2/gphoto2-port-info-list.h ++++ b/libgphoto2_port/gphoto2/gphoto2-port-info-list.h +@@ -62,7 +62,6 @@ extern "C" { + + #ifdef _GPHOTO2_INTERNAL_CODE + #include <gphoto2/gphoto2-port-log.h> +-extern const StringFlagItem gpi_gphoto_port_type_map[]; + #endif + + int gp_port_info_new (GPPortInfo *info); +--- a/libgphoto2_port/libgphoto2_port/libgphoto2_port.ver ++++ b/libgphoto2_port/libgphoto2_port/libgphoto2_port.ver +@@ -71,7 +71,6 @@ LIBGPHOTO2_5_0 { + + # These are only supposed to be used by libgphoto2 internally. + LIBGPHOTO2_INTERNAL { +- gpi_gphoto_port_type_map; + gpi_enum_to_string; + gpi_string_to_enum; + gpi_string_to_flag; +-- +2.47.0 + diff --git a/media-libs/libgphoto2/libgphoto2-2.5.31-r2.ebuild b/media-libs/libgphoto2/libgphoto2-2.5.31-r2.ebuild index afb3be44733a..cfaa872eaf3b 100644 --- a/media-libs/libgphoto2/libgphoto2-2.5.31-r2.ebuild +++ b/media-libs/libgphoto2/libgphoto2-2.5.31-r2.ebuild @@ -77,7 +77,8 @@ MULTILIB_CHOST_TOOLS=( ) PATCHES=( - "${FILESDIR}"/${PN}-2.5.31-c99.patch + "${FILESDIR}"/${P}-c99.patch + "${FILESDIR}"/${P}-remove-gpi_gphoto_port_type_map.patch ) src_prepare() { diff --git a/media-libs/libgpod/files/libgpod-0.8.3-pixbuf.patch b/media-libs/libgpod/files/libgpod-0.8.3-pixbuf.patch new file mode 100644 index 000000000000..2d312c9f997e --- /dev/null +++ b/media-libs/libgpod/files/libgpod-0.8.3-pixbuf.patch @@ -0,0 +1,25 @@ +https://bugs.gentoo.org/919219 +https://src.fedoraproject.org/rpms/libgpod/blob/rawhide/f/pointer-types.patch +--- a/src/ithumb-writer.c ++++ b/src/ithumb-writer.c +@@ -968,7 +968,7 @@ + else if (thumb->data_type == ITDB_THUMB_TYPE_PIXBUF) + { + Itdb_Thumb_Pixbuf *thumb_pixbuf = (Itdb_Thumb_Pixbuf *)thumb; +- pixbuf = g_object_ref (G_OBJECT (thumb_pixbuf->pixbuf)); ++ pixbuf = (GdkPixbuf *)(g_object_ref (G_OBJECT (thumb_pixbuf->pixbuf))); + } + + if (pixbuf == NULL) +--- a/src/ithumb-writer.c ++++ b/src/ithumb-writer.c +@@ -728,7 +728,7 @@ + { + return gdk_pixbuf_rotate_simple (pixbuf, *rotation); + } +- return g_object_ref (G_OBJECT (pixbuf)); ++ return (GdkPixbuf *)(g_object_ref (G_OBJECT (pixbuf))); + } + + /* On the iPhone, thumbnails are presented as squares in a grid. + diff --git a/media-libs/libgpod/libgpod-0.8.3-r6.ebuild b/media-libs/libgpod/libgpod-0.8.3-r6.ebuild deleted file mode 100644 index 60496e6dc603..000000000000 --- a/media-libs/libgpod/libgpod-0.8.3-r6.ebuild +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools udev - -DESCRIPTION="Shared library to access the contents of an iPod" -HOMEPAGE="http://www.gtkpod.org/libgpod/" -SRC_URI="https://downloads.sourceforge.net/gtkpod/${P}.tar.bz2" - -LICENSE="LGPL-2" -SLOT="0" -KEYWORDS="amd64 ppc ~riscv x86" -IUSE="+gtk ios +udev" - -RDEPEND=" - >=app-pda/libplist-1.0:= - >=dev-db/sqlite-3:3 - >=dev-libs/glib-2.16:2 - dev-libs/libxml2:2 - sys-apps/sg3_utils:0= - gtk? ( x11-libs/gdk-pixbuf:2 ) - ios? ( app-pda/libimobiledevice:= ) - udev? ( virtual/udev ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - dev-libs/libxslt - dev-util/intltool - dev-build/gtk-doc-am - sys-devel/gettext - virtual/pkgconfig -" - -DOCS=( AUTHORS NEWS README{,.overview,.sqlite,.SysInfo} TROUBLESHOOTING ) - -PATCHES=( - "${FILESDIR}"/${P}-comment.patch # bug 537968 - "${FILESDIR}"/${P}-segfault.patch # bug 565052 - "${FILESDIR}"/${P}-pkgconfig_overlinking.patch - "${FILESDIR}"/${P}-implicit-int.patch -) - -src_prepare() { - default - eautoreconf -} - -src_configure() { - local myeconfargs=( - --disable-pygobject - --disable-static - --without-hal - --without-mono - --without-python - --with-udev-dir="$(get_udevdir)" - $(use_enable gtk gdk-pixbuf) - $(use_with ios libimobiledevice) - $(use_enable udev) - ) - econf "${myeconfargs[@]}" -} - -src_install() { - default - rm "${ED}"/usr/$(get_libdir)/pkgconfig/libgpod-sharp.pc || die - use udev && rmdir "${ED}"/tmp || die - find "${ED}" -name '*.la' -type f -delete || die -} - -pkg_postinst() { - use udev && udev_reload -} - -pkg_postrm() { - use udev && udev_reload -} diff --git a/media-libs/libgpod/libgpod-0.8.3-r7.ebuild b/media-libs/libgpod/libgpod-0.8.3-r8.ebuild index e04326a20141..a2a97c747088 100644 --- a/media-libs/libgpod/libgpod-0.8.3-r7.ebuild +++ b/media-libs/libgpod/libgpod-0.8.3-r8.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/gtkpod/${P}.tar.bz2" LICENSE="LGPL-2" SLOT="0" -KEYWORDS="~amd64 ~ppc ~riscv ~x86" +KEYWORDS="amd64 ppc ~riscv x86" IUSE="+gtk ios +udev" RDEPEND=" @@ -41,6 +41,7 @@ PATCHES=( "${FILESDIR}"/${P}-pkgconfig_overlinking.patch "${FILESDIR}"/${P}-implicit-int.patch "${FILESDIR}"/${P}-plist-2.3.patch + "${FILESDIR}"/${P}-pixbuf.patch ) src_prepare() { diff --git a/media-libs/libheif/files/libheif-1.18.1-prepend_DESTDIR_when_generating_heif-convert_symlink.patch b/media-libs/libheif/files/libheif-1.18.1-prepend_DESTDIR_when_generating_heif-convert_symlink.patch deleted file mode 100644 index aee9049751aa..000000000000 --- a/media-libs/libheif/files/libheif-1.18.1-prepend_DESTDIR_when_generating_heif-convert_symlink.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 337aa421f68c0274eb0db047646160b05fdde4a0 Mon Sep 17 00:00:00 2001 -From: Dirk Farin <dirk.farin@gmail.com> -Date: Wed, 24 Jul 2024 16:11:43 +0200 -Subject: [PATCH] fix installing heif-convert symlink in DESTDIR (#1249) - ---- - examples/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt -index 8ac3114370..fc9d2f2ca0 100644 ---- a/examples/CMakeLists.txt -+++ b/examples/CMakeLists.txt -@@ -34,7 +34,7 @@ install(FILES heif-dec.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1) - - # create symbolic link from the old name `heif-convert` to `heif-dec` - if(NOT WIN32) -- install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/heif-dec${CMAKE_EXECUTABLE_SUFFIX} ${DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/heif-convert${CMAKE_EXECUTABLE_SUFFIX})") -+ install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink heif-dec${CMAKE_EXECUTABLE_SUFFIX} \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/heif-convert${CMAKE_EXECUTABLE_SUFFIX})") - else() - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/heif-dec${CMAKE_EXECUTABLE_SUFFIX} ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/heif-convert${CMAKE_EXECUTABLE_SUFFIX})") - endif() diff --git a/media-libs/libheif/libheif-9999.ebuild b/media-libs/libheif/libheif-9999.ebuild index 0ee4f90982c5..e55830a930cc 100644 --- a/media-libs/libheif/libheif-9999.ebuild +++ b/media-libs/libheif/libheif-9999.ebuild @@ -45,9 +45,6 @@ DEPEND=" " RDEPEND="${DEPEND}" -# https://github.com/strukturag/libheif/issues/1249 -PATCHES=( "${FILESDIR}"/${P}-prepend_DESTDIR_when_generating_heif-convert_symlink.patch ) - MULTILIB_WRAPPED_HEADERS=( /usr/include/libheif/heif_version.h ) diff --git a/media-libs/libifp/files/libifp-1.0.0.2-c23.patch b/media-libs/libifp/files/libifp-1.0.0.2-c23.patch new file mode 100644 index 000000000000..c185aa362311 --- /dev/null +++ b/media-libs/libifp/files/libifp-1.0.0.2-c23.patch @@ -0,0 +1,25 @@ +Fix incompatible function pointer types +https://bugs.gentoo.org/880943 +--- a/src/ifp_os_libusb.c 2025-02-13 17:01:02.998513717 +0400 ++++ b/src/ifp_os_libusb.c 2025-02-13 17:06:29.903489348 +0400 +@@ -20,8 +20,8 @@ + char * ob, int max_o, const char * ib, int max_i) + { + int i=0, e=0; +- char const * ibb = (char const *)ib; ++ char * ibb = (char *) ib; //strip const qualifier for iconv + char * obb = (char *)ob; + size_t i_n = max_i; + size_t o_n = max_o; + iconv_t ICONV; +--- a/src/userfile.c 2025-02-13 17:01:02.998513717 +0400 ++++ b/src/userfile.c 2025-02-13 17:03:31.117230875 +0400 +@@ -947,7 +947,7 @@ + return i; + } + +-int file_compare_fts(const FTSENT * const*p1, const FTSENT * const*p2) ++int file_compare_fts(const FTSENT const **p1, const FTSENT const **p2) + { + if (p1 == NULL) { ifp_err("p1 shouldn't be NULL"); return 0; } + if (p2 == NULL) { ifp_err("p2 shouldn't be NULL"); return 0; } diff --git a/media-libs/libifp/files/libifp-1.0.0.2-configure.patch b/media-libs/libifp/files/libifp-1.0.0.2-configure.patch new file mode 100644 index 000000000000..76961f4a76f3 --- /dev/null +++ b/media-libs/libifp/files/libifp-1.0.0.2-configure.patch @@ -0,0 +1,50 @@ +Fix implicit declaration to autoconf. +Introduce dependency on pkgconf to deal with hardcoded paths in CFLAGS +https://bugs.gentoo.org/899824 +--- a/configure.in ++++ b/configure.ac +@@ -1,9 +1,9 @@ +-AC_INIT(configure.in) ++AC_INIT ++AC_CONFIG_SRCDIR([configure.ac]) + + #The automake documentation says this is a no-no, but I don't understand + #what the alternative is. + #Commented out until I can find out what the portable alternative is. +-CFLAGS="-g -O2 -Wall -W -Wno-unused-parameter" + ##CFLAGS="-g -O2 -Wall -W" + + AM_INIT_AUTOMAKE(libifp, 1.0.0.2) +@@ -12,6 +12,7 @@ + AC_PROG_LIBTOOL + AC_C_BIGENDIAN + AC_SUBST(LIBTOOL_DEPS) ++PKG_PROG_PKG_CONFIG + + dnl AC_DEFINE(IFP_AUTOCONF) + +@@ -22,10 +23,14 @@ + AC_MSG_CHECKING([libusb]) + AC_ARG_WITH(libusb, + AC_HELP_STRING([--with-libusb=PATH],[libusb path (default /usr)]), +- ac_libusb=$enableval, ac_libusb=no) ++ ac_libusb=$withval, ac_libusb=no) + if test "x${ac_libusb}" != "xno" ; then + case ${with_libusb} in + "" | "yes" | "YES") ++ PKG_CHECK_MODULES([LIBUSB],[libusb],,[AC_MSG_ERROR([Cannot detect libusb])]) ++ CFLAGS+=" $LIBUSB_CFLAGS" ++ CPPFLAGS+=" $LIBUSB_CFLAGS" ++ LDFLAGS+=" $LIBUSB_LDFLAGS" + ;; + "no" | "NO") + use_libusb=false +@@ -93,7 +98,7 @@ + AC_MSG_CHECKING([kernel source code]) + AC_ARG_WITH(kmodule, + AC_HELP_STRING([--with-kmodule=to/kernel/src], [build as linux kernel module [[default=no]]]), +- ac_kmodule=$enableval, ac_kmodule=no) ++ ac_kmodule=$withval, ac_kmodule=no) + if test "x$ac_kmodule" != "xno" ; then + #echo "enableval is $enableval, with_kmodule is $with_kmodule" + if test "x$with_kmodule" = "xyes" ; then diff --git a/media-libs/libifp/libifp-1.0.0.2-r2.ebuild b/media-libs/libifp/libifp-1.0.0.2-r2.ebuild new file mode 100644 index 000000000000..5cc5bc19b307 --- /dev/null +++ b/media-libs/libifp/libifp-1.0.0.2-r2.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +DESCRIPTION="General-purpose library for iRiver's iFP portable audio players" +HOMEPAGE="https://ifp-driver.sourceforge.net/libifp/" +SRC_URI="https://downloads.sourceforge.net/ifp-driver/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86" +IUSE="doc examples static-libs" + +RDEPEND="virtual/libusb:0" +DEPEND="${RDEPEND} + doc? ( >=app-text/doxygen-1.3.7 ) + elibc_musl? ( sys-libs/fts-standalone:= )" +BDEPEND="${DEPEND} + virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}/${P}-configure.patch" + "${FILESDIR}/${P}-c23.patch" +) + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + use doc || export have_doxygen=no + use elibc_musl && append-ldflags -lfts # 713650 + econf \ + $(use_enable static-libs static) \ + $(use_enable examples) \ + --with-libusb \ + --without-kmodule +} + +src_test() { :; } # hardware dependant wrt #318597 + +src_install() { + emake DESTDIR="${D}" install + + find "${D}" -name '*.la' -exec rm -f {} + || die + + # clean /usr/bin after installation + # by moving examples to examples dir + if use examples; then + insinto /usr/share/${PN}/examples + doins "${S}"/examples/simple.c "${S}"/examples/ifpline.c + mv "${D}"/usr/bin/{simple,ifpline} "${D}"/usr/share/${PN}/examples || die + else + rm -f "${D}"/usr/bin/{simple,ifpline} || die + fi + + use doc && dodoc README ChangeLog TODO +} diff --git a/media-libs/libjpeg-turbo/Manifest b/media-libs/libjpeg-turbo/Manifest index 6c740f8fed21..18a9aa384e9a 100644 --- a/media-libs/libjpeg-turbo/Manifest +++ b/media-libs/libjpeg-turbo/Manifest @@ -1,4 +1,5 @@ DIST libjpeg-turbo-2.1.5.1.tar.gz 2264936 BLAKE2B 9583a0a91e45347d651de6bf5192a23bfe4e64cef67cdbb18f5b578b424fc46fc114e5649e93a467906cf047948e43a11b6d17b48c47f879c51cff1a4ef356ff SHA512 86a7248d064043b26b09755633ef4872a2a6133c9e677a9fe4be6645b2e0fde102cf01e09119967b3b6b85f4cb93f3f7c49ec4973944d5eff99b5b90ce8b0be6 DIST libjpeg-turbo-3.0.3.tar.gz 2832827 BLAKE2B 9d141dadd0dce970bf857b51352c57a8e15180438abd7d6d66f9dfd24e23889add8c6c89120b84026e40ab61611516b0567984bd1db37e9c45b41917cf32e9a6 SHA512 7c3a6660e7a54527eaa40929f5cc3d519842ffb7e961c32630ae7232b71ecaa19e89dbf5600c61038f0c5db289b607c2316fe9b6b03d482d770bcac29288d129 DIST libjpeg-turbo-3.0.4.tar.gz 2400356 BLAKE2B cf951582ce7cdf0dce39075bb1cc58f6a61fa0bdaca4874a4f06a03d2cd11775bc626c8d391d4fc76574d302a781ba47e5c90e2aa2d6a21a8b8d06712437e241 SHA512 04d37d65131f7ab8586507fe6520452e791e9b8d72a08cf52f81279450b4c6b8a5b49ff3e14e358d3c32cb5666b6d4576d1e16895af8213a1761464de5dc9d31 +DIST libjpeg-turbo-3.1.0.tar.gz 2507094 BLAKE2B 1e83d5c062fa3700c23e2527812cb43daa1a5f97c7520c0a894c8333fbad4acd64586fdc3bf76e3692f8b9fa9b92014d18782949d0e30e80d0f2ba3608279f63 SHA512 63231854529f59a95814cf2414fe384360a4ed96c572764fabc535c3770c559d26943e129c905a63d5949088fa79138b1ffdb175b817f2f4d36329a3cbb23ea7 DIST libjpeg8_8d-2.debian.tar.gz 14764 BLAKE2B e93d12afa062da28b717b540492221f70e8d9ccf3885371647cf85a2937f938ca723d4a27d5e1c5d79c26aa25dddf69b38754558851a1704172e8b52baf8e17c SHA512 8c5959fb7583a2d61e9442187f67b91b45e72d9dd30db3360d583a3b5d8e1a908db5659f760bdd455b3056e6ae3535b2fd3b847df3d58b140a1816b754003675 diff --git a/media-libs/libjpeg-turbo/libjpeg-turbo-3.0.3-r1.ebuild b/media-libs/libjpeg-turbo/libjpeg-turbo-3.0.3-r1.ebuild index 1819d640e226..0e1e637c14be 100644 --- a/media-libs/libjpeg-turbo/libjpeg-turbo-3.0.3-r1.ebuild +++ b/media-libs/libjpeg-turbo/libjpeg-turbo-3.0.3-r1.ebuild @@ -15,7 +15,7 @@ SRC_URI=" LICENSE="BSD IJG ZLIB java? ( GPL-2-with-classpath-exception )" SLOT="0/0.2" if [[ $(ver_cut 3) -lt 90 ]] ; then - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris" fi IUSE="cpu_flags_arm_neon java static-libs" diff --git a/media-libs/libjpeg-turbo/libjpeg-turbo-3.1.0.ebuild b/media-libs/libjpeg-turbo/libjpeg-turbo-3.1.0.ebuild new file mode 100644 index 000000000000..c8a5827dfb68 --- /dev/null +++ b/media-libs/libjpeg-turbo/libjpeg-turbo-3.1.0.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib java-pkg-opt-2 + +DESCRIPTION="MMX, SSE, and SSE2 SIMD accelerated JPEG library" +HOMEPAGE="https://libjpeg-turbo.org/ https://github.com/libjpeg-turbo/libjpeg-turbo" +SRC_URI=" + https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/${PV}/${P}.tar.gz + mirror://gentoo/libjpeg8_8d-2.debian.tar.gz +" + +LICENSE="BSD IJG ZLIB java? ( GPL-2-with-classpath-exception )" +SLOT="0/0.2" +if [[ $(ver_cut 3) -lt 90 ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris" +fi +IUSE="cpu_flags_arm_neon java static-libs" + +ASM_DEPEND="|| ( dev-lang/nasm dev-lang/yasm )" +COMMON_DEPEND=" + !media-libs/jpeg:0 + !media-libs/jpeg:62 +" +DEPEND=" + ${COMMON_DEPEND} + java? ( >=virtual/jdk-1.8:*[-headless-awt] ) +" +RDEPEND=" + ${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) +" +BDEPEND=" + amd64? ( ${ASM_DEPEND} ) + x86? ( ${ASM_DEPEND} ) + amd64-linux? ( ${ASM_DEPEND} ) + x86-linux? ( ${ASM_DEPEND} ) + x64-macos? ( ${ASM_DEPEND} ) +" + +MULTILIB_WRAPPED_HEADERS=( /usr/include/jconfig.h ) + +src_prepare() { + local FILE + ln -snf ../debian/extra/*.c . || die + + for FILE in ../debian/extra/*.c; do + FILE=${FILE##*/} + cat >> CMakeLists.txt <<-EOF || die + add_executable(${FILE%.c} ${FILE}) + install(TARGETS ${FILE%.c}) + EOF + done + + cmake_src_prepare + java-pkg-opt-2_src_prepare +} + +multilib_src_configure() { + if multilib_is_native_abi && use java ; then + export JAVAFLAGS="$(java-pkg_javac-args)" + export JAVACFLAGS="$(java-pkg_javac-args)" + export JNI_CFLAGS="$(java-pkg_get-jni-cflags)" + fi + + local mycmakeargs=( + -DCMAKE_INSTALL_DEFAULT_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" + -DENABLE_STATIC="$(usex static-libs)" + -DWITH_JAVA="$(multilib_native_usex java)" + ) + + # Avoid ARM ABI issues by disabling SIMD for CPUs without NEON, bug #792810 + if use arm || use arm64; then + mycmakeargs+=( + -DWITH_SIMD=$(usex cpu_flags_arm_neon) + -DNEON_INTRINSICS=$(usex cpu_flags_arm_neon) + ) + fi + + # We should tell the test suite which floating-point flavor we are + # expecting: https://github.com/libjpeg-turbo/libjpeg-turbo/issues/597 + # For now, mark loong as fp-contract. + if use loong; then + mycmakeargs+=( + -DFLOATTEST=fp-contract + ) + fi + + # Mostly for Prefix, ensure that we use our yasm if installed and + # not pick up host-provided nasm + if has_version -b dev-lang/yasm && ! has_version -b dev-lang/nasm; then + mycmakeargs+=( + -DCMAKE_ASM_NASM_COMPILER=$(type -P yasm) + ) + fi + + cmake_src_configure +} + +multilib_src_install() { + cmake_src_install + + if multilib_is_native_abi && use java ; then + rm -rf "${ED}"/usr/classes || die + java-pkg_dojar java/turbojpeg.jar + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name '*.la' -delete || die + + local -a DOCS=( README.md ChangeLog.md ) + einstalldocs + + newdoc "${WORKDIR}"/debian/changelog changelog.debian + dobin "${WORKDIR}"/debian/extra/exifautotran + doman "${WORKDIR}"/debian/extra/*.[0-9]* + + if use java; then + docinto html/java + dodoc -r "${S}"/java/doc/. + newdoc "${S}"/java/README README.java + fi +} diff --git a/media-libs/libjxl/Manifest b/media-libs/libjxl/Manifest index 06a0f514db3a..6c87d66e5eb4 100644 --- a/media-libs/libjxl/Manifest +++ b/media-libs/libjxl/Manifest @@ -1,2 +1,2 @@ -DIST libjxl-0.11.0.tar.gz 1873614 BLAKE2B 60f038c35f921e1d6cfaab62ec92c15fa8b0bb9369724bdbaf25fb72559670de6f2e86bf1fb7d37158e1d046d46d20610b574e2288f86d4bae52fdc2c51e3b76 SHA512 a3648a5f046cae36b3272c46525d002d490f781f44647d4d8318f0b773dd9b7902582ced5636af3489f1d6a44e3baf8ad2e5ab47d26869d16b01607d90e14053 +DIST libjxl-0.11.1.tar.gz 1876134 BLAKE2B e2a96464fdcdff483de92e0f3301870a62f934976e6d78fd1efe30fe96f30ce6c3459843385712df7914ad53aeff3de1b84ac1a4d22294e909ed559d7c6c9db9 SHA512 0cfd81d9d3b783f96bd04f244d73ffbc12186c89993d46064a2751bef0a446a5e86be05add5c10f60d4482d39333d9bf3f9a866d6eb84f8fa0d4e8b5828fd74c DIST libjxl-testdata-ff8d743aaba05b3014f17e5475e576242fa979fc.tar.gz 69105882 BLAKE2B a80fce437b810e7b99b4c7bd106ec7eba01a1eeddc90e1b82cb8d75f3ca194c357ef8e7b7e1e9da65aa39dc2cd11d32cb6de8558188c5258c7446d58787603ff SHA512 0d237e706fd8d001a9cb245b685e8e39085416daedec019c348ccc64cf15a34cecdb0c245f94f57507f5934e487ee5157f51f59bb6a000f5899862c582336384 diff --git a/media-libs/libjxl/libjxl-0.11.0.ebuild b/media-libs/libjxl/libjxl-0.11.1.ebuild index 28d788eb5bc6..28d788eb5bc6 100644 --- a/media-libs/libjxl/libjxl-0.11.0.ebuild +++ b/media-libs/libjxl/libjxl-0.11.1.ebuild diff --git a/media-libs/liblqr/Manifest b/media-libs/liblqr/Manifest index 1a89d2213ddb..ef9c3c9da5cd 100644 --- a/media-libs/liblqr/Manifest +++ b/media-libs/liblqr/Manifest @@ -1 +1,2 @@ DIST liblqr-1-0.4.2.tar.bz2 344739 BLAKE2B 90ae891603dc525d460b1f180342b2a998ef3081a7504c642d0ddbbc5feef1ceb512a046a5366311d2a86869c8988f24f03faaafd3e7c77b1ff1f82b8a23acc0 SHA512 57d9ed67d5a11c970262263a34b6797576088e14f2ccb01b393eff55bfd22c8bb2b2189e3ed5ff6c187f709c556225fc1fb1038bd0d7e0c03d8839ef0ce998a3 +DIST liblqr-1-0.4.3.tar.bz2 407408 BLAKE2B 09e16dcb1d0c7381aa908eb9d0e920375035bee12176b28d5d432e2899bb5b63255ad79d265259ee7af216e85a5e69d79116c4dc3abdfde5220c8117dcd3d7cf SHA512 665a37a0ea2c7655cfbaaf5efe15633ccec28ddd525358d8f3d7aadc77586283867ed77f7a2d829aabe97c2a57cc6a8932dcd9cbea4bfd1d3e095d64eb974aac diff --git a/media-libs/liblqr/liblqr-0.4.3.ebuild b/media-libs/liblqr/liblqr-0.4.3.ebuild new file mode 100644 index 000000000000..8a09361f3d90 --- /dev/null +++ b/media-libs/liblqr/liblqr-0.4.3.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic + +DESCRIPTION="Easy to use C/C++ seam carving library" +HOMEPAGE="http://liblqr.wikidot.com/ https://github.com/carlobaldassi/liblqr" +SRC_URI="https://liblqr.wikidot.com/local--files/en:download-page/${PN}-1-${PV}.tar.bz2" +S="${WORKDIR}/${PN}-1-${PV}" + +LICENSE="|| ( GPL-3 LGPL-3 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND="dev-libs/glib:2" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +src_configure() { + # bug #943824 + append-cflags -std=gnu17 + + default +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/liblqr/metadata.xml b/media-libs/liblqr/metadata.xml index 85e4ed814fa2..76175e2661d8 100644 --- a/media-libs/liblqr/metadata.xml +++ b/media-libs/liblqr/metadata.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<!-- maintainer-needed --> + <!-- maintainer-needed --> + <upstream> + <remote-id type="github">carlobaldassi/liblqr</remote-id> + </upstream> </pkgmetadata> diff --git a/media-libs/libmediainfo/Manifest b/media-libs/libmediainfo/Manifest index 7b43bcb2980e..0fb8abcc5254 100644 --- a/media-libs/libmediainfo/Manifest +++ b/media-libs/libmediainfo/Manifest @@ -1,4 +1,2 @@ -DIST libmediainfo_22.09.tar.xz 1886180 BLAKE2B 3b9fa03ae1fafd06e494ad462ab30a19141c516b6fe61867da7cf339ee470cb56a6cdab57c4e8a498e79c7e3e4b4e5a19b4302f2db2ab0172fe26fefcc0a92f6 SHA512 4204f0ad73f5b826ec89df88607d7e491ecdad512c6bdae12f72b551827b1e4818aa2b88a46a46cb1f8fca46f3638fbe0243e252c685ca46b2d33a9acb00198c -DIST libmediainfo_23.03.tar.xz 1925904 BLAKE2B bd8d716e9e85bdf2c91ddb6b5492e87e75e497469107aa3ca8a045f25bca1202432a2c8e9a01d179afc1d705ad4c35fcc41cda44cf2b9e57bffd0e8db4f2b7c0 SHA512 a13c4042851248ee4c76f2f52bbafe6e2152e99d60d8cccbff3c5aa01c63e27f97c3335cf88bdaa4869a1f1550ed9ce428af127569ee09c2fee344ed06e44942 -DIST libmediainfo_23.04.tar.xz 1932860 BLAKE2B b5de44301693b65537b27bd097b3efa5d8a89e05c9f9d1755b9c0c70589bd8549dcb9079da0c9adc5d465170306f4612e2027127c74d4ed162448230c5632814 SHA512 5c673e78564132c8c5e64a7d2901914968c1c9a9bc362a95b74330e26447378eac3197f106f2abeeeea635bd68bbe57f596827ef6ee7dd139646ee0e05a124cc DIST libmediainfo_23.10.tar.xz 1977204 BLAKE2B e64481694c651b16bf72e18d5e68069f63efc481b465b6eb7d1d6a8c3e7de84aaabbc212fce8d734f7dd6d082a6ffcf1cdf040f410fd16554bf20db5460c3db4 SHA512 fc7f6b4ff811e9656bfd795325511d53def3e78016a005cfd3439af955a3a6c13ef06dd72dd0685441e2419ed7d141bf762394f8b3d8a9bd00ad2780dc4acbb6 +DIST libmediainfo_24.11.tar.xz 2096092 BLAKE2B 4080c34afa7e0a3ff2c9424e95ae4c461d2535f715bcc9812f30953be9b127d73100ba13835a5e77baa383bef0e089333a7ebcf891ce4e461d91d3388b1972e2 SHA512 3a7c889b09be4b17696288ac5a773684fed2dc608f9c1da346e790524b8bea372cedf5573e602dc48e10f61a17d314c8bd48764e5365dabe2c0222687e904a26 diff --git a/media-libs/libmediainfo/libmediainfo-22.09.ebuild b/media-libs/libmediainfo/libmediainfo-22.09.ebuild deleted file mode 100644 index 068ce2e3ebc3..000000000000 --- a/media-libs/libmediainfo/libmediainfo-22.09.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# These must be bumped together: -# - media-libs/libzen (if a release is available) -# - media-libs/libmediainfo -# - media-video/mediainfo - -MY_PN="MediaInfo" -inherit autotools edos2unix flag-o-matic - -DESCRIPTION="MediaInfo libraries" -HOMEPAGE="https://mediaarea.net/mediainfo/ https://github.com/MediaArea/MediaInfoLib" -SRC_URI="https://mediaarea.net/download/source/${PN}/${PV}/${P/-/_}.tar.xz" -S="${WORKDIR}"/${MY_PN}Lib/Project/GNU/Library - -LICENSE="BSD-2" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86" -IUSE="curl doc mms" - -# Tests try to fetch data from online sources -RESTRICT="test" - -RDEPEND="dev-libs/tinyxml2:= - >=media-libs/libzen-0.4.37 - sys-libs/zlib - curl? ( net-misc/curl ) - mms? ( >=media-libs/libmms-0.6.1 )" -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig - doc? ( app-text/doxygen )" - -src_prepare() { - default - - sed -i 's:-O2::' configure.ac || die - - append-cppflags -DMEDIAINFO_LIBMMS_DESCRIBE_SUPPORT=0 - - eautoreconf -} - -src_configure() { - econf \ - --enable-shared \ - --disable-static \ - --disable-staticlibs \ - --with-libtinyxml2 \ - $(use_with curl libcurl) \ - $(use_with mms libmms) -} - -src_compile() { - default - - if use doc; then - cd "${WORKDIR}"/${MY_PN}Lib/Source/Doc || die - doxygen Doxyfile || die - fi -} - -src_install() { - if use doc; then - local HTML_DOCS=( "${WORKDIR}"/${MY_PN}Lib/Doc/*.html ) - fi - - default - - edos2unix ${PN}.pc #414545 - insinto /usr/$(get_libdir)/pkgconfig - doins ${PN}.pc - - for x in ./ Archive Audio Duplicate Export Image Multiple Reader Tag Text Video; do - insinto /usr/include/${MY_PN}/${x} - doins "${WORKDIR}"/${MY_PN}Lib/Source/${MY_PN}/${x}/*.h - done - - insinto /usr/include/${MY_PN}DLL - doins "${WORKDIR}"/${MY_PN}Lib/Source/${MY_PN}DLL/*.h - - dodoc "${WORKDIR}"/${MY_PN}Lib/*.txt - - find "${ED}" -name '*.la' -delete || die -} diff --git a/media-libs/libmediainfo/libmediainfo-23.04.ebuild b/media-libs/libmediainfo/libmediainfo-23.04.ebuild deleted file mode 100644 index 694dbfd1db8c..000000000000 --- a/media-libs/libmediainfo/libmediainfo-23.04.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# These must be bumped together: -# - media-libs/libzen (if a release is available) -# - media-libs/libmediainfo -# - media-video/mediainfo - -MY_PN="MediaInfo" -inherit autotools edos2unix flag-o-matic - -DESCRIPTION="MediaInfo libraries" -HOMEPAGE="https://mediaarea.net/mediainfo/ https://github.com/MediaArea/MediaInfoLib" -SRC_URI="https://mediaarea.net/download/source/${PN}/${PV}/${P/-/_}.tar.xz" -S="${WORKDIR}"/${MY_PN}Lib/Project/GNU/Library - -LICENSE="BSD-2" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86" -IUSE="curl doc mms" - -# Tests try to fetch data from online sources -RESTRICT="test" - -# The libzen dep usually needs to be bumped for each release! -RDEPEND=" - dev-libs/tinyxml2:= - >=media-libs/libzen-0.4.41 - sys-libs/zlib - curl? ( net-misc/curl ) - mms? ( >=media-libs/libmms-0.6.1 ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - doc? ( app-text/doxygen ) -" - -src_prepare() { - default - - sed -i 's:-O2::' configure.ac || die - - append-cppflags -DMEDIAINFO_LIBMMS_DESCRIBE_SUPPORT=0 - - eautoreconf -} - -src_configure() { - econf \ - --enable-shared \ - --disable-static \ - --disable-staticlibs \ - --with-libtinyxml2 \ - $(use_with curl libcurl) \ - $(use_with mms libmms) -} - -src_compile() { - default - - if use doc; then - cd "${WORKDIR}"/${MY_PN}Lib/Source/Doc || die - doxygen Doxyfile || die - fi -} - -src_install() { - if use doc; then - local HTML_DOCS=( "${WORKDIR}"/${MY_PN}Lib/Doc/*.html ) - fi - - default - - edos2unix ${PN}.pc #414545 - insinto /usr/$(get_libdir)/pkgconfig - doins ${PN}.pc - - for x in ./ Archive Audio Duplicate Export Image Multiple Reader Tag Text Video; do - insinto /usr/include/${MY_PN}/${x} - doins "${WORKDIR}"/${MY_PN}Lib/Source/${MY_PN}/${x}/*.h - done - - insinto /usr/include/${MY_PN}DLL - doins "${WORKDIR}"/${MY_PN}Lib/Source/${MY_PN}DLL/*.h - - dodoc "${WORKDIR}"/${MY_PN}Lib/*.txt - - find "${ED}" -name '*.la' -delete || die -} diff --git a/media-libs/libmediainfo/libmediainfo-23.03.ebuild b/media-libs/libmediainfo/libmediainfo-24.11.ebuild index 694dbfd1db8c..dbdd5e56357c 100644 --- a/media-libs/libmediainfo/libmediainfo-23.03.ebuild +++ b/media-libs/libmediainfo/libmediainfo-24.11.ebuild @@ -12,13 +12,13 @@ MY_PN="MediaInfo" inherit autotools edos2unix flag-o-matic DESCRIPTION="MediaInfo libraries" -HOMEPAGE="https://mediaarea.net/mediainfo/ https://github.com/MediaArea/MediaInfoLib" +HOMEPAGE="https://mediaarea.net/en/MediaInfo https://github.com/MediaArea/MediaInfoLib" SRC_URI="https://mediaarea.net/download/source/${PN}/${PV}/${P/-/_}.tar.xz" S="${WORKDIR}"/${MY_PN}Lib/Project/GNU/Library LICENSE="BSD-2" SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" IUSE="curl doc mms" # Tests try to fetch data from online sources diff --git a/media-libs/libmikmod/Manifest b/media-libs/libmikmod/Manifest index b48498e0a9bc..eb87f373978e 100644 --- a/media-libs/libmikmod/Manifest +++ b/media-libs/libmikmod/Manifest @@ -1 +1,2 @@ DIST libmikmod-3.3.11.1.tar.gz 1240373 BLAKE2B 9de58eea739f8f7a5c4ff482093974f67a623fd0acd3b65752b0832b1376fb05ca00e7fbd09c242a25fb76d90d662afc3886808fbe6cabb15332f263adba37ad SHA512 f2439e2b691613847cd0787dd4e050116683ce7b05c215b8afecde5c6add819ea6c18e678e258c0a80786bef463f406072de15127f64368f694287a5e8e1a9de +DIST libmikmod-3.3.12.tar.gz 1305911 BLAKE2B 52208c5c5938194d4873488644baa5bd1c57ce67304b2201696654f177f6f57ac16877de0c33b936361626ab68b08e7309c0ca19579fd08167b6d3a115d75113 SHA512 df0fab3c6ac0583cc588be53fcbc1de7c277394f70892f7addbc6eef889ce33da6aa6508cfdceaf68f8803b7d8aae672e6b8ddbef8836b0be578349b7ebce20a diff --git a/media-libs/libmikmod/libmikmod-3.3.12.ebuild b/media-libs/libmikmod/libmikmod-3.3.12.ebuild new file mode 100644 index 000000000000..9562dc80591b --- /dev/null +++ b/media-libs/libmikmod/libmikmod-3.3.12.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib multilib-minimal + +DESCRIPTION="Library to play a wide range of module formats" +HOMEPAGE="https://mikmod.sourceforge.net/" +SRC_URI="https://downloads.sourceforge.net/mikmod/${P}.tar.gz" + +LICENSE="LGPL-2+ LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="+alsa coreaudio cpu_flags_ppc_altivec debug nas openal oss pulseaudio cpu_flags_x86_sse2 static-libs +threads" + +REQUIRED_USE="|| ( alsa coreaudio nas openal oss pulseaudio )" + +COMMON_DEPEND=" + alsa? ( >=media-libs/alsa-lib-1.0.27.2:=[${MULTILIB_USEDEP}] ) + nas? ( >=media-libs/nas-1.9.4:=[${MULTILIB_USEDEP}] ) + openal? ( >=media-libs/openal-1.15.1-r1[${MULTILIB_USEDEP}] ) + pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] ) +" +DEPEND="${COMMON_DEPEND} + oss? ( virtual/os-headers ) +" +RDEPEND="${COMMON_DEPEND} + !${CATEGORY}/${PN}:2 +" +BDEPEND="sys-apps/texinfo" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/libmikmod-config +) + +src_prepare() { + default + + # USE=debug enables Werror, bug #621688 + sed -i -e 's/-Werror//' configure || die +} + +multilib_src_configure() { + local mysimd="--disable-simd" + if use ppc || use ppc64 || use ppc-macos; then + mysimd="$(use_enable cpu_flags_ppc_altivec simd)" + fi + if use amd64 || use x86 || use amd64-linux || use x86-linux || use x64-macos; then + mysimd="$(use_enable cpu_flags_x86_sse2 simd)" + fi + + # sdl, sdl2: missing multilib supported ebuilds, temporarily disabled, remember to update REQUIRED_USE + ECONF_SOURCE=${S} econf \ + $(use_enable alsa) \ + $(use_enable nas) \ + $(use_enable pulseaudio) \ + --disable-sdl \ + --disable-sdl2 \ + $(use_enable openal) \ + $(use_enable oss) \ + $(use_enable coreaudio osx) \ + $(use_enable debug) \ + $(use_enable threads) \ + $(use_enable static-libs static) \ + --disable-dl \ + ${mysimd} +} + +multilib_src_install() { + emake DESTDIR="${D}" install + dosym ${PN}$(get_libname 3) /usr/$(get_libdir)/${PN}$(get_libname 2) +} + +multilib_src_install_all() { + dodoc AUTHORS NEWS README TODO + docinto html + dodoc docs/*.html + + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/libmtp/Manifest b/media-libs/libmtp/Manifest index 7c66ca04809a..2806e63c70a4 100644 --- a/media-libs/libmtp/Manifest +++ b/media-libs/libmtp/Manifest @@ -1,2 +1 @@ -DIST libmtp-1.1.21.tar.gz 862703 BLAKE2B c6067d0e9c7e2410b950715d1f02243c835afacfb3eef2f250361d4075d378b2754dceadf5120c9a646413ea826f42291c530590861420f56140458558dccc8e SHA512 510f01f75de37a07c8ce54957a8fb74724538a7cfbdf1a86c201fda68573ef23fa578ff7baf2d9df938703b5776ded4ab1057c617125f3539e594bb5a1f3146f DIST libmtp-1.1.22.tar.gz 900914 BLAKE2B 5032cbe430bc0ff870f1a88e5b484e6fbe59fd4d7fabd842a1e982b47cd5207e799d2dc1b410b232fc58e2b0c7ba5ca99af71eaaef3beb8849e34a51cf6c3003 SHA512 97094b29073681da0c714b6c4aea2e5f35253a8d06229e60c0af46727413470e9da6be422d873449fc4dec6f9b8efce6d3edc657b9251182cc0a709859e99baa diff --git a/media-libs/libmtp/files/libmtp-1.1.19-fix-docdir.patch b/media-libs/libmtp/files/libmtp-1.1.19-fix-docdir.patch deleted file mode 100644 index 25450079d203..000000000000 --- a/media-libs/libmtp/files/libmtp-1.1.19-fix-docdir.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/doc/Makefile.in b/doc/Makefile.in -index fede3e0..d801a47 100644 ---- a/doc/Makefile.in -+++ b/doc/Makefile.in -@@ -256,7 +256,7 @@ top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - EXTRA_DIST = Doxyfile.in examples.h mainpage.h --@HAVE_DOXYGEN_TRUE@pkgdocdir = $(datadir)/doc/$(PACKAGE)-$(VERSION) -+@HAVE_DOXYGEN_TRUE@pkgdocdir = $(docdir) - @HAVE_DOXYGEN_TRUE@htmldocdir = $(pkgdocdir)/html - all: all-am - diff --git a/media-libs/libmtp/libmtp-1.1.21.ebuild b/media-libs/libmtp/libmtp-1.1.21.ebuild deleted file mode 100644 index 974dea670ef6..000000000000 --- a/media-libs/libmtp/libmtp-1.1.21.ebuild +++ /dev/null @@ -1,91 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit udev - -if [[ ${PV} == 9999* ]]; then - EGIT_REPO_URI="https://git.code.sf.net/p/${PN}/code" - inherit autotools git-r3 -else - inherit libtool - SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86" -fi - -DESCRIPTION="Implementation of Microsoft's Media Transfer Protocol (MTP)" -HOMEPAGE="https://libmtp.sourceforge.net/" - -LICENSE="LGPL-2.1" # LGPL-2+ and LGPL-2.1+ ? -SLOT="0/9" # Based on SONAME of libmtp shared library -IUSE="+crypt doc examples static-libs" - -RDEPEND=" - acct-group/plugdev - virtual/libiconv - virtual/libusb:1 - crypt? ( dev-libs/libgcrypt:0= )" -DEPEND="${RDEPEND}" -BDEPEND=" - sys-devel/gettext - virtual/pkgconfig - doc? ( app-text/doxygen )" - -DOCS=( AUTHORS README TODO ) - -PATCHES=( - "${FILESDIR}/${PN}-1.1.19-fix-docdir.patch" -) - -src_prepare() { - default - - # ChangeLog says "RETIRING THIS FILE ..pause.. GIT" (Last entry from start of 2011) - rm ChangeLog || die - - if [[ ${PV} == 9999* ]]; then - if [[ -e /usr/share/gettext/config.rpath ]]; then - cp /usr/share/gettext/config.rpath . || die - else - touch config.rpath || die # This is from upstream autogen.sh - fi - eautoreconf - else - # Needed to fix -fuse-ld=* filtering (e.g. lld) - # Can drop this once copyright year in libtool file included - # says >= 2021 (was 2014 at time of writing). - elibtoolize - fi -} - -src_configure() { - local myeconfargs=( - $(use_enable crypt mtpz) - $(use_enable doc doxygen) - $(use_enable static-libs static) - --with-udev="${EPREFIX}$(get_udevdir)" - --with-udev-group=plugdev - --with-udev-mode=0660 - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - find "${ED}" -name "*.la" -delete || die - - if use examples; then - docinto examples - dodoc examples/*.{c,h,sh} - fi -} - -pkg_postinst() { - udev_reload -} - -pkg_postrm() { - udev_reload -} diff --git a/media-libs/libmtp/libmtp-1.1.22.ebuild b/media-libs/libmtp/libmtp-1.1.22.ebuild index 850e3a37b359..cf223d3a61f5 100644 --- a/media-libs/libmtp/libmtp-1.1.22.ebuild +++ b/media-libs/libmtp/libmtp-1.1.22.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == 9999* ]]; then else inherit libtool SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86" fi DESCRIPTION="Implementation of Microsoft's Media Transfer Protocol (MTP)" diff --git a/media-libs/libmtp/libmtp-9999.ebuild b/media-libs/libmtp/libmtp-9999.ebuild index 850e3a37b359..628f569eff91 100644 --- a/media-libs/libmtp/libmtp-9999.ebuild +++ b/media-libs/libmtp/libmtp-9999.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == 9999* ]]; then else inherit libtool SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86" fi DESCRIPTION="Implementation of Microsoft's Media Transfer Protocol (MTP)" diff --git a/media-libs/libopenglrecorder/metadata.xml b/media-libs/libopenglrecorder/metadata.xml index 948c61c5b49a..1c10170a9b9a 100644 --- a/media-libs/libopenglrecorder/metadata.xml +++ b/media-libs/libopenglrecorder/metadata.xml @@ -7,7 +7,6 @@ </maintainer> <use> <flag name="openh264">Enable H.264 support using <pkg>media-libs/openh264</pkg></flag> - <flag name="vpx">Enable VP8/VP9 codec support via <pkg>media-libs/libvpx</pkg></flag> </use> <upstream> <remote-id type="github">Benau/libopenglrecorder</remote-id> diff --git a/media-libs/libopenmpt/Manifest b/media-libs/libopenmpt/Manifest index df752810671b..9cc3eda38aec 100644 --- a/media-libs/libopenmpt/Manifest +++ b/media-libs/libopenmpt/Manifest @@ -1,3 +1 @@ -DIST libopenmpt-0.6.6+release.autotools.tar.gz 1554516 BLAKE2B 21e2fc4252431235608a52d3a321e26eae5d45f2328ff3e3604d84c537d72e07d72346c504901b000af04dfc52b1dd91c79f576be4331ea8685e534a174b61cd SHA512 b634c556f13dc51d1008f4216936a9b7cab25a6fb0d5218da0b692ec848de21905ed1981223ac9ecdebea9ce6c5376e91ff92e1655dd0be491fce0114e3230bf -DIST libopenmpt-0.7.10+release.autotools.tar.gz 1671289 BLAKE2B 62bd4a1bcd9685fdb92c270687b71609a23986941e301ad17cc37ca5f6b5b76fa1a8f425b2e68603bb29bfa34c3c1caea98faea1d95004f87943b2bed6b7c9a0 SHA512 e5f02b045bc1449791ec43a32216c4c4231edff88b3bda07283c9768118bce3a1f50c2535dbe38a21eb12016294e3b5823ef2f32f2f1e21d40fafe188bad783d -DIST libopenmpt-0.7.9+release.autotools.tar.gz 1669833 BLAKE2B 9ba6af6df794583748336cc977b20d7bdb3f8d75e32d32a420c5e137511352ea5ec41b31beb7b0df78376dcb0e3a8160a1c527b6f4575b61b945a9f93252fe84 SHA512 e0928d3dc439c3ed7296b97dc8b8e255db22bfd91fd3bc73d0bdca8262a5cb26dff0ba89e508a4443ebe34c34fc880b202a758a11fde31b75e1ebd5725819414 +DIST libopenmpt-0.7.13+release.autotools.tar.gz 1681351 BLAKE2B d75df89e85531e85974bd532773e8ed16440211448790779191a61a629dde33ef7280bcc1c82e6ac6aeb313f7f568bc7a2abe707772801f52c271977b88eff8e SHA512 04e63c635dd6c63c2ce79db4eff971f10e4d14a12c7f143fc317a4b5f5188cd8cbf84fc5121057c2beff3a3e6b9b48767c02b9eb5c569accab3e6ff7322a9690 diff --git a/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild b/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild deleted file mode 100644 index 03b0016c8652..000000000000 --- a/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal - -MY_P="libopenmpt-${PV}+release.autotools" -DESCRIPTION="Library to decode tracked music files (modules)" -HOMEPAGE="https://lib.openmpt.org/libopenmpt/" -SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -IUSE="examples mp3 ogg static-libs test vorbis zlib" -RESTRICT="!test? ( test )" - -RDEPEND=" - mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) - ogg? ( media-libs/libogg[${MULTILIB_USEDEP}] ) - vorbis? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -ECONF_SOURCE="${S}" - -multilib_src_configure() { - # A lot of these optional dependencies relate to openmpt123, which - # we package separately, so we disable them here. - econf \ - $(use_enable static-libs static) \ - --disable-openmpt123 \ - --disable-examples \ - $(use_enable test tests) \ - --disable-doxygen-doc \ - $(use_with zlib) \ - $(use_with mp3 mpg123) \ - $(use_with ogg) \ - $(use_with vorbis) \ - $(use_with vorbis vorbisfile) \ - --without-pulseaudio \ - --without-portaudio \ - --without-portaudiocpp \ - --without-sdl2 \ - --without-sndfile \ - --without-flac -} - -multilib_src_install_all() { - rm -f \ - "${ED}"/usr/*/*.la \ - "${ED}"/usr/share/doc/${P}/LICENSE || die - - if ! use examples; then - rm -r "${ED}"/usr/share/doc/${P}/examples || die - fi -} diff --git a/media-libs/libopenmpt/libopenmpt-0.6.6.ebuild b/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild index 6b839e1264b9..25bbb93352d9 100644 --- a/media-libs/libopenmpt/libopenmpt-0.6.6.ebuild +++ b/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -9,6 +9,7 @@ MY_P="libopenmpt-${PV}+release.autotools" DESCRIPTION="Library to decode tracked music files (modules)" HOMEPAGE="https://lib.openmpt.org/libopenmpt/" SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" LICENSE="BSD" SLOT="0" KEYWORDS="amd64 arm ~arm64 ppc ppc64 ~riscv x86" @@ -25,7 +26,6 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" -S="${WORKDIR}/${MY_P}" ECONF_SOURCE="${S}" multilib_src_configure() { diff --git a/media-libs/libopenmpt/libopenmpt-0.7.9.ebuild b/media-libs/libopenmpt/libopenmpt-0.7.9.ebuild deleted file mode 100644 index 03b0016c8652..000000000000 --- a/media-libs/libopenmpt/libopenmpt-0.7.9.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal - -MY_P="libopenmpt-${PV}+release.autotools" -DESCRIPTION="Library to decode tracked music files (modules)" -HOMEPAGE="https://lib.openmpt.org/libopenmpt/" -SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -IUSE="examples mp3 ogg static-libs test vorbis zlib" -RESTRICT="!test? ( test )" - -RDEPEND=" - mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) - ogg? ( media-libs/libogg[${MULTILIB_USEDEP}] ) - vorbis? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -ECONF_SOURCE="${S}" - -multilib_src_configure() { - # A lot of these optional dependencies relate to openmpt123, which - # we package separately, so we disable them here. - econf \ - $(use_enable static-libs static) \ - --disable-openmpt123 \ - --disable-examples \ - $(use_enable test tests) \ - --disable-doxygen-doc \ - $(use_with zlib) \ - $(use_with mp3 mpg123) \ - $(use_with ogg) \ - $(use_with vorbis) \ - $(use_with vorbis vorbisfile) \ - --without-pulseaudio \ - --without-portaudio \ - --without-portaudiocpp \ - --without-sdl2 \ - --without-sndfile \ - --without-flac -} - -multilib_src_install_all() { - rm -f \ - "${ED}"/usr/*/*.la \ - "${ED}"/usr/share/doc/${P}/LICENSE || die - - if ! use examples; then - rm -r "${ED}"/usr/share/doc/${P}/examples || die - fi -} diff --git a/media-libs/libopenraw/files/libopenraw-0.3.7-fix-boost-detection.patch b/media-libs/libopenraw/files/libopenraw-0.3.7-fix-boost-detection.patch new file mode 100644 index 000000000000..1ca47ea5cc90 --- /dev/null +++ b/media-libs/libopenraw/files/libopenraw-0.3.7-fix-boost-detection.patch @@ -0,0 +1,12 @@ +--- a/m4/boost.m4 ++++ b/m4/boost.m4 +@@ -229,6 +229,9 @@ AC_LANG_POP([C++])dnl + [#include <boost/version.hpp> + boost-lib-version = BOOST_LIB_VERSION], + [boost_cv_lib_version=`cat conftest.i`])]) ++ if test x"$boost_cv_lib_version" = x; then ++ boost_cv_lib_version=$(grep "#define BOOST_LIB_VERSION" /usr/include/boost/version.hpp | sed 's/.*"\(.*\)".*/\1/') ++ fi + # e.g. "134" for 1_34_1 or "135" for 1_35 + boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'` + case $boost_major_version in #( diff --git a/media-libs/libopenraw/libopenraw-0.3.7-r1.ebuild b/media-libs/libopenraw/libopenraw-0.3.7-r1.ebuild index 4825810f5604..9d8e94968f46 100644 --- a/media-libs/libopenraw/libopenraw-0.3.7-r1.ebuild +++ b/media-libs/libopenraw/libopenraw-0.3.7-r1.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 @@ -39,6 +39,7 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/${PN}-0.3.7-slibtool.patch #913723 + "${FILESDIR}"/${PN}-0.3.7-fix-boost-detection.patch #919349 ) src_prepare() { diff --git a/media-libs/libopenraw/libopenraw-0.3.7-r2.ebuild b/media-libs/libopenraw/libopenraw-0.3.7-r2.ebuild new file mode 100644 index 000000000000..08c818f04d9d --- /dev/null +++ b/media-libs/libopenraw/libopenraw-0.3.7-r2.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" " + +inherit autotools cargo gnome2-utils + +DESCRIPTION="RAW image formats decoding library" +HOMEPAGE="https://libopenraw.freedesktop.org/" +SRC_URI="https://${PN}.freedesktop.org/download/${P}.tar.xz" + +# MPL-2.0 for mp4parse (https://gitlab.freedesktop.org/libopenraw/libopenraw/-/issues/15) +LICENSE="GPL-3 LGPL-3 MPL-2.0" +SLOT="0/9" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" +IUSE="gtk test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-libs/libxml2 + media-libs/libjpeg-turbo:= + gtk? ( + dev-libs/glib:2 + >=x11-libs/gdk-pixbuf-2.24.0:2 + ) +" +DEPEND=" + ${RDEPEND} + dev-libs/boost +" +BDEPEND=" + virtual/pkgconfig + test? ( net-misc/curl ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.7-slibtool.patch #913723 + "${FILESDIR}"/${PN}-0.3.7-fix-boost-detection.patch #919349 +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + econf \ + --with-boost="${EPREFIX}"/usr \ + $(use_enable gtk gnome) +} + +src_compile() { + # Avoid cargo_src_compile + default +} + +src_test() { + # Avoid cargo_src_test + default +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + use gtk && gnome2_gdk_pixbuf_update +} + +pkg_postrm() { + use gtk && gnome2_gdk_pixbuf_update +} diff --git a/media-libs/libplacebo/libplacebo-7.349.0.ebuild b/media-libs/libplacebo/libplacebo-7.349.0.ebuild index ee0a83ec2656..10102b7a31a0 100644 --- a/media-libs/libplacebo/libplacebo-7.349.0.ebuild +++ b/media-libs/libplacebo/libplacebo-7.349.0.ebuild @@ -52,7 +52,7 @@ RDEPEND=" shaderc? ( media-libs/shaderc[${MULTILIB_USEDEP}] ) !shaderc? ( glslang? ( dev-util/glslang:=[${MULTILIB_USEDEP}] ) ) unwind? ( - llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] ) + llvm-libunwind? ( llvm-runtimes/libunwind[${MULTILIB_USEDEP}] ) !llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] ) ) vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] ) diff --git a/media-libs/libplacebo/libplacebo-9999.ebuild b/media-libs/libplacebo/libplacebo-9999.ebuild index fd9eb972c5a4..2055812a69ea 100644 --- a/media-libs/libplacebo/libplacebo-9999.ebuild +++ b/media-libs/libplacebo/libplacebo-9999.ebuild @@ -52,7 +52,7 @@ RDEPEND=" shaderc? ( media-libs/shaderc[${MULTILIB_USEDEP}] ) !shaderc? ( glslang? ( dev-util/glslang:=[${MULTILIB_USEDEP}] ) ) unwind? ( - llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] ) + llvm-libunwind? ( llvm-runtimes/libunwind[${MULTILIB_USEDEP}] ) !llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] ) ) vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] ) diff --git a/media-libs/libpng/Manifest b/media-libs/libpng/Manifest index 17ef60db1f6d..3ded2bc40c6c 100644 --- a/media-libs/libpng/Manifest +++ b/media-libs/libpng/Manifest @@ -1,8 +1,4 @@ -DIST libpng-1.6.40-apng-apng.patch.gz 10330 BLAKE2B e2a5ff10ebaf75019d20edb148ea26fd6b255842aa34e8af31a919ae3c059b28eb827831289f47428e5f55c239f23a600677fde58e74bf0a2db27b5001f9ccb1 SHA512 803c45c2bbaf6c12863a09fb4d307c629680835b11a01c456512c81ef705e4f96c29e98c2486970ff1d86335cb4bd7568a30482c3e69601275d2a31d294058db -DIST libpng-1.6.40-libpng-apng-apng.patch.gz 10815 BLAKE2B 47b09d730d6be1d481ab48e511068a38fc3448339aaeab1d8ad21f26de6cb79006c64785de2e0514ff820a75101c0010b84cce923d10e8f6198e4e99916d08f2 SHA512 373cc9f0df15f7c77c0a59ddaac22374cfae37174b63a642e68e3a17a6d0bb1015399d771998c7eb6b356b634f157f0009743f4cc659f3b8e480a9533010ef9c -DIST libpng-1.6.40.tar.xz 1021332 BLAKE2B 4dd2df57791ca68cc31ba966b9176ecb37458572c60eef34e31ff0d3266d25ad6ea9d2e8cae6bfaf7932b5c7bc231047d3ed139b3464304c41cc4d89611f5ba8 SHA512 a2ec37c529bf80f3fee3798191d080d06e14d6a1ffecd3c1a02845cb9693b5e308a1d82598a376101f9312d989d19f1fb6735b225d4b0b9f1b73f9f8a3edb17f -DIST libpng-1.6.42.tar.xz 1035484 BLAKE2B 8a8895b673ff90416a00c9ff775d7bdc38ab1ab0d83fd6e70cfffea2ed78bd42896950a64bf48ad9a00ea50d8c5d5702975b0bae7bb3300d4de4c82b334e513e SHA512 a9e8641f79ebc811e8e1e94c4966737f8d0f3aef33c86834c419ca76050567891c065899c3bc0c945c59b5d50c5ff7d693cc51089d06efe92e71ae8014fa157c -DIST libpng-1.6.43-apng-apng.patch.gz 10333 BLAKE2B 11bc92064e52f8a045b9d2a7158808471faf3e94b08dceae6aa5cfef635731ef3740e69b27118b9a5b2f2d3b810f108b8c30192388c569de1371f34a5f49f592 SHA512 3a3320c682fe8a575e76e9ede0a2d2d62533cbb206b428bfdf2729c649aaf3061b21e55c1d8848d474e40615b4e9870d49927b14de237777135524f904bac36c -DIST libpng-1.6.43.tar.xz 1044076 BLAKE2B e8781001f001e6f514ca01ceafc51557e6cdedcbed3aa64df213d02635eec937cac4ccc0f34b636f582a7d141b67ec6c8d90a6ffb15c679ab0c3f4f8798be791 SHA512 c95d661fed548708ce7de5d80621a432272bdfe991f0d4db3695036e5fafb8a717b4e4314991bdd3227d7aa07f8c6afb6037c57fa0fe3349334a0b6c58268487 DIST libpng-1.6.44-apng-apng.patch.gz 10336 BLAKE2B 3c78cadd08b48466eee7c271ec82649dab55f28977622128c78764257a3f53e3255ddb1d728f10cb457b4db314566fe54b7edc88ab68b3dd1a8310bda500ab4f SHA512 5b8502abd3fad84772136a9eea53a918f806ef7035fe6df5d2b631a5279f298b9f125922d5aab7306e7c7aa1445ac9e36072e22fab4005d20662232078187f3c DIST libpng-1.6.44.tar.xz 1045640 BLAKE2B 61064dd83f40a7e2e60ff723a568b7d0cda95aa80621a211aee7127b9783fbfc20cd82a2fe2d03584cbf9ab77c5444e3e008ac5ccc7f64af6e858ebcbcb78822 SHA512 bbd3e5e68d8b6fe3d85e59ca0babe8b522c19cac4b6ce0fcf21516cda7120b642be611eb1eaa565b7eabbacd22606593619aabd227b43a36f1efc707e7e11851 +DIST libpng-1.6.46-apng-apng.patch.gz 10266 BLAKE2B 51d04187fa631fcc388fafa86683579fe20a58c3f5dafb721632b82a82568842dff6772e29de1d95ffa5cb2dc188338c67f3d4427b9ee69fe98d20ab825aa0ba SHA512 78b33e4e2c68e8486c6666a5e2bdc57457e34952e2d0f8eed710913c92b895b8f96b96f0cfe8600a1c47c0b368e025f2fc20f3f52c435e5b3574e9f5aa546863 +DIST libpng-1.6.46.tar.xz 1054296 BLAKE2B 0cc4e4ca0a9394e1ee2778065ef03859854062103609c9356709a9540b8953a6198b5c44a5a05ae97d8f0e6035a171ab1797627f6523805cedf3f985960752c3 SHA512 80c4cb644e11d39533344e017faf61700fdfbf758531b1a9ffbeb0a2f8540d9ed373f4adab590ae994f5a17f7fd6eff8dac16ebfcc2a0c31e899fd63ae1e4c1e diff --git a/media-libs/libpng/libpng-1.6.40-r1.ebuild b/media-libs/libpng/libpng-1.6.40-r1.ebuild deleted file mode 100644 index eb69793bf039..000000000000 --- a/media-libs/libpng/libpng-1.6.40-r1.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit libtool multilib-minimal - -APNG_REPO=apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.40" -DESCRIPTION="Portable Network Graphics library" -HOMEPAGE="http://www.libpng.org/" -SRC_URI=" - https://downloads.sourceforge.net/${PN}/${P}.tar.xz - apng? ( - https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PV}/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz - https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz - ) -" - -LICENSE="libpng2" -SLOT="0/16" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="apng cpu_flags_arm_neon cpu_flags_x86_sse static-libs" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -DOCS=( ANNOUNCE CHANGES libpng-manual.txt README TODO ) - -src_prepare() { - default - - if use apng; then - case ${APNG_REPO} in - apng) - eapply -p0 "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch - ;; - libpng-apng) - eapply "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch - ;; - *) - die "Unknown APNG_REPO!" - ;; - esac - - # Don't execute symbols check with apng patch, bug #378111 - sed -i -e '/^check/s:scripts/symbols.chk::' Makefile.in || die - fi - - elibtoolize -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable cpu_flags_arm_neon arm-neon) - $(use_enable cpu_flags_x86_sse intel-sse) - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_install_all() { - default - - find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die -} diff --git a/media-libs/libpng/libpng-1.6.43.ebuild b/media-libs/libpng/libpng-1.6.43.ebuild deleted file mode 100644 index 07d466534060..000000000000 --- a/media-libs/libpng/libpng-1.6.43.ebuild +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit libtool multilib-minimal - -APNG_REPO=apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.43" -DESCRIPTION="Portable Network Graphics library" -HOMEPAGE="http://www.libpng.org/" -SRC_URI=" - https://downloads.sourceforge.net/${PN}/${P}.tar.xz - apng? ( - https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PV}/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz - https://downloads.sourceforge.net/${APNG_REPO}/${PN}$(ver_rs 1-2 '' $(ver_cut 1-2 ${APNG_VERSION}))/${PN}-${APNG_VERSION}-apng.patch.gz -> ${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch.gz - ) -" - -LICENSE="libpng2" -SLOT="0/16" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="apng cpu_flags_arm_neon cpu_flags_x86_sse static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" - -DOCS=( ANNOUNCE CHANGES libpng-manual.txt README TODO ) - -src_prepare() { - default - - if use apng; then - case ${APNG_REPO} in - apng) - eapply -p0 "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch - ;; - libpng-apng) - eapply "${WORKDIR}"/${PN}-${APNG_VERSION}-${APNG_REPO}-apng.patch - ;; - *) - die "Unknown APNG_REPO!" - ;; - esac - - # Don't execute symbols check with apng patch, bug #378111 - sed -i -e '/^check/s:scripts/symbols.chk::' Makefile.in || die - fi - - elibtoolize -} - -multilib_src_configure() { - local myeconfargs=( - $(multilib_native_enable tools) - $(use_enable test tests) - $(use_enable cpu_flags_arm_neon arm-neon) - $(use_enable cpu_flags_x86_sse intel-sse) - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_install_all() { - default - - find "${ED}" \( -type f -o -type l \) -name '*.la' -delete || die -} diff --git a/media-libs/libpng/libpng-1.6.42.ebuild b/media-libs/libpng/libpng-1.6.46.ebuild index 9b2e3527fb9a..17cfb6906cf0 100644 --- a/media-libs/libpng/libpng-1.6.42.ebuild +++ b/media-libs/libpng/libpng-1.6.46.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit libtool multilib-minimal -APNG_REPO=libpng-apng # sometimes libpng-apng is more up to date -APNG_VERSION="1.6.40" +APNG_REPO=apng # sometimes libpng-apng is more up to date +APNG_VERSION="1.6.46" DESCRIPTION="Portable Network Graphics library" HOMEPAGE="http://www.libpng.org/" SRC_URI=" @@ -20,7 +20,7 @@ SRC_URI=" LICENSE="libpng2" SLOT="0/16" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="apng cpu_flags_arm_neon cpu_flags_x86_sse static-libs test" +IUSE="apng cpu_flags_x86_sse static-libs test" RESTRICT="!test? ( test )" RDEPEND=">=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]" @@ -55,7 +55,6 @@ multilib_src_configure() { local myeconfargs=( $(multilib_native_enable tools) $(use_enable test tests) - $(use_enable cpu_flags_arm_neon arm-neon) $(use_enable cpu_flags_x86_sse intel-sse) $(use_enable static-libs static) ) diff --git a/media-libs/libprojectm/Manifest b/media-libs/libprojectm/Manifest index afde8166d097..4e628bbba254 100644 --- a/media-libs/libprojectm/Manifest +++ b/media-libs/libprojectm/Manifest @@ -1,3 +1,3 @@ DIST libprojectm-3.1.12.tar.gz 52831726 BLAKE2B f9a9ecf8fc55b49e664a61a5c0ca3eef745b00390d5dd3b1549d6d68985c246834d35adb96ab8595e2bf78997c4688096c7931a6be54ea9d867bfdbe5a427832 SHA512 6d265280f3e3e952686ebf77afd8b083669e9ab81d2d9d122168d47747c367ff3b17ab682cc041e4ac9cee9607b7393b5dcb067deac95fcbb97d63a9656912a5 -DIST libprojectm-4.1.1.tar.gz 47988154 BLAKE2B 47fd71d857f307ea09c87d36102662423d1df4d62f36f23373fcba36760312bd4e4d11408a3f4820b5caedd2e31bfd0dfc1e551c1bf27eb0ba33149f8ea13ebe SHA512 af38913e56d46ed15118b2dccd2701f9bf043bb3103f58ad2ebbfaffc60c3ed4e1b0eb3d8f922bdffb0001acfa5e3d23633a4903250fd00ede0dede1e6e1ba47 DIST libprojectm-4.1.2.tar.gz 47980796 BLAKE2B 2932c96645916c715971c0fc2237791a1ca28295738e7433b9e856b303ab5c2beee48419c36ae65913537f2b65f2f7bd390875efa46e965faf9f4568b44c66e3 SHA512 4a8181dd5e41a9f8c0d8e3b105c5fd2d8638c7029a1054e75fbf6b7e5222740d179db37b7bd79147d4a34dce8360ce7b0eaa6c0c90af96bc8e8c557d8a496aff +DIST libprojectm-4.1.4.tar.gz 47989898 BLAKE2B 4bb4c38c69422a43660185fde195c587d71205e2c19696d39ac8281072005e272df00d72e21bc066f5f83c90aa73bd2fa5bcbcd27bf882b4a72f16d1fe06ddde SHA512 7e35817c18e9ff37cb5b2a74769ec3e509ead698f5a5d66e96a49254c2759add33a4f12f7a183705e10efa10c7ce839511eb68671e10c0b618ce2fbf27f57533 diff --git a/media-libs/libprojectm/libprojectm-4.1.2.ebuild b/media-libs/libprojectm/libprojectm-4.1.2.ebuild index 404241093774..506045464288 100644 --- a/media-libs/libprojectm/libprojectm-4.1.2.ebuild +++ b/media-libs/libprojectm/libprojectm-4.1.2.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} == *9999 ]] ; then else MY_PV="${PV/_/-}" SRC_URI="https://github.com/projectM-visualizer/projectm/releases/download/v${MY_PV}/libprojectM-${MY_PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86" S="${WORKDIR}/libprojectM-${MY_PV}" fi diff --git a/media-libs/libprojectm/libprojectm-4.1.1-r1.ebuild b/media-libs/libprojectm/libprojectm-4.1.4.ebuild index 506045464288..40fee61984c1 100644 --- a/media-libs/libprojectm/libprojectm-4.1.1-r1.ebuild +++ b/media-libs/libprojectm/libprojectm-4.1.4.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 @@ -14,7 +14,7 @@ if [[ ${PV} == *9999 ]] ; then else MY_PV="${PV/_/-}" SRC_URI="https://github.com/projectM-visualizer/projectm/releases/download/v${MY_PV}/libprojectM-${MY_PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" S="${WORKDIR}/libprojectM-${MY_PV}" fi diff --git a/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.6.0.ebuild b/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.6.0.ebuild index 87d54f232e8c..14d8b87ef7f5 100644 --- a/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.6.0.ebuild +++ b/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.6.0.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 @@ -16,7 +16,7 @@ https://invent.kde.org/libraries/libqaccessibilityclient" if [[ ${KDE_BUILD_TYPE} = release ]]; then SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" - KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" fi LICENSE="LGPL-2.1" diff --git a/media-libs/libquicktime/libquicktime-1.2.4-r5.ebuild b/media-libs/libquicktime/libquicktime-1.2.4-r5.ebuild index c997e6f48020..3535c4c787b8 100644 --- a/media-libs/libquicktime/libquicktime-1.2.4-r5.ebuild +++ b/media-libs/libquicktime/libquicktime-1.2.4-r5.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz" LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86" IUSE="aac alsa doc dv encode ffmpeg gtk jpeg lame cpu_flags_x86_mmx opengl png static-libs vorbis X x264" RDEPEND=" diff --git a/media-libs/libraw/libraw-0.21.1-r1.ebuild b/media-libs/libraw/libraw-0.21.1-r1.ebuild index 46378358646f..9c21307b42d2 100644 --- a/media-libs/libraw/libraw-0.21.1-r1.ebuild +++ b/media-libs/libraw/libraw-0.21.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit multilib-minimal toolchain-funcs +inherit flag-o-matic multilib-minimal toolchain-funcs MY_PN=LibRaw MY_PV="${PV/_b/-B}" @@ -12,6 +12,7 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="LibRaw is a library for reading RAW files obtained from digital photo cameras" HOMEPAGE="https://www.libraw.org/ https://github.com/LibRaw/LibRaw" SRC_URI="https://www.libraw.org/data/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2.1 CDDL" # SONAME isn't exactly the same as PV but it does correspond and @@ -28,8 +29,6 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" -S="${WORKDIR}/${MY_P}" - DOCS=( Changelog.txt README.md ) PATCHES=( "${FILESDIR}/${P}-CVE-2023-1729.patch" ) @@ -42,6 +41,14 @@ pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp } +src_prepare() { + default + + if tc-is-clang && use openmp ; then + append-libs omp + fi +} + multilib_src_configure() { local myeconfargs=( --disable-jasper diff --git a/media-libs/libraw/libraw-0.21.2.ebuild b/media-libs/libraw/libraw-0.21.2.ebuild index 500650195963..b45f1cb997a4 100644 --- a/media-libs/libraw/libraw-0.21.2.ebuild +++ b/media-libs/libraw/libraw-0.21.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit multilib-minimal toolchain-funcs +inherit flag-o-matic multilib-minimal toolchain-funcs MY_PN=LibRaw MY_PV="${PV/_b/-B}" @@ -12,6 +12,7 @@ MY_P="${MY_PN}-${MY_PV}" DESCRIPTION="LibRaw is a library for reading RAW files obtained from digital photo cameras" HOMEPAGE="https://www.libraw.org/ https://github.com/LibRaw/LibRaw" SRC_URI="https://www.libraw.org/data/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2.1 CDDL" # SONAME isn't exactly the same as PV but it does correspond and @@ -28,8 +29,6 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" -S="${WORKDIR}/${MY_P}" - DOCS=( Changelog.txt README.md ) pkg_pretend() { @@ -40,6 +39,14 @@ pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp } +src_prepare() { + default + + if tc-is-clang && use openmp ; then + append-libs omp + fi +} + multilib_src_configure() { local myeconfargs=( --disable-jasper diff --git a/media-libs/librtprocess/librtprocess-0.12.0-r1.ebuild b/media-libs/librtprocess/librtprocess-0.12.0-r1.ebuild index 3552a317c4a2..6eb0b12e8e1e 100644 --- a/media-libs/librtprocess/librtprocess-0.12.0-r1.ebuild +++ b/media-libs/librtprocess/librtprocess-0.12.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,7 +18,7 @@ BDEPEND=" openmp? ( || ( sys-devel/gcc[openmp] - sys-devel/clang-runtime[openmp] + llvm-core/clang-runtime[openmp] ) ) " diff --git a/media-libs/libsdl2/Manifest b/media-libs/libsdl2/Manifest index 50f56269d436..9be0d64d75df 100644 --- a/media-libs/libsdl2/Manifest +++ b/media-libs/libsdl2/Manifest @@ -1,2 +1,3 @@ DIST SDL2-2.28.5.tar.gz 7345355 BLAKE2B c96481bc02af6b6d077247238f7e46b0e3ec216664584add29cafb0a91d06dc6ddc637a01519dbd7182d4fa59cfaf26ad6733f72583021cf65849416f9c4b698 SHA512 12593eb78fcca877a8dfb78cf21a4e6feba7dc87c964de378ac462b36d8e41ecb587222cb41d5f56dd35b838e1b9867b8ae0cf2f4d2a01afaf23ac8c11edc84d +DIST SDL2-2.30.11.tar.gz 7585207 BLAKE2B e6038cbf79bec299fae9cfdc4b84ff3e28343abe782942af17e052d7da93111ea04a2ae15b063bfa0ad0d13a1810890dd29d895189f7f417f1bccce715badde1 SHA512 cd4c040ebe4ec74250e32b401a292658353721dda30ad1066522b2a9de9a07560313978880a0bad7e7f5103cc14278fcbe27dbc5a188189e7fb6f097e7308550 DIST SDL2-2.30.7.tar.gz 7525092 BLAKE2B a494ca856f43009957f62ef4e5d401777c2d1f8518e4cc1a1b9fc9a2efedc5031b9cb5e2965aeb7347821310153cf3abc4c898dd493962fb268c5c55081ed7c3 SHA512 1a16c10f500dea97bd4e4ca5f560fe4ab8e746c975d30751b7cf567868743d105ce84055d480e4c18b290adac485e67d1bb14ae1719644d6e42223d96f299a16 diff --git a/media-libs/libsdl2/libsdl2-2.30.11.ebuild b/media-libs/libsdl2/libsdl2-2.30.11.ebuild new file mode 100644 index 000000000000..665f62671fd8 --- /dev/null +++ b/media-libs/libsdl2/libsdl2-2.30.11.ebuild @@ -0,0 +1,208 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib flag-o-matic + +MY_P="SDL2-${PV}" +DESCRIPTION="Simple Direct Media Layer" +HOMEPAGE="https://www.libsdl.org/" +SRC_URI="https://www.libsdl.org/release/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~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 cpu_flags_x86_sse3 custom-cflags dbus doc fcitx gles1 gles2 +haptic ibus jack +joystick kms libsamplerate nas opengl oss pipewire pulseaudio sndio +sound static-libs test udev +video vulkan wayland X xscreensaver" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + alsa? ( sound ) + fcitx? ( dbus ) + gles1? ( video ) + gles2? ( video ) + haptic? ( joystick ) + ibus? ( dbus ) + jack? ( sound ) + nas? ( sound ) + opengl? ( video ) + pulseaudio? ( sound ) + sndio? ( sound ) + test? ( static-libs ) + vulkan? ( video ) + wayland? ( gles2 ) + xscreensaver? ( X ) +" + +COMMON_DEPEND=" + virtual/libiconv[${MULTILIB_USEDEP}] + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] ) + dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] ) + ibus? ( app-i18n/ibus ) + jack? ( virtual/jack[${MULTILIB_USEDEP}] ) + kms? ( + >=x11-libs/libdrm-2.4.82[${MULTILIB_USEDEP}] + >=media-libs/mesa-9.0.0[${MULTILIB_USEDEP},gbm(+)] + ) + libsamplerate? ( media-libs/libsamplerate[${MULTILIB_USEDEP}] ) + nas? ( + >=media-libs/nas-1.9.4[${MULTILIB_USEDEP}] + >=x11-libs/libXt-1.1.4[${MULTILIB_USEDEP}] + ) + opengl? ( + >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] + >=virtual/glu-9.0-r1[${MULTILIB_USEDEP}] + ) + pipewire? ( media-video/pipewire:=[${MULTILIB_USEDEP}] ) + pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] ) + sndio? ( media-sound/sndio:=[${MULTILIB_USEDEP}] ) + udev? ( >=virtual/libudev-208:=[${MULTILIB_USEDEP}] ) + wayland? ( + >=dev-libs/wayland-1.20[${MULTILIB_USEDEP}] + gui-libs/libdecor[${MULTILIB_USEDEP}] + >=media-libs/mesa-9.1.6[${MULTILIB_USEDEP},egl(+),gles2(+),wayland] + >=x11-libs/libxkbcommon-0.2.0[${MULTILIB_USEDEP}] + ) + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXcursor-1.1.14[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXfixes-6.0.0[${MULTILIB_USEDEP}] + >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}] + >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}] + xscreensaver? ( >=x11-libs/libXScrnSaver-1.2.2-r1[${MULTILIB_USEDEP}] ) + ) +" +RDEPEND=" + ${COMMON_DEPEND} + fcitx? ( app-i18n/fcitx:* ) + gles1? ( media-libs/mesa[${MULTILIB_USEDEP},gles1(+)] ) + gles2? ( media-libs/mesa[${MULTILIB_USEDEP},gles2(+)] ) + vulkan? ( media-libs/vulkan-loader ) +" +DEPEND=" + ${COMMON_DEPEND} + gles1? ( media-libs/libglvnd ) + gles2? ( media-libs/libglvnd ) + ibus? ( dev-libs/glib:2[${MULTILIB_USEDEP}] ) + test? ( x11-libs/libX11[${MULTILIB_USEDEP}] ) + vulkan? ( dev-util/vulkan-headers ) + X? ( x11-base/xorg-proto ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( + app-text/doxygen + media-gfx/graphviz + ) + wayland? ( >=dev-util/wayland-scanner-1.20 ) +" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/SDL2/SDL_config.h + /usr/include/SDL2/SDL_platform.h + /usr/include/SDL2/begin_code.h + /usr/include/SDL2/close_code.h +) + +src_prepare() { + cmake_src_prepare + + # Unbundle some headers. + rm -r src/video/khronos || die + ln -s "${ESYSROOT}/usr/include" src/video/khronos || die +} + +src_configure() { + use custom-cflags || strip-flags + + local mycmakeargs=( + -DSDL_STATIC=$(usex static-libs) + -DSDL_SYSTEM_ICONV=ON + -DSDL_GCC_ATOMICS=ON + -DSDL_AUDIO=$(usex sound) + -DSDL_VIDEO=$(usex video) + -DSDL_JOYSTICK=$(usex joystick) + -DSDL_HAPTIC=$(usex haptic) + -DSDL_POWER=ON + -DSDL_FILESYSTEM=ON + -DSDL_TIMERS=ON + -DSDL_FILE=ON + -DSDL_LOADSO=ON + -DSDL_ASSEMBLY=ON + -DSDL_ALTIVEC=$(usex cpu_flags_ppc_altivec) + -DSDL_SSEMATH=$(usex cpu_flags_x86_sse) + -DSDL_MMX=$(usex cpu_flags_x86_mmx) + -DSDL_3DNOW=$(usex cpu_flags_x86_3dnow) + -DSDL_SSE=$(usex cpu_flags_x86_sse) + -DSDL_SSE2=$(usex cpu_flags_x86_sse2) + -DSDL_SSE3=$(usex cpu_flags_x86_sse3) + -DSDL_OSS=$(usex oss) + -DSDL_ALSA=$(usex alsa) + -DSDL_ALSA_SHARED=OFF + -DSDL_JACK=$(usex jack) + -DSDL_JACK_SHARED=OFF + -DSDL_ESD=OFF + -DSDL_PIPEWIRE=$(usex pipewire) + -DSDL_PIPEWIRE_SHARED=OFF + -DSDL_PULSEAUDIO=$(usex pulseaudio) + -DSDL_PULSEAUDIO_SHARED=OFF + -DSDL_ARTS=OFF + -DSDL_LIBSAMPLERATE=$(usex libsamplerate) + -DSDL_LIBSAMPLERATE_SHARED=OFF + -DSDL_WERROR=OFF + -DSDL_NAS=$(usex nas) + -DSDL_NAS_SHARED=OFF + -DSDL_SNDIO=$(usex sndio) + -DSDL_SNDIO_SHARED=OFF + -DSDL_DISKAUDIO=$(usex sound) + -DSDL_DUMMYAUDIO=$(usex sound) + -DSDL_WAYLAND=$(usex wayland) + -DSDL_WAYLAND_SHARED=OFF + -DSDL_WAYLAND_LIBDECOR=$(usex wayland) + -DSDL_WAYLAND_LIBDECOR_SHARED=OFF + -DSDL_RPI=OFF + -DSDL_X11=$(usex X) + -DSDL_X11_SHARED=OFF + -DSDL_X11_XSCRNSAVER=$(usex xscreensaver) + -DSDL_COCOA=$(usex aqua) + -DSDL_DIRECTFB=OFF + -DSDL_FUSIONSOUND=OFF + -DSDL_KMSDRM=$(usex kms) + -DSDL_KMSDRM_SHARED=OFF + -DSDL_DUMMYVIDEO=$(usex video) + -DSDL_OPENGL=$(usex opengl) + -DSDL_OPENGLES=$(use gles1 || use gles2 && echo ON || echo OFF) + -DSDL_VULKAN=$(usex vulkan) + -DSDL_LIBUDEV=$(usex udev) + -DSDL_DBUS=$(usex dbus) + -DSDL_IBUS=$(usex ibus) + -DSDL_CCACHE=OFF + -DSDL_DIRECTX=OFF + -DSDL_RPATH=OFF + -DSDL_VIDEO_RENDER_D3D=OFF + -DSDL_TESTS=$(usex test) + ) + cmake-multilib_src_configure +} + +src_compile() { + multilib-minimal_src_compile + + if use doc; then + cd docs || die + doxygen || die + fi +} + +src_test() { + unset SDL_GAMECONTROLLERCONFIG SDL_GAMECONTROLLER_USE_BUTTON_LABELS + cmake-multilib_src_test +} + +multilib_src_install_all() { + rm -r "${ED}"/usr/share/licenses/ || die + dodoc {BUGS,CREDITS,README-SDL,TODO,WhatsNew}.txt README.md docs/README*.md + use doc && dodoc -r docs/output/html/ +} diff --git a/media-libs/libsdl2/libsdl2-2.30.7-r1.ebuild b/media-libs/libsdl2/libsdl2-2.30.7-r1.ebuild index c625970b60e5..0aec53dd2b11 100644 --- a/media-libs/libsdl2/libsdl2-2.30.7-r1.ebuild +++ b/media-libs/libsdl2/libsdl2-2.30.7-r1.ebuild @@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="ZLIB" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv 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 cpu_flags_x86_sse3 custom-cflags dbus doc fcitx gles1 gles2 +haptic ibus jack +joystick kms libsamplerate nas opengl oss pipewire pulseaudio sndio +sound static-libs test udev +video vulkan wayland X xscreensaver" RESTRICT="!test? ( test )" diff --git a/media-libs/libsfml/Manifest b/media-libs/libsfml/Manifest index 812571c63fd8..43090803c3d8 100644 --- a/media-libs/libsfml/Manifest +++ b/media-libs/libsfml/Manifest @@ -1,3 +1,4 @@ DIST libsfml-2.5.1.tar.gz 22868556 BLAKE2B b6c70b75a778ffeb141438153fb1e5693c3e92e277919b8f8befe98f55dfd519a67c86504bb5656961b947fcf60758b16a18d5a4ae7585c7c5256f327529ae31 SHA512 7aed2fc29d1da98e6c4d598d5c86cf536cb4eb5c2079cdc23bb8e502288833c052579dadbe0ce13ad6461792d959bf6d9660229f54c54cf90a541c88c6b03d59 DIST libsfml-2.6.0.tar.gz 25493305 BLAKE2B 205db3aa9fa197dbc29c8b3a74c09651fb9ca8e60bf18e385b8ecfa350d85b31ab33b6d2e61b6cdcfdc3caf77a8af37cbe97445e871b6e688359b320a12a3cea SHA512 aac734e8b0e16936c0238ec792c922923545ec6cf06576bc70004fa1920cd05b4c5e56fbc8a77b650bbe6e202adc39df1d30509dbce95778d04338917a38a87a DIST libsfml-2.6.1.tar.gz 25499153 BLAKE2B 0e4251d7aade5a596e9d0afdaa86d843fb5ba3ca63fc4f9dccb2e7db70aa8ae253af30dba68d57dd6869a6142818575e6fd843005a6e54fe186b20b573ad8f63 SHA512 b376d3b00277ed60d107fe1268c210749b3aafcee618a8f924b181a9b476e92b9cb9baddecf70a8913b5910c471d53ea0260a876ad7b2db2b98b944d9f508714 +DIST libsfml-2.6.2.tar.gz 28624288 BLAKE2B 52442ef05a2719c1e7cd45ba15a4a41af7f3026c7c3a01c55993769bde39c9426962d640ffa2ac293dd4d90b9290b5f0895fffe7c10d3ffadbc189b10001c7ff SHA512 d8a8bee3aa9acda4609104c2a9d4a2512e4be6d6e85fd4b24c287c03f60cfb888e669e61bfac4113dae35f0c3492559b65b3453baf38766d8c0223d9ab77aada diff --git a/media-libs/libsfml/libsfml-2.6.1.ebuild b/media-libs/libsfml/libsfml-2.6.1.ebuild index 87c36048ce3e..7427b45b2650 100644 --- a/media-libs/libsfml/libsfml-2.6.1.ebuild +++ b/media-libs/libsfml/libsfml-2.6.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/SFML/SFML/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="ZLIB" SLOT="0/$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86" IUSE="debug doc examples" RDEPEND=" diff --git a/media-libs/libsfml/libsfml-2.6.2.ebuild b/media-libs/libsfml/libsfml-2.6.2.ebuild new file mode 100644 index 000000000000..771d64d56587 --- /dev/null +++ b/media-libs/libsfml/libsfml-2.6.2.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Simple and Fast Multimedia Library (SFML)" +HOMEPAGE="https://www.sfml-dev.org/ https://github.com/SFML/SFML" +SRC_URI="https://github.com/SFML/SFML/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/SFML-${PV}" + +LICENSE="ZLIB" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="debug doc examples" + +RDEPEND=" + media-libs/flac:= + media-libs/freetype:2 + media-libs/libjpeg-turbo:= + media-libs/libogg + media-libs/libpng:= + media-libs/libvorbis + media-libs/openal + sys-libs/zlib + virtual/opengl + x11-libs/libX11 + x11-libs/libXcursor + x11-libs/libXrandr + x11-libs/libxcb + x11-libs/xcb-util-image + kernel_linux? ( virtual/libudev:= ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" +BDEPEND=" + doc? ( app-text/doxygen ) +" + +DOCS=( changelog.md readme.md ) + +PATCHES=( "${FILESDIR}"/libsfml-2.6.0-supress-werror.patch ) + +src_prepare() { + sed -i "s:DESTINATION .*:DESTINATION /usr/share/doc/${PF}:" \ + doc/CMakeLists.txt || die + + find examples -name CMakeLists.txt -delete || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DSFML_BUILD_DOC=$(usex doc) + -DSFML_INSTALL_PKGCONFIG_FILES=TRUE + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + insinto /usr/share/cmake/Modules + doins cmake/SFMLConfig.cmake.in + doins cmake/SFMLConfigDependencies.cmake.in + + if use examples ; then + docompress -x /usr/share/doc/${PF}/examples + dodoc -r examples + fi +} diff --git a/media-libs/libshumate/Manifest b/media-libs/libshumate/Manifest index b5307b8085ab..3a884cdfc906 100644 --- a/media-libs/libshumate/Manifest +++ b/media-libs/libshumate/Manifest @@ -1,4 +1,2 @@ -DIST libshumate-1.1.3.tar.xz 299644 BLAKE2B f07a583e1fd142a0601c725840e84397ed04962f828cbc15217dcdc0d767015664a06252879416e9422cb32154406dae2742ffb511404c5923ce9acab7efae0c SHA512 163cce5c9aca2f3c52da3ecb3b4a651798e314d38a145ed4c69b0510303c72a0934c24084036ca2dfaab8b008753a37f7116b0bd2907cddc78a2aceee4f847d2 -DIST libshumate-1.1.4.tar.xz 299700 BLAKE2B 1f60b0807d99c8ea675be2ca85ada1929c51aa1a5f27bb5565ddba062626c4bde447f95ad4b7e02b6d3f57af1365501e64b5bca18dc566b3bf0ae1f47d5c638f SHA512 f2bb90255a43fbdf9b17bd69260c9054378959900adbc26db9b7417f98595f1d5c9221db4f31b78a546f7bd30d95175f4210fc7db11db6704d7de4c9ad000619 -DIST libshumate-1.2.2.tar.xz 321216 BLAKE2B f0f26798fc9a32707d5e669c0af5396ddcdff0bea9f93150f29751ab952f72bfed457f105ea0835d3b31fbb3d66934139e1a6a06e1d056d47bf2f270cc32b23c SHA512 9e1f3f26aa591ac681ccd4613ae921f4e3f3863bacd0a0dc3be56f52749135d6c035535111808d18929d5be2a6461a47739e586f20081f485bb992b4e0a22c3a DIST libshumate-1.2.3.tar.xz 321768 BLAKE2B 42349a0d96d35972cf5440470983792ffe897aa0d3e8a1cd7435f1a0ecd870142d33fa28f4e5cc559cd9adba66dbd6ab1bf57d10aa5cfb4934dd3b67ae4983c6 SHA512 4f56e51b72a63d89d6b159dc002617866abd388cb6c3a092107bc5751728c99466f8c36e8086bb39b22b3d91de28f840e9d28fc29dba0b94bafd643950fee8ec +DIST libshumate-1.3.1.tar.xz 5910692 BLAKE2B 6e6d37aa93605751d55c52b9884859c7a8e4a1dfe70a80b080a5f7aea8520f2cd74bb31b6aff12c3442d49d166c790f288c580e6c88168d3d9055f6b3d5fd227 SHA512 ecb3dc45144bca035ff007c5ecfe835850bb01d05d2b985c40f7c5e7c0a2bf03b5e82ed26ec119e98dfc9cb69ae84a483d5b35bcc35b016f2930530577e4e218 diff --git a/media-libs/libshumate/files/libshumate-1.2.3-json-glib-1.9.2.patch b/media-libs/libshumate/files/libshumate-1.2.3-json-glib-1.9.2.patch new file mode 100644 index 000000000000..113ab9411089 --- /dev/null +++ b/media-libs/libshumate/files/libshumate-1.2.3-json-glib-1.9.2.patch @@ -0,0 +1,28 @@ +https://bugs.gentoo.org/946836 +https://gitlab.gnome.org/GNOME/libshumate/-/issues/81 +https://gitlab.gnome.org/GNOME/libshumate/-/merge_requests/245 + +From d1afd9316e0038c036c326ac5133502103fb9ecf Mon Sep 17 00:00:00 2001 +From: Marcus Lundblad <ml@dfupdate.se> +Date: Mon, 19 Aug 2024 21:17:37 +0200 +Subject: [PATCH] tests: Escape \n in test with \\ + +--- + tests/vector-expression.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/vector-expression.c b/tests/vector-expression.c +index 9e258fb..59d1d67 100644 +--- a/tests/vector-expression.c ++++ b/tests/vector-expression.c +@@ -592,7 +592,7 @@ test_vector_expression_formatted_string () + node = json_from_string ("[\"format\",\ + \"Hello \",\ + [\"concat\", \"world\", \"!\"], {\"font-scale\": 0.1},\ +- \"\n\", {\"text-color\": [\"coalesce\", \"red\"]},\ ++ \"\\n\", {\"text-color\": [\"coalesce\", \"red\"]},\ + null,\ + \"test\"\ + ]", &error); +-- +GitLab diff --git a/media-libs/libshumate/libshumate-1.1.3.ebuild b/media-libs/libshumate/libshumate-1.1.3.ebuild deleted file mode 100644 index 6df1f6d5de00..000000000000 --- a/media-libs/libshumate/libshumate-1.1.3.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit gnome.org meson vala virtualx - -DESCRIPTION="Shumate is a GTK toolkit providing widgets for embedded maps" -HOMEPAGE="https://wiki.gnome.org/Projects/libshumate https://gitlab.gnome.org/GNOME/libshumate" - -SLOT="1.0/1" -LICENSE="LGPL-2.1+" -KEYWORDS="amd64 ~arm arm64 ~ppc64 ~sparc x86" -REQUIRED_USE="gtk-doc? ( introspection )" - -IUSE="gtk-doc +introspection sysprof vala" # vector-renderer is still experimental, maybe put in at a later release - -RDEPEND=" - >=dev-libs/glib-2.68.0:2 - >=x11-libs/cairo-1.4 - >=dev-db/sqlite-1.12:3 - >=gui-libs/gtk-4:4 - >=net-libs/libsoup-3.0:3.0 - introspection? ( >=dev-libs/gobject-introspection-0.6.3:= ) -" -# vector-renderer? ( -# >=dev-libs/json-glib-1.6.0[introspection?] -# dev-libs/protobuf-c -# ) - -DEPEND="${RDEPEND} - sysprof? ( dev-util/sysprof-capture:4 ) -" -BDEPEND=" - gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) - vala? ( $(vala_depend) ) -" - -src_configure() { - local emesonargs=( - $(meson_use introspection gir) - $(meson_use vala vapi) - $(meson_use gtk-doc gtk_doc) - -Ddemos=false # only built, not installed - # $(meson_use vector-renderer vector_renderer) - -Dvector_renderer=false - -Dlibsoup3=true - $(meson_feature sysprof) - ) - meson_src_configure -} - -src_test() { - virtx dbus-run-session meson test -C "${BUILD_DIR}" || die 'tests failed' -} - -src_install() { - meson_src_install - if use gtk-doc; then - mkdir -p "${ED}"/usr/share/gtk-doc/html || die - mv "${ED}"/usr/share/doc/libshumate-1.0 "${ED}"/usr/share/gtk-doc/html/libshumate-1.0 || die - fi -} diff --git a/media-libs/libshumate/libshumate-1.1.4.ebuild b/media-libs/libshumate/libshumate-1.1.4.ebuild deleted file mode 100644 index 94e5f6d11dba..000000000000 --- a/media-libs/libshumate/libshumate-1.1.4.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit gnome.org meson vala virtualx - -DESCRIPTION="Shumate is a GTK toolkit providing widgets for embedded maps" -HOMEPAGE="https://wiki.gnome.org/Projects/libshumate https://gitlab.gnome.org/GNOME/libshumate" - -SLOT="1.0/1" -LICENSE="LGPL-2.1+" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~sparc ~x86" -REQUIRED_USE="gtk-doc? ( introspection )" - -IUSE="gtk-doc +introspection sysprof vala" # vector-renderer is still experimental, maybe put in at a later release - -RDEPEND=" - >=dev-libs/glib-2.68.0:2 - >=x11-libs/cairo-1.4 - >=dev-db/sqlite-1.12:3 - >=gui-libs/gtk-4:4 - >=net-libs/libsoup-3.0:3.0 - introspection? ( >=dev-libs/gobject-introspection-0.6.3:= ) -" -# vector-renderer? ( -# >=dev-libs/json-glib-1.6.0[introspection?] -# dev-libs/protobuf-c -# ) - -DEPEND="${RDEPEND} - sysprof? ( dev-util/sysprof-capture:4 ) -" -BDEPEND=" - gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) - vala? ( $(vala_depend) ) -" - -src_configure() { - local emesonargs=( - $(meson_use introspection gir) - $(meson_use vala vapi) - $(meson_use gtk-doc gtk_doc) - -Ddemos=false # only built, not installed - # $(meson_use vector-renderer vector_renderer) - -Dvector_renderer=false - -Dlibsoup3=true - $(meson_feature sysprof) - ) - meson_src_configure -} - -src_test() { - virtx dbus-run-session meson test -C "${BUILD_DIR}" || die 'tests failed' -} - -src_install() { - meson_src_install - if use gtk-doc; then - mkdir -p "${ED}"/usr/share/gtk-doc/html || die - mv "${ED}"/usr/share/doc/libshumate-1.0 "${ED}"/usr/share/gtk-doc/html/libshumate-1.0 || die - fi -} diff --git a/media-libs/libshumate/libshumate-1.2.3.ebuild b/media-libs/libshumate/libshumate-1.2.3.ebuild index 425d110b1dd0..21cd8ca9eff9 100644 --- a/media-libs/libshumate/libshumate-1.2.3.ebuild +++ b/media-libs/libshumate/libshumate-1.2.3.ebuild @@ -10,7 +10,7 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/libshumate" LICENSE="LGPL-2.1+" SLOT="1.0/1" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~sparc ~x86" +KEYWORDS="amd64 ~arm arm64 ~ppc64 ~sparc x86" REQUIRED_USE="gtk-doc? ( introspection )" IUSE="gtk-doc +introspection sysprof vala" @@ -33,6 +33,10 @@ BDEPEND=" vala? ( $(vala_depend) ) " +PATCHES=( + "${FILESDIR}"/${PN}-1.2.3-json-glib-1.9.2.patch +) + src_configure() { local emesonargs=( $(meson_use introspection gir) diff --git a/media-libs/libshumate/libshumate-1.2.2.ebuild b/media-libs/libshumate/libshumate-1.3.1.ebuild index 425d110b1dd0..a7b27b98c0ee 100644 --- a/media-libs/libshumate/libshumate-1.2.2.ebuild +++ b/media-libs/libshumate/libshumate-1.3.1.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 diff --git a/media-libs/libsidplay/libsidplay-1.36.59-r3.ebuild b/media-libs/libsidplay/libsidplay-1.36.59-r3.ebuild index 871874ea1d4f..ae7adefd6545 100644 --- a/media-libs/libsidplay/libsidplay-1.36.59-r3.ebuild +++ b/media-libs/libsidplay/libsidplay-1.36.59-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,9 +12,6 @@ SRC_URI="http://critical.ch/distfiles/${P}.tgz" LICENSE="GPL-2" SLOT="1" KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv sparc x86" -IUSE="" -DEPEND="" -RDEPEND="" DOCS=( AUTHORS DEVELOPER ) PATCHES=( diff --git a/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild b/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild index 4cc0dd9e7a70..80891d2e8e6f 100644 --- a/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild +++ b/media-libs/libsidplay/libsidplay-2.1.1-r7.ebuild @@ -8,8 +8,9 @@ inherit autotools flag-o-matic multilib-minimal MY_P=sidplay-libs-${PV} DESCRIPTION="C64 SID player library" -HOMEPAGE="http://sidplay2.sourceforge.net/" +HOMEPAGE="https://sidplay2.sourceforge.net/" SRC_URI="https://downloads.sourceforge.net/sidplay2/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" LICENSE="GPL-2" SLOT="2" @@ -33,8 +34,6 @@ PATCHES=( "${FILESDIR}"/${P}-clang16.patch ) -S="${WORKDIR}/${MY_P}" - src_prepare() { default diff --git a/media-libs/libsidplayfp/Manifest b/media-libs/libsidplayfp/Manifest index 1d9c72453f0d..42f818b53432 100644 --- a/media-libs/libsidplayfp/Manifest +++ b/media-libs/libsidplayfp/Manifest @@ -1,3 +1 @@ -DIST libsidplayfp-2.10.0.tar.gz 811416 BLAKE2B 5d81c1c74eccb5b4e176a82e1232eed7a5687bd6dd5c22b0941d414be438db54f0d303bb0c26445404beb94f9d01cf78ec57983e8a11dd265ec6f94947a71b2b SHA512 ebffc99d04e4e5ef309636c08105b42150c5b707bcb6ecd196ee6956f301ae152efdfdd86b14276e31a0936d97cc534caec4e2281249df6ba7571926a1daffeb -DIST libsidplayfp-2.10.1.tar.gz 812511 BLAKE2B 7c4a8c276a0adf75f96cebaf7931f314bdc097df8e682d2894b9903b574e2a6dd5d9b6619243aceb3458e70d29041c4549aaefe45fb37bb9312333d5d03322f8 SHA512 b8a15b34b0c834b037fc35ae9c968505322f9fb4971313ca59a0a8d22e31580354e18fda530246c0086079a9f9ff40e9c54f93279831817dc377fa9c9894bb20 DIST libsidplayfp-2.11.0.tar.gz 813488 BLAKE2B 6bb8f37e5272c166ba5fe804395c676becb366fbf2adff0831236eaa46f889811f9173f99a7b0e67f986dfbc8e58b4957b27a39c7b7da2571a7014776bc92c1b SHA512 5f8c32d6964cdd651db0718b8f02d7fcbf829c58ed15bc8fa07f5cc0a452954ec93b041f54641744b597a8e67b6c723df6031b00685231e931f6388c294ea172 diff --git a/media-libs/libsidplayfp/libsidplayfp-2.10.0.ebuild b/media-libs/libsidplayfp/libsidplayfp-2.10.0.ebuild deleted file mode 100644 index 4eefc5282af5..000000000000 --- a/media-libs/libsidplayfp/libsidplayfp-2.10.0.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Library for the sidplay2 fork with resid-fp" -HOMEPAGE="https://sourceforge.net/projects/sidplay-residfp/" -SRC_URI="https://downloads.sourceforge.net/sidplay-residfp/${PN}/$(ver_cut 1-2)/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0/6" -KEYWORDS="amd64 ~hppa ~riscv x86" -IUSE="static-libs" - -src_prepare() { - default - # fix automagic. warning: modifying .ac triggers maintainer mode. - sed -i -e 's:doxygen:dIsAbLe&:' configure || die -} - -src_configure() { - econf \ - $(use_enable static-libs static) -} - -src_install() { - default - find "${D}" -name '*.la' -delete || die -} diff --git a/media-libs/libsidplayfp/libsidplayfp-2.10.1.ebuild b/media-libs/libsidplayfp/libsidplayfp-2.10.1.ebuild deleted file mode 100644 index bc7c3460f07e..000000000000 --- a/media-libs/libsidplayfp/libsidplayfp-2.10.1.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Library for the sidplay2 fork with resid-fp" -HOMEPAGE="https://sourceforge.net/projects/sidplay-residfp/" -SRC_URI="https://downloads.sourceforge.net/sidplay-residfp/${PN}/$(ver_cut 1-2)/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0/6" -KEYWORDS="~amd64 ~hppa ~riscv ~x86" -IUSE="static-libs" - -src_prepare() { - default - # fix automagic. warning: modifying .ac triggers maintainer mode. - sed -i -e 's:doxygen:dIsAbLe&:' configure || die -} - -src_configure() { - econf \ - $(use_enable static-libs static) -} - -src_install() { - default - find "${D}" -name '*.la' -delete || die -} diff --git a/media-libs/libsidplayfp/libsidplayfp-2.11.0.ebuild b/media-libs/libsidplayfp/libsidplayfp-2.11.0.ebuild index bc7c3460f07e..4eefc5282af5 100644 --- a/media-libs/libsidplayfp/libsidplayfp-2.11.0.ebuild +++ b/media-libs/libsidplayfp/libsidplayfp-2.11.0.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://downloads.sourceforge.net/sidplay-residfp/${PN}/$(ver_cut 1-2)/ LICENSE="GPL-2" SLOT="0/6" -KEYWORDS="~amd64 ~hppa ~riscv ~x86" +KEYWORDS="amd64 ~hppa ~riscv x86" IUSE="static-libs" src_prepare() { diff --git a/media-libs/libsixel/Manifest b/media-libs/libsixel/Manifest index 4eb122615413..d27281a5b66f 100644 --- a/media-libs/libsixel/Manifest +++ b/media-libs/libsixel/Manifest @@ -1 +1,2 @@ DIST libsixel-1.10.3.tar.gz 4272940 BLAKE2B f65d9a3bdd54917f5746b7b1650dfca7084c64b505ea9cae07863c476d1189114d9fb303ec01d8fa209542e891f1d359ec6dbdc9babc4313b06b709813fab020 SHA512 ef16f9ccecec8289728ec84ce9f24145648f8a38184c1ec3df8ead3499c6cf7d3e0a0c738f8bfcb1093e16ee8ae7ce5e46d3890707c8104752ce4ab7eb3bc7ac +DIST libsixel-1.10.5.tar.gz 4286415 BLAKE2B a05981c627529ba0bc045726d46a865b676f7057e436b2b9ed367738d655ac149b5a524e8da7379b56275eb62a113c9acbfe0f7ad8066a08fd583b29eae2277b SHA512 94fc972ee304885936d5d8fbc3dadc5feadebf1ab262bb49c9ae9b1eed19c528ed823f4d31c17326340f06a5b7ee28a1817be15ae55c3e9d0c4437cd36b3e49d diff --git a/media-libs/libsixel/libsixel-1.10.5.ebuild b/media-libs/libsixel/libsixel-1.10.5.ebuild new file mode 100644 index 000000000000..447a8603bc2a --- /dev/null +++ b/media-libs/libsixel/libsixel-1.10.5.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +PYTHON_COMPAT=( python3_{10..12} ) +DISTUTILS_USE_PEP517="setuptools" +DISTUTILS_OPTIONAL="1" + +inherit bash-completion-r1 distutils-r1 meson + +DESCRIPTION="A lightweight, fast implementation of DEC SIXEL graphics codec" +HOMEPAGE="https://github.com/libsixel/libsixel" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT public-domain" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="curl gd gtk jpeg png python test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="curl? ( net-misc/curl ) + gd? ( media-libs/gd ) + gtk? ( x11-libs/gdk-pixbuf:2 ) + jpeg? ( media-libs/libjpeg-turbo:= ) + png? ( media-libs/libpng:0 ) + python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + python? ( + ${PYTHON_DEPS} + ${DISTUTILS_DEPS} + )" + +src_prepare() { + sed -i '/^have/d' converters/shell-completion/bash/img2sixel + + default + if use python; then + cd python || die + distutils-r1_src_prepare + cd - >/dev/null || die + fi +} + +src_configure() { + emesonargs=( + $(meson_feature curl libcurl) + $(meson_feature gd) + $(meson_feature gtk gdk-pixbuf2) + $(meson_feature jpeg) + $(meson_feature png) + $(meson_feature test tests) + -Dbashcompletiondir="$(get_bashcompdir)" + ) + meson_src_configure + if use python; then + cd python || die + distutils-r1_src_configure + cd - >/dev/null || die + fi +} + +src_compile() { + meson_src_compile + if use python; then + cd python || die + distutils-r1_src_compile + cd - >/dev/null || die + fi +} + +src_install() { + meson_src_install + + cd images || die + docompress -x /usr/share/doc/${PF}/images + docinto images + dodoc egret.jpg map{8,16}.png snake.jpg vimperator3.png + cd - >/dev/null || die + + if use python; then + cd python || die + distutils-r1_src_install + cd - >/dev/null || die + fi +} diff --git a/media-libs/libsndfile/libsndfile-1.2.2-r2.ebuild b/media-libs/libsndfile/libsndfile-1.2.2-r2.ebuild index dc08adbb90a0..21634fd6b8ab 100644 --- a/media-libs/libsndfile/libsndfile-1.2.2-r2.ebuild +++ b/media-libs/libsndfile/libsndfile-1.2.2-r2.ebuild @@ -12,7 +12,7 @@ else SRC_URI="https://github.com/libsndfile/libsndfile/releases/download/${PV}/${P}.tar.xz" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi -inherit python-any-r1 multilib-minimal +inherit flag-o-matic python-any-r1 multilib-minimal DESCRIPTION="C library for reading and writing files containing sampled sound" HOMEPAGE="https://libsndfile.github.io/libsndfile/" @@ -49,8 +49,16 @@ src_prepare() { [[ ${PV} == *9999 ]] && eautoreconf } +src_configure() { + # https://github.com/libsndfile/libsndfile/issues/1049 (bug #943864) + append-cflags -std=gnu17 + + multilib-minimal_src_configure +} + multilib_src_configure() { - ECONF_SOURCE="${S}" econf \ + # CONFIG_SHELL hack can be dropped >1.2.2 (bug #923921) + CONFIG_SHELL="${BROOT}"/bin/bash ECONF_SOURCE="${S}" econf \ --disable-octave \ --disable-static \ --disable-werror \ diff --git a/media-libs/libsndfile/libsndfile-9999.ebuild b/media-libs/libsndfile/libsndfile-9999.ebuild index d75e3910471e..f32a95a3585c 100644 --- a/media-libs/libsndfile/libsndfile-9999.ebuild +++ b/media-libs/libsndfile/libsndfile-9999.ebuild @@ -12,7 +12,7 @@ else SRC_URI="https://github.com/libsndfile/libsndfile/releases/download/${PV}/${P}.tar.xz" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" fi -inherit python-any-r1 multilib-minimal +inherit flag-o-matic python-any-r1 multilib-minimal DESCRIPTION="C library for reading and writing files containing sampled sound" HOMEPAGE="https://libsndfile.github.io/libsndfile/" @@ -49,6 +49,13 @@ src_prepare() { [[ ${PV} == *9999 ]] && eautoreconf } +src_configure() { + # https://github.com/libsndfile/libsndfile/issues/1049 (bug #943864) + append-cflags -std=gnu17 + + multilib-minimal_src_configure +} + multilib_src_configure() { ECONF_SOURCE="${S}" econf \ --disable-octave \ diff --git a/media-libs/libsoundtouch/libsoundtouch-2.3.3.ebuild b/media-libs/libsoundtouch/libsoundtouch-2.3.3.ebuild index 27b608d12942..fbf04002b684 100644 --- a/media-libs/libsoundtouch/libsoundtouch-2.3.3.ebuild +++ b/media-libs/libsoundtouch/libsoundtouch-2.3.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit autotools multilib-minimal toolchain-funcs +inherit autotools flag-o-matic multilib-minimal toolchain-funcs MY_PN=${PN/lib} MY_P=${MY_PN}-${PV} @@ -31,6 +31,11 @@ pkg_setup() { src_prepare() { default sed -i "s:^\(dist_doc_DATA=\)COPYING.TXT :\1:" Makefile.am || die + + if tc-is-clang && use openmp ; then + append-libs omp + fi + eautoreconf } diff --git a/media-libs/libtgvoip/Manifest b/media-libs/libtgvoip/Manifest index 9187fef08c5a..1dde5c9e14c8 100644 --- a/media-libs/libtgvoip/Manifest +++ b/media-libs/libtgvoip/Manifest @@ -1,2 +1 @@ -DIST libtgvoip-2.4.4_p20221208.tar.gz 1098020 BLAKE2B 6f1eae38e4396ca3b88ab4337176a6076d5f9008b2a865cd286265a9b73d83d44c2cc6828b65dcb580a897a19badeab502395e2128a15c276ae796ac1ab0da68 SHA512 62243629890b1c13f1dbbffae4f82964a0fe23d2071852730674ccbef31126c6e205cfa526f07ba1549ef8eae31e371fb4335ce5f95fd649560bee2b3b530e64 DIST libtgvoip-2.4.4_p20240706.tar.gz 1089879 BLAKE2B 0b0b83d4c43b18ab6af0cfd2795887180c4cb89d2b4ca22680a472e61c4908a4d2634fcb14677702bc9dc10e0df8d61029e0d361aa53303940cfbec36516afee SHA512 80d09c3e2a02461a2e71855ef086d453c4a95829c8183c7768f390bef82ab2124a3059931a043704e010d5e9ca512ee3001eb054dd3903f84ab51970e52e2ef4 diff --git a/media-libs/libtgvoip/libtgvoip-2.4.4_p20221208-r1.ebuild b/media-libs/libtgvoip/libtgvoip-2.4.4_p20221208-r1.ebuild deleted file mode 100644 index 77f3eb6081f8..000000000000 --- a/media-libs/libtgvoip/libtgvoip-2.4.4_p20221208-r1.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 2020-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic autotools - -DESCRIPTION="VoIP library for Telegram clients" -HOMEPAGE="https://github.com/telegramdesktop/libtgvoip" - -LIBTGVOIP_COMMIT="0ffe2e51bfe14b533b860002f1c2e87e5f8c00c0" -SRC_URI="https://github.com/telegramdesktop/libtgvoip/archive/${LIBTGVOIP_COMMIT}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/${PN}-${LIBTGVOIP_COMMIT}" - -LICENSE="Unlicense" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv" -IUSE="+dsp +alsa pulseaudio" - -DEPEND=" - dev-libs/openssl:= - media-libs/opus - alsa? ( media-libs/alsa-lib ) - dsp? ( media-libs/tg_owt:= ) - pulseaudio? ( media-libs/libpulse ) -" -RDEPEND="${DEPEND}" -BDEPEND="virtual/pkgconfig" -REQUIRED_USE=" - || ( alsa pulseaudio ) -" - -src_prepare() { - # Will be controlled by us - sed -i -e '/^CFLAGS += -DTGVOIP_NO_DSP/d' Makefile.am || die - # https://bugs.gentoo.org/717210 - echo 'libtgvoip_la_LIBTOOLFLAGS = --tag=CXX' >> Makefile.am || die - default - eautoreconf -} - -src_configure() { - # Not using the CMake build despite being the preferred one, because - # it's lacking relevant configure options. - local myconf=( - --disable-dsp # WebRTC is linked from tg_owt - $(use_with alsa) - $(use_with pulseaudio pulse) - ) - if use dsp; then - append-cppflags "-I${ESYSROOT}/usr/include/tg_owt" - append-cppflags "-I${ESYSROOT}/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/libuninameslist/libuninameslist-20230916.ebuild b/media-libs/libuninameslist/libuninameslist-20230916.ebuild index 6b5f5eacb206..71bb700227b5 100644 --- a/media-libs/libuninameslist/libuninameslist-20230916.ebuild +++ b/media-libs/libuninameslist/libuninameslist-20230916.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" src_configure() { econf --enable-frenchlib diff --git a/media-libs/libv4l/libv4l-1.28.1.ebuild b/media-libs/libv4l/libv4l-1.28.1.ebuild index 0baeeb18e021..83f0046abb39 100644 --- a/media-libs/libv4l/libv4l-1.28.1.ebuild +++ b/media-libs/libv4l/libv4l-1.28.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit linux-info meson-multilib systemd udev xdg +inherit eapi9-ver linux-info meson-multilib systemd udev xdg MY_P="v4l-utils-${PV}" @@ -14,11 +14,10 @@ S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2.1+" SLOT="0/0" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="bpf doc dvb jpeg qt5 qt6 tracer +utils" +IUSE="bpf doc dvb jpeg qt6 tracer +utils" REQUIRED_USE=" bpf? ( utils ) - qt5? ( utils ) qt6? ( utils ) tracer? ( utils ) " @@ -38,14 +37,6 @@ RDEPEND=" media-libs/alsa-lib virtual/opengl ) - !qt6? ( qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtopengl:5[-gles2-only(-),-gles2(-)] - dev-qt/qtwidgets:5 - media-libs/alsa-lib - virtual/opengl - ) ) tracer? ( dev-libs/json-c:= ) virtual/libudev ) @@ -59,12 +50,11 @@ DEPEND=" BDEPEND=" sys-devel/gettext virtual/pkgconfig - bpf? ( sys-devel/clang:*[llvm_targets_BPF] ) + bpf? ( llvm-core/clang:*[llvm_targets_BPF] ) doc? ( app-text/doxygen ) utils? ( dev-lang/perl qt6? ( dev-qt/qtbase:6 ) - !qt6? ( qt5? ( dev-qt/qtcore:5 ) ) ) " @@ -80,7 +70,7 @@ check_llvm() { } pkg_pretend() { - has_version -b sys-devel/clang && check_llvm + has_version -b llvm-core/clang && check_llvm } pkg_setup() { @@ -108,7 +98,7 @@ multilib_src_configure() { $(meson_native_use_bool doc doxygen-html) $(meson_native_use_bool doc doxygen-man) ) - if multilib_is_native_abi && { use qt6 || use qt5; }; then + if multilib_is_native_abi && use qt6; then emesonargs+=( -Dqv4l2=enabled -Dqvidcap=enabled @@ -138,7 +128,7 @@ pkg_postinst() { xdg_pkg_postinst use utils && udev_reload - if use utils && [[ -n ${REPLACING_VERSIONS} ]] && ver_test 1.20.0 -ge ${REPLACING_VERSIONS%% *}; then + if use utils && ver_replacing -lt 1.20.0; then ewarn "WARNING! ir-keytable has changed significantly from version 1.20.0 so" ewarn "you may need to take action to avoid breakage. See" ewarn "https://bugs.gentoo.org/767175 for more details." diff --git a/media-libs/libva-intel-media-driver/Manifest b/media-libs/libva-intel-media-driver/Manifest index 355ca5b3fb50..a7b0d926e64e 100644 --- a/media-libs/libva-intel-media-driver/Manifest +++ b/media-libs/libva-intel-media-driver/Manifest @@ -1,2 +1,3 @@ -DIST intel-media-24.3.4.tar.gz 27623962 BLAKE2B 0f4eb4321db0b3f1ce05461d0321777918dbb7ac1e28dc916040ca252441c7682650c6af0224588c445ccb06cc1c28b8d5ff47b7a0b271e83b1a97cf3af6e67d SHA512 015915b4265fafa5cb619ac69e1cbd3f17ac22fc51dcb9455782cad097dd494c28cdcc9c4c184c739216b419a5b1ec5730ee19d9dedfc83e20761803a3e89d81 -DIST intel-media-24.4.2.tar.gz 27670782 BLAKE2B a89df89b15cb800fd9e90e8ffaee6ee76cdaa3b97d49feacb0c40e2ff7ac44db38dd2ef4fd65b25bdc4450d95c20559b1a9cb3f87e9f7916568ef7fdea631685 SHA512 63f68c2fec1608082b5e1892b7f0cfadbd9e7c2ccacf681e2e596d020d15dbd8dd95bbff353cf7e987dc9a2638b498594b42c36b366ba9bc8cdf5795f38b23fe +DIST intel-media-24.4.4.tar.gz 27696988 BLAKE2B cf13b3d0feb005b204892a62402d2a044661279b419bbc47ac414691a5238ada5dc2d59e848a9d53219163420e6b2d364a563f57e10488325587405e2add8ef3 SHA512 0a34a707082a3d7032b472667640d40761f1c9425e291002d2bd2af42d57d69ec3cf6e835430e731ff6c7eb24b22b1843c0b83812001f4ed203fd55097a2c6dc +DIST intel-media-25.1.0.tar.gz 28243498 BLAKE2B 7b0982cf06c13754897c46ca3c54b3d0d0d9c1b8aff6066c148770946f83655185bc02f67d83c762a2843969f6f70b4fae56c6853930ff228059e6ff7484b7bd SHA512 20c0f7952a59ab86a6e6c1281c198961d835380e5d4f17fe2cc1c74a31da426560cc244950e6e91f0b4fb659133e461f5ba539c7000ad26e8032fc2aaf79c416 +DIST intel-media-25.1.1.tar.gz 28255804 BLAKE2B 960c53a7f9920b782c2c4fa10a37c1de4b51271a37ec3b6eea1a814d842d4725564122e3d1b4b1a28dfa4beda80f13db20fe64831a5cdeeb5c299e754d2576f2 SHA512 dcdbbd5c7e2b5ae93784cc38229aab6bd9a330bcde08e6f7597264d9124a5044086c67e08828dfe81292b233e33148fe9b5426cf2d0003f62b3af6452f07de57 diff --git a/media-libs/libva-intel-media-driver/files/libva-intel-media-driver-24.4.4-c23-fix.patch b/media-libs/libva-intel-media-driver/files/libva-intel-media-driver-24.4.4-c23-fix.patch new file mode 100644 index 000000000000..7152c47ce0b0 --- /dev/null +++ b/media-libs/libva-intel-media-driver/files/libva-intel-media-driver-24.4.4-c23-fix.patch @@ -0,0 +1,15 @@ +From https://patch-diff.githubusercontent.com/raw/intel/media-driver/pull/1849.patch +From: Blackteahamburger <blackteahamburger@outlook.com> +Date: Thu, 29 Aug 2024 17:04:55 +0800 +Subject: [PATCH] Fix missing cstdint for GCC 15 + +--- a/media_common/linux/common/os/mos_defs_specific.h ++++ b/media_common/linux/common/os/mos_defs_specific.h +@@ -29,6 +29,7 @@ + + #include <pthread.h> + #include <semaphore.h> ++#include <cstdint> + #include <string> + + typedef pthread_mutex_t MOS_MUTEX, *PMOS_MUTEX; //!< mutex pointer diff --git a/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.4.4-r1.ebuild b/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.4.4-r1.ebuild new file mode 100644 index 000000000000..42b21fba8de1 --- /dev/null +++ b/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.4.4-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib flag-o-matic + +if [[ ${PV} == *9999 ]] ; then + : ${EGIT_REPO_URI:="https://github.com/intel/media-driver"} + if [[ ${PV%9999} != "" ]] ; then + : ${EGIT_BRANCH:="release/${PV%.9999}"} + fi + inherit git-r3 +else + MY_PV="${PV%_pre}" + SRC_URI="https://github.com/intel/media-driver/archive/intel-media-${MY_PV}.tar.gz" + S="${WORKDIR}/media-driver-intel-media-${MY_PV}" + if [[ ${PV} != *_pre* ]] ; then + KEYWORDS="amd64" + fi +fi + +DESCRIPTION="Intel Media Driver for VA-API (iHD)" +HOMEPAGE="https://github.com/intel/media-driver" + +LICENSE="MIT BSD redistributable? ( no-source-code )" +SLOT="0" +IUSE="+redistributable test X" + +RESTRICT="!test? ( test )" + +DEPEND=">=media-libs/gmmlib-22.5.4:=[${MULTILIB_USEDEP}] + >=media-libs/libva-2.22.0[X?,${MULTILIB_USEDEP}] +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-23.3.4-Remove-unwanted-CFLAGS.patch + "${FILESDIR}"/${PN}-23.3.4_testing_in_src_test.patch + "${FILESDIR}"/${PN}-24.4.4-c23-fix.patch +) + +multilib_src_configure() { + # https://github.com/intel/media-driver/issues/356 + append-cxxflags -D_FILE_OFFSET_BITS=64 + + local mycmakeargs=( + -DMEDIA_BUILD_FATAL_WARNINGS=OFF + -DMEDIA_RUN_TEST_SUITE=$(usex test) + -DBUILD_TYPE=Release + -DPLATFORM=linux + -DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex !X) + -DENABLE_NONFREE_KERNELS=$(usex redistributable) + -DLATEST_CPP_NEEDED=ON # Seems to be the best option for now + ) + local CMAKE_BUILD_TYPE="Release" + cmake_src_configure +} diff --git a/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.4.2.ebuild b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.0.ebuild index 42f6583e9710..a27f472ef10b 100644 --- a/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.4.2.ebuild +++ b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.0.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 @@ -29,7 +29,7 @@ IUSE="+redistributable test X" RESTRICT="!test? ( test )" -DEPEND=">=media-libs/gmmlib-22.5.0:=[${MULTILIB_USEDEP}] +DEPEND=">=media-libs/gmmlib-22.6.0:=[${MULTILIB_USEDEP}] >=media-libs/libva-2.22.0[X?,${MULTILIB_USEDEP}] " RDEPEND="${DEPEND}" diff --git a/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.3.4.ebuild b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.1.ebuild index 68e5df8b6f80..a27f472ef10b 100644 --- a/media-libs/libva-intel-media-driver/libva-intel-media-driver-24.3.4.ebuild +++ b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.1.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 @@ -16,7 +16,7 @@ else SRC_URI="https://github.com/intel/media-driver/archive/intel-media-${MY_PV}.tar.gz" S="${WORKDIR}/media-driver-intel-media-${MY_PV}" if [[ ${PV} != *_pre* ]] ; then - KEYWORDS="amd64" + KEYWORDS="~amd64" fi fi @@ -29,7 +29,7 @@ IUSE="+redistributable test X" RESTRICT="!test? ( test )" -DEPEND=">=media-libs/gmmlib-22.3.20:=[${MULTILIB_USEDEP}] +DEPEND=">=media-libs/gmmlib-22.6.0:=[${MULTILIB_USEDEP}] >=media-libs/libva-2.22.0[X?,${MULTILIB_USEDEP}] " RDEPEND="${DEPEND}" diff --git a/media-libs/libva-intel-media-driver/libva-intel-media-driver-9999.ebuild b/media-libs/libva-intel-media-driver/libva-intel-media-driver-9999.ebuild index 343e7ed8c609..a27f472ef10b 100644 --- a/media-libs/libva-intel-media-driver/libva-intel-media-driver-9999.ebuild +++ b/media-libs/libva-intel-media-driver/libva-intel-media-driver-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 @@ -29,8 +29,8 @@ IUSE="+redistributable test X" RESTRICT="!test? ( test )" -DEPEND=">=media-libs/gmmlib-22.3.20:=[${MULTILIB_USEDEP}] - >=media-libs/libva-2.21.0[X?,${MULTILIB_USEDEP}] +DEPEND=">=media-libs/gmmlib-22.6.0:=[${MULTILIB_USEDEP}] + >=media-libs/libva-2.22.0[X?,${MULTILIB_USEDEP}] " RDEPEND="${DEPEND}" diff --git a/media-libs/libvisio/libvisio-0.1.8.ebuild b/media-libs/libvisio/libvisio-0.1.8.ebuild index 3b50dc5240e3..57de08828523 100644 --- a/media-libs/libvisio/libvisio-0.1.8.ebuild +++ b/media-libs/libvisio/libvisio-0.1.8.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 @@ -10,7 +10,7 @@ if [[ ${PV} == *9999* ]]; then inherit autotools git-r3 else SRC_URI="https://dev-www.libreoffice.org/src/libvisio/${P}.tar.xz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86" fi DESCRIPTION="Library parsing the file format of MS Visio documents" diff --git a/media-libs/libvpl-tools/Manifest b/media-libs/libvpl-tools/Manifest index 1d2ab598207f..8226751ddb7e 100644 --- a/media-libs/libvpl-tools/Manifest +++ b/media-libs/libvpl-tools/Manifest @@ -1,2 +1,2 @@ -DIST libvpl-tools-1.1.0.tar.gz 1282378 BLAKE2B 4565c5f4c3c7128a925882877f432ac4618ea8d3df05ec308cb6d6b0201fd94953597ce42f1e90dec73ad02612c74afa9deea1a68116436f78204f92ecfeb1e8 SHA512 2aa1e8bca981018bfd09a1500062f468364e7dac51c8643c08103ad3adf791e67b718bec01388143f95e2b1d47eac0cab8a31100574124fae825e8272d4fc87e DIST libvpl-tools-1.2.0.tar.gz 1294249 BLAKE2B 8a9e8db303d7b0632c7a0e8b03fa1ebff79dedbe581e185824f731415fb3bb9bc58712551ccea9354d0f8b04755efc222c27d1b1e9f6a34d7fd1982d89bb4dd5 SHA512 e44e752aec48673ff93c7d6eaa9363150607e299008b5df6bed2a6373355c37483d68d703b2e45586ff6062a83ef87fabbd70c034926389873bb3470b1712bc4 +DIST libvpl-tools-1.3.0.tar.gz 1303138 BLAKE2B 7b219049e837b71cd2ce4f9d5b152873d5a6d9fea642b2908e7132d5d38c72cc251be4d9113f658452d2064486f2d4ebe9036b40ee1680792afd2b893b6cd9fe SHA512 8aa91258a78bdbb1ab3814f3f7a3647e95b01a0f580bee8e5b66fdb850eec3e63250ea31897c462c747ed9ceff03593e800d22f899bd453617b4be20cf50596b diff --git a/media-libs/libvpl-tools/files/libvpl-tools-1.2.0_do-not-fortify-source.patch b/media-libs/libvpl-tools/files/libvpl-tools-1.2.0_do-not-fortify-source.patch new file mode 100644 index 000000000000..94fd05d1a7e8 --- /dev/null +++ b/media-libs/libvpl-tools/files/libvpl-tools-1.2.0_do-not-fortify-source.patch @@ -0,0 +1,23 @@ +From: Filip Kobierski <fkobi@pm.me> + +--- + cmake/CompileOptions.cmake | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/cmake/CompileOptions.cmake b/cmake/CompileOptions.cmake +index 02926c4..bba557d 100644 +--- a/cmake/CompileOptions.cmake ++++ b/cmake/CompileOptions.cmake +@@ -51,9 +51,6 @@ else() + add_compile_options("-Werror=format-security") + if(NOT MINGW) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE) +- if(NOT CMAKE_BUILD_TYPE MATCHES debug) +- add_definitions("-D_FORTIFY_SOURCE=2") +- endif() + endif() + if(NOT MINGW) + add_compile_options("-fstack-protector-strong") +-- +2.45.2 + diff --git a/media-libs/libvpl-tools/libvpl-tools-1.2.0.ebuild b/media-libs/libvpl-tools/libvpl-tools-1.2.0-r1.ebuild index 60f9e36be1fe..bb09032dafcc 100644 --- a/media-libs/libvpl-tools/libvpl-tools-1.2.0.ebuild +++ b/media-libs/libvpl-tools/libvpl-tools-1.2.0-r1.ebuild @@ -47,6 +47,8 @@ DEPEND="${RDEPEND} BDEPEND="virtual/pkgconfig" +PATCHES=( "${FILESDIR}"/${PN}-1.2.0_do-not-fortify-source.patch ) + src_configure() { local mycmakeargs=( -DBUILD_SHARED_LIBS=ON diff --git a/media-libs/libvpl-tools/libvpl-tools-1.1.0.ebuild b/media-libs/libvpl-tools/libvpl-tools-1.3.0.ebuild index 60f9e36be1fe..bb09032dafcc 100644 --- a/media-libs/libvpl-tools/libvpl-tools-1.1.0.ebuild +++ b/media-libs/libvpl-tools/libvpl-tools-1.3.0.ebuild @@ -47,6 +47,8 @@ DEPEND="${RDEPEND} BDEPEND="virtual/pkgconfig" +PATCHES=( "${FILESDIR}"/${PN}-1.2.0_do-not-fortify-source.patch ) + src_configure() { local mycmakeargs=( -DBUILD_SHARED_LIBS=ON diff --git a/media-libs/libvpl-tools/metadata.xml b/media-libs/libvpl-tools/metadata.xml index fa93f977ac83..4cd94fde2649 100644 --- a/media-libs/libvpl-tools/metadata.xml +++ b/media-libs/libvpl-tools/metadata.xml @@ -6,6 +6,8 @@ <name>Nowa Ammerlaan</name> </maintainer> <upstream> + <bugs-to>https://github.com/intel/libvpl-tools/issues</bugs-to> + <changelog>https://github.com/intel/libvpl-tools/blob/main/CHANGELOG.md</changelog> <remote-id type="github">intel/libvpl-tools</remote-id> </upstream> <use> diff --git a/media-libs/libvpl/Manifest b/media-libs/libvpl/Manifest index caea851a32ed..d595022821a5 100644 --- a/media-libs/libvpl/Manifest +++ b/media-libs/libvpl/Manifest @@ -1,2 +1,2 @@ -DIST libvpl-2.12.0.tar.gz 11398775 BLAKE2B e1f0a59f7261dae399eae39318b0c9c9fc671a013c4b7442af34025dce981112f6d254e39f1de432e4f4f155d00148ec9c89652e05734e1ba9cfd6e14f54d4c0 SHA512 4a9f0272684c896ca8a11c316fe05f7ea60c0cd402b0b474a90523f5aca1a16cffac84d89758c27d837ca6e7ac68b82d6aec028ee7aa237626a2194709f48782 DIST libvpl-2.13.0.tar.gz 12952887 BLAKE2B e90bb3a99127b07dc29c9bf8ea2411f4b360344e11050c1e5821840eed9a54c0d73d88aabf425dbda7313b95e416f5323ee535b9c5e5f11d76c4e0465e1ca16e SHA512 22b9f409a9b8ed551847e1b5a94d0c48502b5fbf68ec28021ba36d3f851ef83896205977e6b7f52c102f747a8fbc793424181ecd7edaf6058a39dc15b78d19cd +DIST libvpl-2.14.0.tar.gz 12958172 BLAKE2B 2aa47e076da70969233a47e79a3c92bb1c406221f8cf335f55745f7b3a25ea688d6a07d413a80afbab67d8576b7480472a319acdff452bec9a62ef67103f589f SHA512 7557f4054b84ba4425e6a50c4abd24594ef7c9a21c27137a971987634cdf5ed54e82c76d92b6740f3183a49b92edb6a5848f584c619bd30b2fbd821706bba1e4 diff --git a/media-libs/libvpl/files/libvpl-2.13.0_do-not-fortify-source.patch b/media-libs/libvpl/files/libvpl-2.13.0_do-not-fortify-source.patch new file mode 100644 index 000000000000..94fd05d1a7e8 --- /dev/null +++ b/media-libs/libvpl/files/libvpl-2.13.0_do-not-fortify-source.patch @@ -0,0 +1,23 @@ +From: Filip Kobierski <fkobi@pm.me> + +--- + cmake/CompileOptions.cmake | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/cmake/CompileOptions.cmake b/cmake/CompileOptions.cmake +index 02926c4..bba557d 100644 +--- a/cmake/CompileOptions.cmake ++++ b/cmake/CompileOptions.cmake +@@ -51,9 +51,6 @@ else() + add_compile_options("-Werror=format-security") + if(NOT MINGW) + string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE) +- if(NOT CMAKE_BUILD_TYPE MATCHES debug) +- add_definitions("-D_FORTIFY_SOURCE=2") +- endif() + endif() + if(NOT MINGW) + add_compile_options("-fstack-protector-strong") +-- +2.45.2 + diff --git a/media-libs/libvpl/libvpl-2.12.0.ebuild b/media-libs/libvpl/libvpl-2.13.0-r1.ebuild index a30f50707598..78694b54c476 100644 --- a/media-libs/libvpl/libvpl-2.12.0.ebuild +++ b/media-libs/libvpl/libvpl-2.13.0-r1.ebuild @@ -6,7 +6,7 @@ EAPI=8 inherit cmake-multilib optfeature flag-o-matic DESCRIPTION="Intel Video Processing Library dispatcher" -HOMEPAGE="https://github.com/intel/libvpl/" +HOMEPAGE="https://github.com/intel/libvpl" SRC_URI="https://github.com/intel/libvpl/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" @@ -22,6 +22,8 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" +PATCHES=( "${FILESDIR}"/${PN}-2.13.0_do-not-fortify-source.patch ) + src_prepare() { filter-lto cmake_src_prepare diff --git a/media-libs/libvpl/libvpl-2.13.0.ebuild b/media-libs/libvpl/libvpl-2.14.0.ebuild index a30f50707598..78694b54c476 100644 --- a/media-libs/libvpl/libvpl-2.13.0.ebuild +++ b/media-libs/libvpl/libvpl-2.14.0.ebuild @@ -6,7 +6,7 @@ EAPI=8 inherit cmake-multilib optfeature flag-o-matic DESCRIPTION="Intel Video Processing Library dispatcher" -HOMEPAGE="https://github.com/intel/libvpl/" +HOMEPAGE="https://github.com/intel/libvpl" SRC_URI="https://github.com/intel/libvpl/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" @@ -22,6 +22,8 @@ RDEPEND=" DEPEND="${RDEPEND}" BDEPEND="virtual/pkgconfig" +PATCHES=( "${FILESDIR}"/${PN}-2.13.0_do-not-fortify-source.patch ) + src_prepare() { filter-lto cmake_src_prepare diff --git a/media-libs/libvpl/metadata.xml b/media-libs/libvpl/metadata.xml index cc06f95011b8..6a94d10f5b12 100644 --- a/media-libs/libvpl/metadata.xml +++ b/media-libs/libvpl/metadata.xml @@ -9,6 +9,8 @@ <name>Nowa Ammerlaan</name> </maintainer> <upstream> + <bugs-to>https://github.com/intel/libvpl/issues</bugs-to> + <changelog>https://github.com/intel/libvpl/blob/main/CHANGELOG.md</changelog> <remote-id type="github">intel/libvpl</remote-id> </upstream> </pkgmetadata> diff --git a/media-libs/libxmp/Manifest b/media-libs/libxmp/Manifest index 42c8b59f01ee..21e83d20a29c 100644 --- a/media-libs/libxmp/Manifest +++ b/media-libs/libxmp/Manifest @@ -1,2 +1 @@ -DIST libxmp-4.5.0.tar.gz 652983 BLAKE2B f583c309b4c4349eec73352d16bbd9b2b20fb48be101f0cba34a3597fce903442fbc203be50f940a7e3b8f53cc1bbf6ff91236fc27c6ec70b21ec17ad71bd6fb SHA512 71a57c7fcd696267c6e2d3cc12b43fe09adce9ed83f9f130755d3b2c2b984eb52e4ae4fad115ffeb07397c7cc4886fc3c4e01cbb1f047449228f7a557760cb1a DIST libxmp-4.6.0.tar.gz 738532 BLAKE2B d383cb2e8c15c27e9f55954a4ae2ead6978b7e073e647ab667a2c0bb15848ff582626611b3f274ac5075bcdb7b5cfdc1a4f95d2ea76dc0ea64dab595ba8ca1b8 SHA512 d287544c9b569515f1a3fa92d8d930097b252e84f86cba5dd70e9b4460d0fa70754ece45dcc7ec314e434d821b43207d700afb12c9df80b467d73e9d029baafe diff --git a/media-libs/libxmp/libxmp-4.5.0.ebuild b/media-libs/libxmp/libxmp-4.5.0.ebuild deleted file mode 100644 index 24a6655017f5..000000000000 --- a/media-libs/libxmp/libxmp-4.5.0.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Library that renders module files to PCM data" -HOMEPAGE="https://github.com/libxmp/libxmp" -if [[ ${PV} == *9999 ]] ; then - inherit autotools git-r3 - EGIT_REPO_URI="https://github.com/libxmp/libxmp.git" -else - SRC_URI="https://github.com/libxmp/${PN}/releases/download/${P}/${P}.tar.gz" - KEYWORDS="amd64" -fi -LICENSE="LGPL-2.1+" -SLOT="0" - -IUSE="" - -src_prepare() { - default - [[ ${PV} == *9999 ]] && eautoreconf -} - -src_compile() { - emake V=1 -} diff --git a/media-libs/libxmp/libxmp-4.6.0.ebuild b/media-libs/libxmp/libxmp-4.6.0.ebuild index ae61d7ce0174..d78efe764773 100644 --- a/media-libs/libxmp/libxmp-4.6.0.ebuild +++ b/media-libs/libxmp/libxmp-4.6.0.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 @@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]] ; then EGIT_REPO_URI="https://github.com/libxmp/libxmp.git" else SRC_URI="https://github.com/libxmp/${PN}/releases/download/${P}/${P}.tar.gz" - KEYWORDS="~amd64 ~x86" + KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~ppc64 ~riscv ~sparc x86" fi # bzip2 depacker code is 0BSD diff --git a/media-libs/lilv/Manifest b/media-libs/lilv/Manifest index 762775868f1a..c007ba0f0b67 100644 --- a/media-libs/lilv/Manifest +++ b/media-libs/lilv/Manifest @@ -1 +1,2 @@ DIST lilv-0.24.24.tar.xz 105684 BLAKE2B 4228248e8dbee228cee193e259d95b2e66f9f2e3516702dfad0dc126273076230274538c32a857ae9ad8a58545bbf48e7791254441dd4d6e537715de9e5e5be6 SHA512 93a3842a5e000a9c59bf3493c2c10df35a803a7edf6cff09f43e155a7e83d0c7c81bc24a6243828dc141d30187c3f60ef9799f319f72e5b6c3e2d022de757185 +DIST lilv-0.24.26.tar.xz 106044 BLAKE2B 23b7a029fd40099420e9e8de222b2534b124a93f899c03c5ada27673fc47431c95866d7d4bc5f34b80110b5142e6564e95390fd56d686ac9958ad8bf71ca6033 SHA512 3d360d63391554f62d1dd44b9ba0fc28e4ccde9640da1e28ef3f127c23c9f03974b66c5bbb83f022f18810284a0e25060127d580ca2fad6213fe88920618c2ae diff --git a/media-libs/lilv/lilv-0.24.26.ebuild b/media-libs/lilv/lilv-0.24.26.ebuild new file mode 100644 index 000000000000..336c4916f412 --- /dev/null +++ b/media-libs/lilv/lilv-0.24.26.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..13} python3_13t ) +PYTHON_REQ_USE='threads(+)' + +inherit meson-multilib python-single-r1 + +DESCRIPTION="Library to make the use of LV2 plugins as simple as possible for applications" +HOMEPAGE="https://drobilla.net/software/lilv.html" +SRC_URI="https://download.drobilla.net/${P}.tar.xz" + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc python test tools" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +BDEPEND=" + virtual/pkgconfig + doc? ( + app-text/doxygen + dev-python/sphinx + dev-python/sphinx-lv2-theme + dev-python/sphinxygen + ) +" +# Take care on bumps to check minimum versions! +RDEPEND=" + ${PYTHON_DEPS} + >=dev-libs/serd-0.30.10[${MULTILIB_USEDEP}] + >=dev-libs/sord-0.16.16[${MULTILIB_USEDEP}] + >=dev-libs/zix-0.4.0[${MULTILIB_USEDEP}] + media-libs/libsndfile + >=media-libs/lv2-1.18.2[${MULTILIB_USEDEP}] + >=media-libs/sratom-0.6.10[${MULTILIB_USEDEP}] +" +DEPEND="${RDEPEND}" + +pkg_setup() { + python_setup +} + +src_prepare() { + default + + # fix doc installation path + sed -iE "s/versioned_name/'${PF}'/g" doc/html/meson.build doc/singlehtml/meson.build || die +} + +multilib_src_configure() { + local emesonargs=( + $(meson_native_use_feature doc docs) + $(meson_feature python bindings_py) + $(meson_feature test tests) + $(meson_feature tools) + ) + + meson_src_configure +} + +multilib_src_install() { + meson_src_install + python_optimize +} + +multilib_src_install_all() { + local DOCS=( AUTHORS NEWS README.md ) + einstalldocs + + newenvd - 60lv2 <<-EOF + LV2_PATH=${EPREFIX}/usr/$(get_libdir)/lv2 + EOF +} diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest index b37efd3eb124..1c954954b2bd 100644 --- a/media-libs/mesa/Manifest +++ b/media-libs/mesa/Manifest @@ -1,10 +1,11 @@ DIST mesa-24.1.7.tar.xz 29206724 BLAKE2B b3102fcf96c032d07826186c2d60dc93e5c17b26f725c20cf1e402d1cfbaaba9809bff7a04d3df0179d2ec8606bc9fb391761d17a148671b9270cf2aaca0324d SHA512 890f6387963bbb86a85305ea963cca326a3b3f8f8758ae2082fd62c52df77c2883a359341e91f36614fea59219394ef78f799a334080699a0bb71d984a68cb01 -DIST mesa-24.2.3.tar.xz 29465732 BLAKE2B 3c480bd9f5948ae4d66a833cfc059b1b872fca989296a070deaa46aeb72298eaca6a3fa9d13574859623cec4a6af978f44d2c9562b9757be2257364c27600be6 SHA512 7a1ace23568d1907b778a2859f97c8988a414ba74e02e1fb5af6f95f768e1b1a2dfdaf412b0d655678ed915d28273953fd1236ebcd87553a1880f1a7f3ea4d44 -DIST mesa-24.2.4.tar.xz 29510040 BLAKE2B a0a977e5032e1c9a5b59dc9212d50b6f023fb9d42d325e692a3c680e77a06e2ccd66843b9eaeeadbf3614b65798c5c4649fb0bb74f134334e662ee9dd47ac21f SHA512 f0f1c23591cce85966efaf3988afdb14b64ceb7216b3994e8fc50e8ddc62c35a84b2013285c84080d963aec2afb94dac345f5f00e7ccf9ae7e9ab3f5b9ba0bcb -DIST mesa-24.2.5.tar.xz 29534380 BLAKE2B 6ea7303b7e762a3f32ebbccd53a47f28ab6b6919850f55fffc5be10ab2873a206d9f78ef3a2c32c55f6ab94d2886104b9c96f2140fdb7d4c1ac67650d3521441 SHA512 9f202907dc4e7f1063c32882b2c9a3ab34c4d83de1c9ef4dd171043b87b110bfd7e7a3d6e3632ed768e024ef18b97181c4f6bc377cc7d3eb609dd96ebf6a783e -DIST mesa-24.2.6.tar.xz 29568568 BLAKE2B e49fc85c8a61315d86b253b7dd8052a1e46ea99d5188cf930c833317898c51b7b413286f57a53af3c2b1bb147ce2541ea80279ee9e237deeb499729bb7fd8381 SHA512 830a40d38200ff8b2a6bd949e1ac3bf4edc887a10d9aa92285007d138079e1fafb3568f658e777e7894e95b5ce75d2bd6836b0473fa70d32270005e482b1a2da -DIST mesa-24.2.7.tar.xz 29589968 BLAKE2B eb1b0285e14e77c3140275b322ff084fca74a1048e6df38f4b14cb03ed7fc436897f7b33d107d1e262d9d4944229fb1e85d02e731c645ead5a7b269dec9334b7 SHA512 8776b45abe5e845c587c0fa9feb22d89f07457265ff63175fb42681ce56dff97b0e163d9e9ac80555ee04decb78754e7331e1015d95c5f84ca3c2549663291dd -DIST mesa-24.3.0-rc2.tar.xz 30490544 BLAKE2B 043ca1c90d87ec93788fea1c3911e8703cdd2aa8fbf14eafd3b56be1a8b5cdc25bc6c1fec5adeff10af937e2b2d584c1b44c7dda130c78654f390f4cdfc08db8 SHA512 6f47ad5a7d0d5d3cfb933275e566531c176078edffc582c638678ee5fab6cbece9e66ae92c099e8c494a79883b6728cb7deca9297c8d9b6095b7089401d64f1f +DIST mesa-24.2.8.tar.xz 29622208 BLAKE2B f71a1663f9637883b4c442ba8c68f7960c48c4f8a02412738404386bfb962052923b40c1412198bd29f2ab6cf11654f8c63d4c14a400b89d99229680bc96eaae SHA512 3aa1051a72e1428e42f9537d8f6a26f2ebddc78894e0f71d2cdcc9ed555ea4d6489ad8e74d4c59b8cdf7ea1c629fa725ac2fe1e385db5d3a582d8fe8186392d6 +DIST mesa-24.3.1.tar.xz 30611028 BLAKE2B d3efc322388e29f651b15b0396fef8a6acc0cf24881165900845e429dd6cb53d51511f174d6a4017f48962b764b9a42f069825196af9f4ca969a4b46e1108a0e SHA512 deecf58e2c31e35d7c1943bb21184b52133a83fa472925128d3a03a57b26c92a476a6d3f7140ef2b78475b66affdabf97436ee8b324be204ce5bb940f78119c8 +DIST mesa-24.3.2.tar.xz 30640276 BLAKE2B d5973506983a23a95c360801a591e13945695e9a0c6f9f3bbb953865aa39ccfabaae624f4cd1edc8ecf479710856f5cc08e4f6374b107a06870906e934ecc5b8 SHA512 ea1065f7b466f1b2b3570c87585d6de15e3784a60d920c9f991c22720197d5947b598ac2c76773bed8150c91360ee5bbc77f3b48780a19502a8c4224baa728b9 +DIST mesa-24.3.3.tar.xz 30657916 BLAKE2B b973227885b3fd5fa6267c150a5e174f5e8a1c6378cf9326845ba75332084d7c914917c8e3b6d7b89f49ede0f5a5b453eb1ce42591e98b0cbad3f85bd3040035 SHA512 280d7a6dd64503ec398d449430270c78b5558c03bfeed3a42346573fd2db1aa3f96f5a212e49288718a7fe27447ee40235b066517622d68b0dfdd7b251a4e85f +DIST mesa-24.3.4.tar.xz 30691532 BLAKE2B a5cf1f49c6d809d19510793f5d1dcec1a3842495d3b4166e303d7f2d4744d179811697d264c5c9b39f2819ebc64a76357195b3eae6b1d2a83128de141354e3c2 SHA512 9c23cd86fda4cf0289c5a78b08ceea8b01e5b141d86ee3e659fa46e62ff9586ff92a4984d2a340b5bf209c4c7f3414bf99f3ced19feee8fb39ef99fe572dbd55 +DIST mesa-25.0.0-rc2.tar.xz 46570616 BLAKE2B bd85d30d1d3e674dae38c476ef1df774df1699963d1c105b336da77f5c271d8ab823d24af9763e5a85643e4794fa4dd041de16b27359799fad3aac7c99b94077 SHA512 67eec93fbe24cb3fa26b062539453326b3237bd8c6ac111061142dae69b81fe7da000728d9bc2c0e2ec46f122011cbde9b99141f6333828016efb3eaa87b27f7 +DIST mesa-25.0.0-rc3.tar.xz 46584588 BLAKE2B 5da789412c797b13e99c73f09493473a6ab1bc495d675069b7181f8da7230941834165e470359c53abc3f422ef031398a67e897fa1caa715429c9aa38681e36d SHA512 4ece5a2804c58396d7a6e09877ab52cc5086290e9e96a61a27b78706b83bd955a57097fe37c5cb5002e9522c49c2b444ea12373038fbc902a29dc52ebec6015c DIST paste-1.0.14.crate 18157 BLAKE2B 35e8548611c51ee75f4d04926149e5e54870d7073d9b635d550a6fa0f85891f57f326bdbcff3dd8618cf40f8e08cf903ef87d9c034d5921d8b91e1db842cdd7c SHA512 3a793f0e5e773a7f7defc798a4c17ae9a40d715144632ea6cb0a8c785e14c4212046491df016bb9838281f8eaf327a79f01c1e2ac5f26785c028bc880faff9ee DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434 diff --git a/media-libs/mesa/files/24.2.6-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch b/media-libs/mesa/files/24.2.6-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch deleted file mode 100644 index a0d3ef1af912..000000000000 --- a/media-libs/mesa/files/24.2.6-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch +++ /dev/null @@ -1,85 +0,0 @@ -https://bugs.gentoo.org/939429 - -From e1098310da6b9fa7e66dc3fe382ae08d88fd1352 Mon Sep 17 00:00:00 2001 -From: Benjamin Herrenschmidt <benh@kernel.crashing.org> -Date: Mon, 4 Nov 2024 17:45:45 +1100 -Subject: [PATCH] dril: Fixup order of pixel formats in drilConfigs - -Having the RGB* formats before the BGR* formats in the table causes -problems where under some circumstances, some applications end up -with the wrong colors. - -The repro case for me is: Xvnc + mutter + chromium - -There was an existing comment in dri_fill_in_modes() which explained -the problem. This was lost when dril_target.c was created. - -Fixes: ec7afd2c24c ("dril: rework config creation") -Fixes: 3de62b2f9a6 ("gallium/dril: Compatibility stub for the legacy DRI loader interface") - -Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> -Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31950> ---- - src/gallium/targets/dril/dril_target.c | 36 +++++++++++++++++++------- - 1 file changed, 27 insertions(+), 9 deletions(-) - -diff --git ./src/gallium/targets/dril/dril_target.c ./src/gallium/targets/dril/dril_target.c -index 672d50a4182..583728e4093 100644 ---- ./src/gallium/targets/dril/dril_target.c -+++ ./src/gallium/targets/dril/dril_target.c -@@ -47,25 +47,43 @@ - CONFIG_ZS(color, PIPE_FORMAT_Z16_UNORM), \ - CONFIG_ZS(color, PIPE_FORMAT_NONE) \ - -+/* -+ * (copy of a comment in dri_screen.c:dri_fill_in_modes()) -+ * -+ * The 32-bit RGBA format must not precede the 32-bit BGRA format. -+ * Likewise for RGBX and BGRX. Otherwise, the GLX client and the GLX -+ * server may disagree on which format the GLXFBConfig represents, -+ * resulting in swapped color channels. -+ * -+ * The problem, as of 2017-05-30: -+ * When matching a GLXFBConfig to a __DRIconfig, GLX ignores the channel -+ * order and chooses the first __DRIconfig with the expected channel -+ * sizes. Specifically, GLX compares the GLXFBConfig's and __DRIconfig's -+ * __DRI_ATTRIB_{CHANNEL}_SIZE but ignores __DRI_ATTRIB_{CHANNEL}_MASK. -+ * -+ * EGL does not suffer from this problem. It correctly compares the -+ * channel masks when matching EGLConfig to __DRIconfig. -+ */ -+ - static const struct gl_config drilConfigs[] = { -- CONFIG(PIPE_FORMAT_R8G8B8A8_UNORM), -- CONFIG(PIPE_FORMAT_R8G8B8X8_UNORM), - CONFIG(PIPE_FORMAT_B8G8R8A8_UNORM), - CONFIG(PIPE_FORMAT_B8G8R8X8_UNORM), -- CONFIG(PIPE_FORMAT_R10G10B10A2_UNORM), -- CONFIG(PIPE_FORMAT_R10G10B10X2_UNORM), -+ CONFIG(PIPE_FORMAT_R8G8B8A8_UNORM), -+ CONFIG(PIPE_FORMAT_R8G8B8X8_UNORM), - CONFIG(PIPE_FORMAT_B10G10R10A2_UNORM), - CONFIG(PIPE_FORMAT_B10G10R10X2_UNORM), -- CONFIG(PIPE_FORMAT_R5G6B5_UNORM), -- CONFIG(PIPE_FORMAT_R5G5B5A1_UNORM), -- CONFIG(PIPE_FORMAT_R5G5B5X1_UNORM), -- CONFIG(PIPE_FORMAT_R4G4B4A4_UNORM), -- CONFIG(PIPE_FORMAT_R4G4B4X4_UNORM), -+ CONFIG(PIPE_FORMAT_R10G10B10A2_UNORM), -+ CONFIG(PIPE_FORMAT_R10G10B10X2_UNORM), - CONFIG(PIPE_FORMAT_B5G6R5_UNORM), - CONFIG(PIPE_FORMAT_B5G5R5A1_UNORM), - CONFIG(PIPE_FORMAT_B5G5R5X1_UNORM), - CONFIG(PIPE_FORMAT_B4G4R4A4_UNORM), - CONFIG(PIPE_FORMAT_B4G4R4X4_UNORM), -+ CONFIG(PIPE_FORMAT_R5G6B5_UNORM), -+ CONFIG(PIPE_FORMAT_R5G5B5A1_UNORM), -+ CONFIG(PIPE_FORMAT_R5G5B5X1_UNORM), -+ CONFIG(PIPE_FORMAT_R4G4B4A4_UNORM), -+ CONFIG(PIPE_FORMAT_R4G4B4X4_UNORM), - }; - - #define RGB UTIL_FORMAT_COLORSPACE_RGB --- -2.45.2 - diff --git a/media-libs/mesa/mesa-24.1.7-r1.ebuild b/media-libs/mesa/mesa-24.1.7-r1.ebuild index ebfcea5d7aac..3bc7670467fe 100644 --- a/media-libs/mesa/mesa-24.1.7-r1.ebuild +++ b/media-libs/mesa/mesa-24.1.7-r1.ebuild @@ -96,10 +96,10 @@ RDEPEND=" unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] ) ") video_cards_r600? ( @@ -112,7 +112,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] >=dev-util/spirv-tools-1.3.231.0 virtual/libelf:0= ) @@ -170,7 +170,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -273,8 +273,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi diff --git a/media-libs/mesa/mesa-24.2.3-r1.ebuild b/media-libs/mesa/mesa-24.2.3-r1.ebuild deleted file mode 100644 index 3dd7cb3ad57b..000000000000 --- a/media-libs/mesa/mesa-24.2.3-r1.ebuild +++ /dev/null @@ -1,497 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {15..18} ) -LLVM_OPTIONAL=1 -CARGO_OPTIONAL=1 -PYTHON_COMPAT=( python3_{10..13} ) - -inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain - -MY_P="${P/_/-}" - -CRATES=" - syn@2.0.68 - proc-macro2@1.0.86 - quote@1.0.33 - unicode-ident@1.0.12 - paste@1.0.14 -" - -RUST_MIN_VER="1.74.1" -RUST_OPTIONAL=1 - -inherit cargo - -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 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" -fi - -# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, -# but there are "stale" distfiles on the mirrors with the wrong names. -# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" -SRC_URI+=" - ${CARGO_CRATE_URIS} -" - -S="${WORKDIR}/${MY_P}" -EGIT_CHECKOUT_DIR=${S} - -LICENSE="MIT SGI-B-2.0" -SLOT="0" - -RADEON_CARDS="r300 r600 radeon radeonsi" -VIDEO_CARDS="${RADEON_CARDS} - d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl - vivante vmware zink" -for card in ${VIDEO_CARDS}; do - IUSE_VIDEO_CARDS+=" video_cards_${card}" -done - -IUSE="${IUSE_VIDEO_CARDS} - cpu_flags_x86_sse2 d3d9 debug +llvm - lm-sensors opencl +opengl osmesa +proprietary-codecs selinux - test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" -RESTRICT="!test? ( test )" -REQUIRED_USE=" - d3d9? ( - || ( - video_cards_freedreno - video_cards_intel - video_cards_nouveau - video_cards_panfrost - video_cards_r300 - video_cards_r600 - video_cards_radeonsi - video_cards_vmware - video_cards_zink - ) - ) - llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) - video_cards_lavapipe? ( llvm vulkan ) - video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) - video_cards_zink? ( vulkan opengl ) - video_cards_nvk? ( vulkan video_cards_nouveau ) - vdpau? ( X ) - xa? ( X ) -" - -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" -RDEPEND=" - >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] - >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] - >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] - unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) - llvm? ( - $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] - opencl? ( - dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${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 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 - virtual/libelf:0= - ) - vaapi? ( - >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] - ) - vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) - video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) - selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) - wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${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.17:=[${MULTILIB_USEDEP}] - x11-libs/libXfixes[${MULTILIB_USEDEP}] - x11-libs/xcb-util-keysyms[${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] ) -" - -DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) - valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) - X? ( - x11-libs/libXrandr[${MULTILIB_USEDEP}] - x11-base/xorg-proto - ) -" -BDEPEND=" - ${PYTHON_DEPS} - opencl? ( - ${RUST_DEPEND} - >=dev-util/bindgen-0.58.0 - ) - >=dev-build/meson-1.4.1 - app-alternatives/yacc - app-alternatives/lex - virtual/pkgconfig - $(python_gen_any_dep " - >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] - dev-python/packaging[\${PYTHON_USEDEP}] - dev-python/pyyaml[\${PYTHON_USEDEP}] - ") - video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] - $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") - ) - vulkan? ( - dev-util/glslang - video_cards_nvk? ( - >=dev-util/bindgen-0.68.1 - >=dev-util/cbindgen-0.26.0 - ${RUST_DEPEND} - ) - ) - wayland? ( dev-util/wayland-scanner ) -" - -QA_WX_LOAD=" -x86? ( - usr/lib/libglapi.so.0.0.0 - usr/lib/libOSMesa.so.8.0.0 - usr/lib/libGLX_mesa.so.0.0.0 -)" - -src_unpack() { - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - else - unpack ${MY_P}.tar.xz - fi - - # We need this because we cannot tell meson to use DISTDIR yet - pushd "${DISTDIR}" >/dev/null || die - mkdir -p "${S}"/subprojects/packagecache || die - local i - for i in *.crate; do - ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die - done - popd >/dev/null || die -} - -pkg_pretend() { - if use vulkan; then - if ! use video_cards_d3d12 && - ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_lavapipe && - ! use video_cards_nouveau && - ! use video_cards_nvk && - ! use video_cards_panfrost && - ! use video_cards_radeonsi && - ! use video_cards_v3d && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" - fi - fi - - # VA - if use vaapi; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use vdpau; then - if ! use video_cards_d3d12 && - ! use video_cards_nouveau && - ! use video_cards_r600 && - ! use video_cards_radeonsi && - ! use video_cards_virgl; then - ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" - fi - fi - - if use xa; then - if ! use video_cards_freedreno && - ! use video_cards_intel && - ! use video_cards_nouveau && - ! use video_cards_vmware; then - ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" - fi - 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() { - python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 - if use llvm && use vulkan && use video_cards_intel && use amd64; then - python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 - fi -} - -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_intel || - 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 - - use llvm && llvm-r1_pkg_setup - python-any-r1_pkg_setup - - if use opencl || (use vulkan && use video_cards_nvk); then - rust_pkg_setup - fi -} - -src_prepare() { - default - sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ - bin/symbols-check.py || die # bug #830728 -} - -multilib_src_configure() { - local emesonargs=() - - # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 - filter-lto - - local platforms - use X && platforms+="x11" - use wayland && platforms+=",wayland" - emesonargs+=(-Dplatforms=${platforms#,}) - - if use video_cards_freedreno || - use video_cards_intel || # crocus i915 iris - use video_cards_nouveau || - use video_cards_panfrost || - use video_cards_r300 || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_vmware || # svga - use video_cards_zink; then - emesonargs+=($(meson_use d3d9 gallium-nine)) - else - emesonargs+=(-Dgallium-nine=false) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; 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_d3d12; then - emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) - fi - - if use video_cards_d3d12 || - use video_cards_nouveau || - use video_cards_r600 || - use video_cards_radeonsi || - use video_cards_virgl; then - emesonargs+=($(meson_feature vdpau gallium-vdpau)) - else - emesonargs+=(-Dgallium-vdpau=disabled) - fi - - if use video_cards_freedreno || - use video_cards_intel || - use video_cards_nouveau || - use video_cards_vmware; then - emesonargs+=($(meson_feature xa gallium-xa)) - else - emesonargs+=(-Dgallium-xa=disabled) - fi - - gallium_enable !llvm softpipe - gallium_enable llvm llvmpipe - gallium_enable video_cards_d3d12 d3d12 - gallium_enable video_cards_freedreno freedreno - gallium_enable video_cards_intel crocus i915 iris - gallium_enable video_cards_lima lima - gallium_enable video_cards_nouveau nouveau - gallium_enable video_cards_panfrost panfrost - gallium_enable video_cards_v3d v3d - gallium_enable video_cards_vc4 vc4 - gallium_enable video_cards_virgl virgl - gallium_enable video_cards_vivante etnaviv - gallium_enable video_cards_vmware svga - gallium_enable video_cards_zink zink - - 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 - - if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" - # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst - emesonargs+=( - $(meson_native_true gallium-rusticl) - -Drust_std=2021 - ) - fi - - if use vulkan; then - vulkan_enable video_cards_d3d12 microsoft-experimental - vulkan_enable video_cards_freedreno freedreno - vulkan_enable video_cards_intel intel intel_hasvk - vulkan_enable video_cards_lavapipe swrast - vulkan_enable video_cards_panfrost panfrost - vulkan_enable video_cards_radeonsi amd - vulkan_enable video_cards_v3d broadcom - vulkan_enable video_cards_vc4 broadcom - vulkan_enable video_cards_virgl virtio - if use video_cards_nvk; then - vulkan_enable video_cards_nvk nouveau - if ! multilib_is_native_abi; then - echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" - emesonargs+=( - --native-file "${T}"/rust_fix.ini - ) - fi - fi - fi - - driver_list() { - local drivers="$(sort -u <<< "${1// /$'\n'}")" - echo "${drivers//$'\n'/,}" - } - - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - - if use opengl && use X; then - emesonargs+=(-Dglx=dri) - else - emesonargs+=(-Dglx=disabled) - fi - - if [[ "${ABI}" == amd64 ]]; then - emesonargs+=($(meson_feature video_cards_intel intel-rt)) - fi - - use debug && EMESON_BUILDTYPE=debug - - emesonargs+=( - $(meson_use test build-tests) - -Dshared-glapi=enabled - -Ddri3=enabled - -Dexpat=enabled - $(meson_use opengl) - $(meson_feature opengl gbm) - $(meson_feature opengl gles1) - $(meson_feature opengl gles2) - $(meson_feature opengl glvnd) - $(meson_feature opengl egl) - $(meson_feature llvm) - $(meson_feature lm-sensors lmsensors) - $(meson_use osmesa) - $(meson_use selinux) - $(meson_feature unwind libunwind) - $(meson_feature zstd) - $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) - -Dvalgrind=$(usex valgrind auto disabled) - -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") - -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") - -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") - -Db_ndebug=$(usex debug false true) - ) - meson_src_configure - - if ! multilib_is_native_abi && use video_cards_nvk; then - sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die - fi -} - -multilib_src_test() { - meson_src_test -t 100 -} - -# $1 - VIDEO_CARDS flag (check skipped for "--") -# other args - names of DRI drivers to enable -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-24.2.6-r2.ebuild b/media-libs/mesa/mesa-24.2.8.ebuild index db88d34888ed..4e9ede781732 100644 --- a/media-libs/mesa/mesa-24.2.6-r2.ebuild +++ b/media-libs/mesa/mesa-24.2.8.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 @@ -35,7 +35,7 @@ else SRC_URI=" https://archive.mesa3d.org/${MY_P}.tar.xz " - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" fi # This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, @@ -98,10 +98,10 @@ RDEPEND=" unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] ) ") video_cards_r600? ( @@ -114,7 +114,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] >=dev-util/spirv-tools-1.3.231.0 virtual/libelf:0= ) @@ -173,7 +173,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -187,10 +187,6 @@ BDEPEND=" wayland? ( dev-util/wayland-scanner ) " -PATCHES=( - "${FILESDIR}"/${PV}-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch -) - QA_WX_LOAD=" x86? ( usr/lib/libglapi.so.0.0.0 @@ -281,8 +277,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi @@ -480,6 +476,15 @@ multilib_src_configure() { fi } +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + multilib_src_test() { meson_src_test -t 100 } diff --git a/media-libs/mesa/mesa-24.3.0_rc2.ebuild b/media-libs/mesa/mesa-24.3.1.ebuild index 3c486c964f4c..23476336a9f6 100644 --- a/media-libs/mesa/mesa-24.3.0_rc2.ebuild +++ b/media-libs/mesa/mesa-24.3.1.ebuild @@ -97,10 +97,10 @@ RDEPEND=" unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] ) ") video_cards_r600? ( @@ -113,7 +113,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] >=dev-util/spirv-tools-1.3.231.0 virtual/libelf:0= ) @@ -172,7 +172,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -276,8 +276,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi diff --git a/media-libs/mesa/mesa-24.2.4-r1.ebuild b/media-libs/mesa/mesa-24.3.2.ebuild index 3dd7cb3ad57b..7846e415a4f5 100644 --- a/media-libs/mesa/mesa-24.2.4-r1.ebuild +++ b/media-libs/mesa/mesa-24.3.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..18} ) +LLVM_COMPAT=( {15..19} ) LLVM_OPTIONAL=1 CARGO_OPTIONAL=1 PYTHON_COMPAT=( python3_{10..13} ) @@ -63,7 +63,7 @@ IUSE="${IUSE_VIDEO_CARDS} cpu_flags_x86_sse2 d3d9 debug +llvm lm-sensors opencl +opengl osmesa +proprietary-codecs selinux test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" + wayland +X xa +zstd" RESTRICT="!test? ( test )" REQUIRED_USE=" d3d9? ( @@ -80,7 +80,6 @@ REQUIRED_USE=" ) ) llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) video_cards_lavapipe? ( llvm vulkan ) video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) @@ -98,10 +97,10 @@ RDEPEND=" unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] ) ") video_cards_r600? ( @@ -114,7 +113,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] >=dev-util/spirv-tools-1.3.231.0 virtual/libelf:0= ) @@ -148,9 +147,9 @@ RDEPEND="${RDEPEND} " DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) X? ( x11-libs/libXrandr[${MULTILIB_USEDEP}] x11-base/xorg-proto @@ -173,7 +172,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -277,8 +276,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi @@ -420,6 +419,8 @@ multilib_src_configure() { ) fi fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) fi driver_list() { @@ -427,11 +428,6 @@ multilib_src_configure() { echo "${drivers//$'\n'/,}" } - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - if use opengl && use X; then emesonargs+=(-Dglx=dri) else @@ -447,7 +443,6 @@ multilib_src_configure() { emesonargs+=( $(meson_use test build-tests) -Dshared-glapi=enabled - -Ddri3=enabled -Dexpat=enabled $(meson_use opengl) $(meson_feature opengl gbm) @@ -476,6 +471,15 @@ multilib_src_configure() { fi } +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + multilib_src_test() { meson_src_test -t 100 } diff --git a/media-libs/mesa/mesa-24.2.5-r1.ebuild b/media-libs/mesa/mesa-24.3.3.ebuild index 3dd7cb3ad57b..94823cb3517c 100644 --- a/media-libs/mesa/mesa-24.2.5-r1.ebuild +++ b/media-libs/mesa/mesa-24.3.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..18} ) +LLVM_COMPAT=( {15..19} ) LLVM_OPTIONAL=1 CARGO_OPTIONAL=1 PYTHON_COMPAT=( python3_{10..13} ) @@ -35,7 +35,7 @@ else SRC_URI=" https://archive.mesa3d.org/${MY_P}.tar.xz " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" fi # This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, @@ -63,7 +63,7 @@ IUSE="${IUSE_VIDEO_CARDS} cpu_flags_x86_sse2 d3d9 debug +llvm lm-sensors opencl +opengl osmesa +proprietary-codecs selinux test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" + wayland +X xa +zstd" RESTRICT="!test? ( test )" REQUIRED_USE=" d3d9? ( @@ -80,7 +80,6 @@ REQUIRED_USE=" ) ) llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) video_cards_lavapipe? ( llvm vulkan ) video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) @@ -98,10 +97,11 @@ RDEPEND=" unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] ) ") video_cards_r600? ( @@ -114,7 +114,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] >=dev-util/spirv-tools-1.3.231.0 virtual/libelf:0= ) @@ -148,9 +148,9 @@ RDEPEND="${RDEPEND} " DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) X? ( x11-libs/libXrandr[${MULTILIB_USEDEP}] x11-base/xorg-proto @@ -173,7 +173,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -277,8 +277,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi @@ -420,6 +420,8 @@ multilib_src_configure() { ) fi fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) fi driver_list() { @@ -427,11 +429,6 @@ multilib_src_configure() { echo "${drivers//$'\n'/,}" } - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - if use opengl && use X; then emesonargs+=(-Dglx=dri) else @@ -447,7 +444,6 @@ multilib_src_configure() { emesonargs+=( $(meson_use test build-tests) -Dshared-glapi=enabled - -Ddri3=enabled -Dexpat=enabled $(meson_use opengl) $(meson_feature opengl gbm) @@ -476,6 +472,15 @@ multilib_src_configure() { fi } +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + multilib_src_test() { meson_src_test -t 100 } diff --git a/media-libs/mesa/mesa-24.2.7.ebuild b/media-libs/mesa/mesa-24.3.4-r1.ebuild index 3dd7cb3ad57b..8cbcc6393fc1 100644 --- a/media-libs/mesa/mesa-24.2.7.ebuild +++ b/media-libs/mesa/mesa-24.3.4-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..18} ) +LLVM_COMPAT=( {15..19} ) LLVM_OPTIONAL=1 CARGO_OPTIONAL=1 PYTHON_COMPAT=( python3_{10..13} ) @@ -21,6 +21,7 @@ CRATES=" " RUST_MIN_VER="1.74.1" +RUST_MULTILIB=1 RUST_OPTIONAL=1 inherit cargo @@ -35,7 +36,7 @@ else SRC_URI=" https://archive.mesa3d.org/${MY_P}.tar.xz " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" fi # This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, @@ -63,7 +64,7 @@ IUSE="${IUSE_VIDEO_CARDS} cpu_flags_x86_sse2 d3d9 debug +llvm lm-sensors opencl +opengl osmesa +proprietary-codecs selinux test unwind vaapi valgrind vdpau vulkan - vulkan-overlay wayland +X xa +zstd" + wayland +X xa +zstd" RESTRICT="!test? ( test )" REQUIRED_USE=" d3d9? ( @@ -80,7 +81,6 @@ REQUIRED_USE=" ) ) llvm? ( ${LLVM_REQUIRED_USE} ) - vulkan-overlay? ( vulkan ) video_cards_lavapipe? ( llvm vulkan ) video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) @@ -93,15 +93,17 @@ REQUIRED_USE=" LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" RDEPEND=" >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.3.231.0[${MULTILIB_USEDEP}] >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] ) ") video_cards_r600? ( @@ -114,8 +116,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 + llvm-core/libclc[spirv(-)] virtual/libelf:0= ) vaapi? ( @@ -148,9 +149,9 @@ RDEPEND="${RDEPEND} " DEPEND="${RDEPEND} - video_cards_d3d12? ( >=dev-util/directx-headers-1.613.0[${MULTILIB_USEDEP}] ) + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) valgrind? ( dev-debug/valgrind ) - wayland? ( >=dev-libs/wayland-protocols-1.34 ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) X? ( x11-libs/libXrandr[${MULTILIB_USEDEP}] x11-base/xorg-proto @@ -173,7 +174,7 @@ BDEPEND=" ") video_cards_intel? ( ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -277,8 +278,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi @@ -420,6 +421,8 @@ multilib_src_configure() { ) fi fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) fi driver_list() { @@ -427,11 +430,6 @@ multilib_src_configure() { echo "${drivers//$'\n'/,}" } - local vulkan_layers - use vulkan && vulkan_layers+="device-select" - use vulkan-overlay && vulkan_layers+=",overlay" - emesonargs+=(-Dvulkan-layers=${vulkan_layers#,}) - if use opengl && use X; then emesonargs+=(-Dglx=dri) else @@ -447,7 +445,7 @@ multilib_src_configure() { emesonargs+=( $(meson_use test build-tests) -Dshared-glapi=enabled - -Ddri3=enabled + -Dlegacy-x11=dri2 -Dexpat=enabled $(meson_use opengl) $(meson_feature opengl gbm) @@ -476,6 +474,15 @@ multilib_src_configure() { fi } +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + multilib_src_test() { meson_src_test -t 100 } diff --git a/media-libs/mesa/mesa-25.0.0_rc2.ebuild b/media-libs/mesa/mesa-25.0.0_rc2.ebuild new file mode 100644 index 000000000000..f9f6f3778ffd --- /dev/null +++ b/media-libs/mesa/mesa-25.0.0_rc2.ebuild @@ -0,0 +1,504 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {15..19} ) +LLVM_OPTIONAL=1 +CARGO_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..13} ) + +inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain + +MY_P="${P/_/-}" + +CRATES=" + syn@2.0.68 + proc-macro2@1.0.86 + quote@1.0.33 + unicode-ident@1.0.12 + paste@1.0.14 +" + +RUST_MIN_VER="1.78.0" +RUST_MULTILIB=1 +RUST_OPTIONAL=1 + +inherit cargo + +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="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" +fi + +# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, +# but there are "stale" distfiles on the mirrors with the wrong names. +# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" +SRC_URI+=" + ${CARGO_CRATE_URIS} +" + +S="${WORKDIR}/${MY_P}" +EGIT_CHECKOUT_DIR=${S} + +LICENSE="MIT SGI-B-2.0" +SLOT="0" + +RADEON_CARDS="r300 r600 radeon radeonsi" +VIDEO_CARDS="${RADEON_CARDS} + d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl + vivante vmware zink" +for card in ${VIDEO_CARDS}; do + IUSE_VIDEO_CARDS+=" video_cards_${card}" +done + +IUSE="${IUSE_VIDEO_CARDS} + cpu_flags_x86_sse2 d3d9 debug +llvm + lm-sensors opencl +opengl osmesa +proprietary-codecs selinux + test unwind vaapi valgrind vdpau vulkan + wayland +X xa +zstd" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + d3d9? ( + || ( + video_cards_freedreno + video_cards_intel + video_cards_nouveau + video_cards_panfrost + video_cards_r300 + video_cards_r600 + video_cards_radeonsi + video_cards_vmware + video_cards_zink + ) + ) + llvm? ( ${LLVM_REQUIRED_USE} ) + video_cards_lavapipe? ( llvm vulkan ) + video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_zink? ( vulkan opengl ) + video_cards_nvk? ( vulkan video_cards_nouveau ) + vdpau? ( X ) + xa? ( X ) +" + +LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" +RDEPEND=" + >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.3.231.0[${MULTILIB_USEDEP}] + >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] + unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) + llvm? ( + $(llvm_gen_dep " + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + opencl? ( + dev-util/spirv-llvm-translator:\${LLVM_SLOT} + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] + ) + ") + 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 + llvm-core/libclc[spirv(-)] + virtual/libelf:0= + ) + vaapi? ( + >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] + ) + vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) + video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) + video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) + selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) + wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) + ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${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.17:=[${MULTILIB_USEDEP}] + x11-libs/libXfixes[${MULTILIB_USEDEP}] + x11-libs/xcb-util-keysyms[${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] ) +" + +DEPEND="${RDEPEND} + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) + valgrind? ( dev-debug/valgrind ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) + X? ( + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-base/xorg-proto + ) +" +BDEPEND=" + ${PYTHON_DEPS} + opencl? ( + ${RUST_DEPEND} + >=dev-util/bindgen-0.58.0 + ) + >=dev-build/meson-1.4.1 + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + $(python_gen_any_dep " + >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] + dev-python/packaging[\${PYTHON_USEDEP}] + dev-python/pyyaml[\${PYTHON_USEDEP}] + ") + video_cards_intel? ( + ~dev-util/mesa_clc-${PV} + llvm-core/libclc[spirv(-)] + $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") + ) + vulkan? ( + dev-util/glslang + video_cards_nvk? ( + >=dev-util/bindgen-0.68.1 + >=dev-util/cbindgen-0.26.0 + ${RUST_DEPEND} + ) + ) + wayland? ( dev-util/wayland-scanner ) +" + +QA_WX_LOAD=" +x86? ( + usr/lib/libgallium-*.so + usr/lib/libOSMesa.so.8.0.0 + usr/lib/libGLX_mesa.so.0.0.0 +)" + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + else + unpack ${MY_P}.tar.xz + fi + + # We need this because we cannot tell meson to use DISTDIR yet + pushd "${DISTDIR}" >/dev/null || die + mkdir -p "${S}"/subprojects/packagecache || die + local i + for i in *.crate; do + ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die + done + popd >/dev/null || die +} + +pkg_pretend() { + if use vulkan; then + if ! use video_cards_d3d12 && + ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_lavapipe && + ! use video_cards_nouveau && + ! use video_cards_nvk && + ! use video_cards_panfrost && + ! use video_cards_radeonsi && + ! use video_cards_v3d && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" + fi + fi + + # VA + if use vaapi; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use vdpau; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use xa; then + if ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_nouveau && + ! use video_cards_vmware; then + ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" + fi + 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() { + python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 + if use llvm && use vulkan && use video_cards_intel && use amd64; then + python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 + fi +} + +pkg_setup() { + # warning message for bug 459306 + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" + ewarn "detected! This can cause problems. For details, see bug 459306." + fi + + if use video_cards_intel || + 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 + + use llvm && llvm-r1_pkg_setup + python-any-r1_pkg_setup + + if use opencl || (use vulkan && use video_cards_nvk); then + rust_pkg_setup + fi +} + +src_prepare() { + default + sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ + bin/symbols-check.py || die # bug #830728 +} + +multilib_src_configure() { + local emesonargs=() + + # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 + filter-lto + + local platforms + use X && platforms+="x11" + use wayland && platforms+=",wayland" + emesonargs+=(-Dplatforms=${platforms#,}) + + if use video_cards_freedreno || + use video_cards_intel || # crocus i915 iris + use video_cards_nouveau || + use video_cards_panfrost || + use video_cards_r300 || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_vmware || # svga + use video_cards_zink; then + emesonargs+=($(meson_use d3d9 gallium-nine)) + else + emesonargs+=(-Dgallium-nine=false) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; 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_d3d12; then + emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; then + emesonargs+=($(meson_feature vdpau gallium-vdpau)) + else + emesonargs+=(-Dgallium-vdpau=disabled) + fi + + if use video_cards_freedreno || + use video_cards_intel || + use video_cards_nouveau || + use video_cards_vmware; then + emesonargs+=($(meson_feature xa gallium-xa)) + else + emesonargs+=(-Dgallium-xa=disabled) + fi + + gallium_enable !llvm softpipe + gallium_enable llvm llvmpipe + gallium_enable video_cards_d3d12 d3d12 + gallium_enable video_cards_freedreno freedreno + gallium_enable video_cards_intel crocus i915 iris + gallium_enable video_cards_lima lima + gallium_enable video_cards_nouveau nouveau + gallium_enable video_cards_panfrost panfrost + gallium_enable video_cards_v3d v3d + gallium_enable video_cards_vc4 vc4 + gallium_enable video_cards_virgl virgl + gallium_enable video_cards_vivante etnaviv + gallium_enable video_cards_vmware svga + gallium_enable video_cards_zink zink + + 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 + + if use llvm && use opencl; then + PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" + # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst + emesonargs+=( + $(meson_native_true gallium-rusticl) + -Drust_std=2021 + ) + fi + + if use vulkan; then + vulkan_enable video_cards_d3d12 microsoft-experimental + vulkan_enable video_cards_freedreno freedreno + vulkan_enable video_cards_intel intel intel_hasvk + vulkan_enable video_cards_lavapipe swrast + vulkan_enable video_cards_panfrost panfrost + vulkan_enable video_cards_radeonsi amd + vulkan_enable video_cards_v3d broadcom + vulkan_enable video_cards_vc4 broadcom + vulkan_enable video_cards_virgl virtio + if use video_cards_nvk; then + vulkan_enable video_cards_nvk nouveau + if ! multilib_is_native_abi; then + echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" + emesonargs+=( + --native-file "${T}"/rust_fix.ini + ) + fi + fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) + fi + + driver_list() { + local drivers="$(sort -u <<< "${1// /$'\n'}")" + echo "${drivers//$'\n'/,}" + } + + if use opengl && use X; then + emesonargs+=(-Dglx=dri) + else + emesonargs+=(-Dglx=disabled) + fi + + if [[ "${ABI}" == amd64 ]]; then + emesonargs+=($(meson_feature video_cards_intel intel-rt)) + fi + + use debug && EMESON_BUILDTYPE=debug + + emesonargs+=( + $(meson_use test build-tests) + -Dshared-glapi=enabled + -Dlegacy-x11=dri2 + -Dexpat=enabled + $(meson_use opengl) + $(meson_feature opengl gbm) + $(meson_feature opengl gles1) + $(meson_feature opengl gles2) + $(meson_feature opengl glvnd) + $(meson_feature opengl egl) + $(meson_feature llvm) + $(meson_feature lm-sensors lmsensors) + $(meson_use osmesa) + $(meson_use selinux) + $(meson_feature unwind libunwind) + $(meson_feature zstd) + $(meson_use cpu_flags_x86_sse2 sse2) + -Dmesa-clc=$(usex video_cards_intel system auto) + -Dvalgrind=$(usex valgrind auto disabled) + -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") + -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") + -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") + -Db_ndebug=$(usex debug false true) + ) + meson_src_configure + + if ! multilib_is_native_abi && use video_cards_nvk; then + sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die + fi +} + +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + +multilib_src_test() { + meson_src_test -t 100 +} + +# $1 - VIDEO_CARDS flag (check skipped for "--") +# other args - names of DRI drivers to enable +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-25.0.0_rc3.ebuild b/media-libs/mesa/mesa-25.0.0_rc3.ebuild new file mode 100644 index 000000000000..f9f6f3778ffd --- /dev/null +++ b/media-libs/mesa/mesa-25.0.0_rc3.ebuild @@ -0,0 +1,504 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {15..19} ) +LLVM_OPTIONAL=1 +CARGO_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..13} ) + +inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain + +MY_P="${P/_/-}" + +CRATES=" + syn@2.0.68 + proc-macro2@1.0.86 + quote@1.0.33 + unicode-ident@1.0.12 + paste@1.0.14 +" + +RUST_MIN_VER="1.78.0" +RUST_MULTILIB=1 +RUST_OPTIONAL=1 + +inherit cargo + +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="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" +fi + +# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, +# but there are "stale" distfiles on the mirrors with the wrong names. +# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" +SRC_URI+=" + ${CARGO_CRATE_URIS} +" + +S="${WORKDIR}/${MY_P}" +EGIT_CHECKOUT_DIR=${S} + +LICENSE="MIT SGI-B-2.0" +SLOT="0" + +RADEON_CARDS="r300 r600 radeon radeonsi" +VIDEO_CARDS="${RADEON_CARDS} + d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl + vivante vmware zink" +for card in ${VIDEO_CARDS}; do + IUSE_VIDEO_CARDS+=" video_cards_${card}" +done + +IUSE="${IUSE_VIDEO_CARDS} + cpu_flags_x86_sse2 d3d9 debug +llvm + lm-sensors opencl +opengl osmesa +proprietary-codecs selinux + test unwind vaapi valgrind vdpau vulkan + wayland +X xa +zstd" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + d3d9? ( + || ( + video_cards_freedreno + video_cards_intel + video_cards_nouveau + video_cards_panfrost + video_cards_r300 + video_cards_r600 + video_cards_radeonsi + video_cards_vmware + video_cards_zink + ) + ) + llvm? ( ${LLVM_REQUIRED_USE} ) + video_cards_lavapipe? ( llvm vulkan ) + video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_zink? ( vulkan opengl ) + video_cards_nvk? ( vulkan video_cards_nouveau ) + vdpau? ( X ) + xa? ( X ) +" + +LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" +RDEPEND=" + >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.3.231.0[${MULTILIB_USEDEP}] + >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] + unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) + llvm? ( + $(llvm_gen_dep " + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + opencl? ( + dev-util/spirv-llvm-translator:\${LLVM_SLOT} + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] + ) + ") + 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 + llvm-core/libclc[spirv(-)] + virtual/libelf:0= + ) + vaapi? ( + >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] + ) + vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) + video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) + video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) + selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) + wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) + ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${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.17:=[${MULTILIB_USEDEP}] + x11-libs/libXfixes[${MULTILIB_USEDEP}] + x11-libs/xcb-util-keysyms[${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] ) +" + +DEPEND="${RDEPEND} + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) + valgrind? ( dev-debug/valgrind ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) + X? ( + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-base/xorg-proto + ) +" +BDEPEND=" + ${PYTHON_DEPS} + opencl? ( + ${RUST_DEPEND} + >=dev-util/bindgen-0.58.0 + ) + >=dev-build/meson-1.4.1 + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + $(python_gen_any_dep " + >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] + dev-python/packaging[\${PYTHON_USEDEP}] + dev-python/pyyaml[\${PYTHON_USEDEP}] + ") + video_cards_intel? ( + ~dev-util/mesa_clc-${PV} + llvm-core/libclc[spirv(-)] + $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") + ) + vulkan? ( + dev-util/glslang + video_cards_nvk? ( + >=dev-util/bindgen-0.68.1 + >=dev-util/cbindgen-0.26.0 + ${RUST_DEPEND} + ) + ) + wayland? ( dev-util/wayland-scanner ) +" + +QA_WX_LOAD=" +x86? ( + usr/lib/libgallium-*.so + usr/lib/libOSMesa.so.8.0.0 + usr/lib/libGLX_mesa.so.0.0.0 +)" + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + else + unpack ${MY_P}.tar.xz + fi + + # We need this because we cannot tell meson to use DISTDIR yet + pushd "${DISTDIR}" >/dev/null || die + mkdir -p "${S}"/subprojects/packagecache || die + local i + for i in *.crate; do + ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die + done + popd >/dev/null || die +} + +pkg_pretend() { + if use vulkan; then + if ! use video_cards_d3d12 && + ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_lavapipe && + ! use video_cards_nouveau && + ! use video_cards_nvk && + ! use video_cards_panfrost && + ! use video_cards_radeonsi && + ! use video_cards_v3d && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" + fi + fi + + # VA + if use vaapi; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use vdpau; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use xa; then + if ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_nouveau && + ! use video_cards_vmware; then + ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" + fi + 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() { + python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 + if use llvm && use vulkan && use video_cards_intel && use amd64; then + python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 + fi +} + +pkg_setup() { + # warning message for bug 459306 + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" + ewarn "detected! This can cause problems. For details, see bug 459306." + fi + + if use video_cards_intel || + 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 + + use llvm && llvm-r1_pkg_setup + python-any-r1_pkg_setup + + if use opencl || (use vulkan && use video_cards_nvk); then + rust_pkg_setup + fi +} + +src_prepare() { + default + sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ + bin/symbols-check.py || die # bug #830728 +} + +multilib_src_configure() { + local emesonargs=() + + # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 + filter-lto + + local platforms + use X && platforms+="x11" + use wayland && platforms+=",wayland" + emesonargs+=(-Dplatforms=${platforms#,}) + + if use video_cards_freedreno || + use video_cards_intel || # crocus i915 iris + use video_cards_nouveau || + use video_cards_panfrost || + use video_cards_r300 || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_vmware || # svga + use video_cards_zink; then + emesonargs+=($(meson_use d3d9 gallium-nine)) + else + emesonargs+=(-Dgallium-nine=false) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; 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_d3d12; then + emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; then + emesonargs+=($(meson_feature vdpau gallium-vdpau)) + else + emesonargs+=(-Dgallium-vdpau=disabled) + fi + + if use video_cards_freedreno || + use video_cards_intel || + use video_cards_nouveau || + use video_cards_vmware; then + emesonargs+=($(meson_feature xa gallium-xa)) + else + emesonargs+=(-Dgallium-xa=disabled) + fi + + gallium_enable !llvm softpipe + gallium_enable llvm llvmpipe + gallium_enable video_cards_d3d12 d3d12 + gallium_enable video_cards_freedreno freedreno + gallium_enable video_cards_intel crocus i915 iris + gallium_enable video_cards_lima lima + gallium_enable video_cards_nouveau nouveau + gallium_enable video_cards_panfrost panfrost + gallium_enable video_cards_v3d v3d + gallium_enable video_cards_vc4 vc4 + gallium_enable video_cards_virgl virgl + gallium_enable video_cards_vivante etnaviv + gallium_enable video_cards_vmware svga + gallium_enable video_cards_zink zink + + 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 + + if use llvm && use opencl; then + PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" + # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst + emesonargs+=( + $(meson_native_true gallium-rusticl) + -Drust_std=2021 + ) + fi + + if use vulkan; then + vulkan_enable video_cards_d3d12 microsoft-experimental + vulkan_enable video_cards_freedreno freedreno + vulkan_enable video_cards_intel intel intel_hasvk + vulkan_enable video_cards_lavapipe swrast + vulkan_enable video_cards_panfrost panfrost + vulkan_enable video_cards_radeonsi amd + vulkan_enable video_cards_v3d broadcom + vulkan_enable video_cards_vc4 broadcom + vulkan_enable video_cards_virgl virtio + if use video_cards_nvk; then + vulkan_enable video_cards_nvk nouveau + if ! multilib_is_native_abi; then + echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" + emesonargs+=( + --native-file "${T}"/rust_fix.ini + ) + fi + fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) + fi + + driver_list() { + local drivers="$(sort -u <<< "${1// /$'\n'}")" + echo "${drivers//$'\n'/,}" + } + + if use opengl && use X; then + emesonargs+=(-Dglx=dri) + else + emesonargs+=(-Dglx=disabled) + fi + + if [[ "${ABI}" == amd64 ]]; then + emesonargs+=($(meson_feature video_cards_intel intel-rt)) + fi + + use debug && EMESON_BUILDTYPE=debug + + emesonargs+=( + $(meson_use test build-tests) + -Dshared-glapi=enabled + -Dlegacy-x11=dri2 + -Dexpat=enabled + $(meson_use opengl) + $(meson_feature opengl gbm) + $(meson_feature opengl gles1) + $(meson_feature opengl gles2) + $(meson_feature opengl glvnd) + $(meson_feature opengl egl) + $(meson_feature llvm) + $(meson_feature lm-sensors lmsensors) + $(meson_use osmesa) + $(meson_use selinux) + $(meson_feature unwind libunwind) + $(meson_feature zstd) + $(meson_use cpu_flags_x86_sse2 sse2) + -Dmesa-clc=$(usex video_cards_intel system auto) + -Dvalgrind=$(usex valgrind auto disabled) + -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") + -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") + -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") + -Db_ndebug=$(usex debug false true) + ) + meson_src_configure + + if ! multilib_is_native_abi && use video_cards_nvk; then + sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die + fi +} + +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + +multilib_src_test() { + meson_src_test -t 100 +} + +# $1 - VIDEO_CARDS flag (check skipped for "--") +# other args - names of DRI drivers to enable +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-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild index 3c486c964f4c..004565b3e787 100644 --- a/media-libs/mesa/mesa-9999.ebuild +++ b/media-libs/mesa/mesa-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -LLVM_COMPAT=( {15..18} ) +LLVM_COMPAT=( {15..19} ) LLVM_OPTIONAL=1 CARGO_OPTIONAL=1 PYTHON_COMPAT=( python3_{10..13} ) @@ -20,7 +20,8 @@ CRATES=" paste@1.0.14 " -RUST_MIN_VER="1.74.1" +RUST_MIN_VER="1.78.0" +RUST_MULTILIB=1 RUST_OPTIONAL=1 inherit cargo @@ -92,15 +93,17 @@ REQUIRED_USE=" LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" RDEPEND=" >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.3.231.0[${MULTILIB_USEDEP}] >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( $(llvm_gen_dep " - sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] opencl? ( dev-util/spirv-llvm-translator:\${LLVM_SLOT} - sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] ) ") video_cards_r600? ( @@ -113,8 +116,7 @@ RDEPEND=" lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) opencl? ( >=virtual/opencl-3 - dev-libs/libclc[spirv(-)] - >=dev-util/spirv-tools-1.3.231.0 + llvm-core/libclc[spirv(-)] virtual/libelf:0= ) vaapi? ( @@ -171,8 +173,8 @@ BDEPEND=" dev-python/pyyaml[\${PYTHON_USEDEP}] ") video_cards_intel? ( - ~dev-util/intel_clc-${PV} - dev-libs/libclc[spirv(-)] + ~dev-util/mesa_clc-${PV} + llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) vulkan? ( @@ -188,7 +190,7 @@ BDEPEND=" QA_WX_LOAD=" x86? ( - usr/lib/libglapi.so.0.0.0 + usr/lib/libgallium-*.so usr/lib/libOSMesa.so.8.0.0 usr/lib/libGLX_mesa.so.0.0.0 )" @@ -276,8 +278,8 @@ python_check_deps() { 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" + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" ewarn "detected! This can cause problems. For details, see bug 459306." fi @@ -443,6 +445,7 @@ multilib_src_configure() { emesonargs+=( $(meson_use test build-tests) -Dshared-glapi=enabled + -Dlegacy-x11=dri2 -Dexpat=enabled $(meson_use opengl) $(meson_feature opengl gbm) @@ -457,7 +460,7 @@ multilib_src_configure() { $(meson_feature unwind libunwind) $(meson_feature zstd) $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) + -Dmesa-clc=$(usex video_cards_intel system auto) -Dvalgrind=$(usex valgrind auto disabled) -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") @@ -471,6 +474,15 @@ multilib_src_configure() { fi } +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + multilib_src_test() { meson_src_test -t 100 } diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest index 46d7ce7f13a9..845f92740319 100644 --- a/media-libs/mlt/Manifest +++ b/media-libs/mlt/Manifest @@ -1,2 +1 @@ -DIST mlt-7.24.0.tar.gz 1662552 BLAKE2B f6e83b3c3fd9e3bf64366a6f6165b1839003b0fd058e1368e0648e011eff6da1a9af9fa7652aff032bc4ed4465be4648b5f1ae25fc102397aa9ae2d19981643a SHA512 a9e7fd5dc04152e523456bad244416b4fdeb5961ee7cadb816dd1393277d1d801200db595dcd28e520d76e6b2caca17e65c39b0256beb7c42a58ef241b85471d DIST mlt-7.28.0.tar.gz 1713069 BLAKE2B 5f9ec615324cd2095131a57b9dc0f79138d48eaa91b62574a028370be2d1c7ec6818ee2b5a9c123d35ec73993c8b2271c8dec4f039273a8443c2674c31e86fbf SHA512 a252da56b668968e56a7b0e81283b0b8e0ec8cd28502e3ab6e0aff67e22620ba61bf4feb88134e0d483884e31f2d18efe2d60b6badf0b6ffae4ad26ee646baf9 diff --git a/media-libs/mlt/mlt-7.24.0.ebuild b/media-libs/mlt/mlt-7.24.0.ebuild deleted file mode 100644 index 458751077e04..000000000000 --- a/media-libs/mlt/mlt-7.24.0.ebuild +++ /dev/null @@ -1,176 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{9..12} ) -inherit python-single-r1 cmake flag-o-matic - -DESCRIPTION="Open source multimedia framework for television broadcasting" -HOMEPAGE="https://www.mltframework.org/" -SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz" - -LICENSE="GPL-3" -SLOT="0/7" -KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" -IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt5 qt6 rtaudio rubberband sdl test vdpau vidstab xine xml" - -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -# Needs unpackaged 'kwalify' -RESTRICT="test" - -# rtaudio will use OSS on non linux OSes -# Qt already needs FFTW/PLUS so let's just always have it on to ensure -# MLT is useful: bug #603168. -DEPEND=" - >=media-libs/libebur128-1.2.2:= - sci-libs/fftw:3.0= - ffmpeg? ( media-video/ffmpeg:0=[vdpau?] ) - frei0r? ( media-plugins/frei0r-plugins ) - gtk? ( - media-libs/libexif - x11-libs/pango - ) - jack? ( - >=dev-libs/libxml2-2.5 - media-libs/ladspa-sdk - virtual/jack - ) - libsamplerate? ( >=media-libs/libsamplerate-0.1.2 ) - opencv? ( >=media-libs/opencv-4.5.1:=[contrib] ) - opengl? ( - media-libs/libglvnd - media-video/movit - ) - python? ( ${PYTHON_DEPS} ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtnetwork:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - dev-qt/qtxml:5 - media-libs/libexif - x11-libs/libX11 - ) - qt6? ( - dev-qt/qt5compat:6 - dev-qt/qtbase:6[gui,network,opengl,widgets,xml] - dev-qt/qtsvg:6 - media-libs/libexif - x11-libs/libX11 - ) - rtaudio? ( - >=media-libs/rtaudio-4.1.2 - kernel_linux? ( media-libs/alsa-lib ) - ) - rubberband? ( media-libs/rubberband ) - sdl? ( - media-libs/libsdl2[X,opengl,video] - media-libs/sdl2-image - ) - vidstab? ( media-libs/vidstab ) - xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 ) - xml? ( >=dev-libs/libxml2-2.5 ) -" -# java? ( >=virtual/jre-1.8:* ) -# perl? ( dev-lang/perl ) -# php? ( dev-lang/php ) -# ruby? ( ${RUBY_DEPS} ) -# sox? ( media-sound/sox ) -# tcl? ( dev-lang/tcl:0= ) -RDEPEND="${DEPEND}" -BDEPEND=" - virtual/pkgconfig - python? ( >=dev-lang/swig-2.0 ) -" - -DOCS=( AUTHORS NEWS README.md ) - -PATCHES=( - # downstream - "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch - "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch - "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch -) - -pkg_setup() { - use python && python-single-r1_pkg_setup -} - -src_prepare() { - # Respect CFLAGS LDFLAGS when building shared libraries. Bug #308873 - if use python; then - sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/python/build || die - python_fix_shebang src/swig/python - fi - - cmake_src_prepare -} - -src_configure() { - # Workaround for bug #919981 - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) - - local mycmakeargs=( - -DCMAKE_SKIP_RPATH=ON - -DCLANG_FORMAT=OFF - -DGPL=ON - -DGPL3=ON - -DBUILD_TESTING=$(usex test) - -DMOD_KDENLIVE=ON - -DMOD_SDL1=OFF - -DMOD_SDL2=$(usex sdl) - -DMOD_AVFORMAT=$(usex ffmpeg) - -DMOD_PLUS=ON - -DMOD_FREI0R=$(usex frei0r) - -DMOD_GDK=$(usex gtk) - -DMOD_JACKRACK=$(usex jack) - -DMOD_RESAMPLE=$(usex libsamplerate) - -DMOD_OPENCV=$(usex opencv) - -DMOD_SPATIALAUDIO=OFF # TODO: package libspatialaudio - -DMOD_MOVIT=$(usex opengl) - -DMOD_QT=$(usex qt5) - -DMOD_GLAXNIMATE=$(usex qt5) - -DMOD_QT6=$(usex qt6) - -DMOD_GLAXNIMATE_QT6=$(usex qt6) - -DMOD_RTAUDIO=$(usex rtaudio) - -DMOD_RUBBERBAND=$(usex rubberband) - -DMOD_VIDSTAB=$(usex vidstab) - -DMOD_XINE=$(usex xine) - -DMOD_XML=$(usex xml) - -DMOD_SOX=OFF - ) - - # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2 - # TODO: add swig language bindings? - # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover - - if use python; then - mycmakeargs+=( - -DSWIG_PYTHON=ON - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - - cmake_src_configure -} - -src_install() { - cmake_src_install - - insinto /usr/share/${PN} - doins -r demo - - # - # Install SWIG bindings - # - - docinto swig - - if use python; then - dodoc "${S}"/src/swig/python/play.py - python_optimize - fi -} diff --git a/media-libs/mlt/mlt-7.28.0-r1.ebuild b/media-libs/mlt/mlt-7.28.0-r1.ebuild index ee6fb6c20216..ab6a9276f421 100644 --- a/media-libs/mlt/mlt-7.28.0-r1.ebuild +++ b/media-libs/mlt/mlt-7.28.0-r1.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar LICENSE="GPL-3" SLOT="0/7" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt6 rtaudio rubberband sdl test vdpau vidstab xine xml" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" @@ -137,7 +137,7 @@ src_configure() { -DMOD_RTAUDIO=$(usex rtaudio) -DMOD_RUBBERBAND=$(usex rubberband) -DMOD_SDL2=$(usex sdl) - -DBUILD_TESTING=$(usex test) + -DBUILD_TESTING=OFF # Needs unpackaged 'kwalify'; restricted anyway. -DMOD_VIDSTAB=$(usex vidstab) -DMOD_XINE=$(usex xine) -DMOD_XML=$(usex xml) diff --git a/media-libs/mutagen/mutagen-1.47.0.ebuild b/media-libs/mutagen/mutagen-1.47.0.ebuild index 52e68edf74b5..2bb0f543ea53 100644 --- a/media-libs/mutagen/mutagen-1.47.0.ebuild +++ b/media-libs/mutagen/mutagen-1.47.0.ebuild @@ -23,7 +23,7 @@ KEYWORDS="amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-li BDEPEND=" test? ( - dev-python/eyeD3[${PYTHON_USEDEP}] + dev-python/eyed3[${PYTHON_USEDEP}] dev-python/hypothesis[${PYTHON_USEDEP}] media-libs/flac[ogg] ) diff --git a/media-libs/nanosvg/nanosvg-20231202.ebuild b/media-libs/nanosvg/nanosvg-20231202.ebuild index 5ed44ccfc76b..89bfe4c41f5b 100644 --- a/media-libs/nanosvg/nanosvg-20231202.ebuild +++ b/media-libs/nanosvg/nanosvg-20231202.ebuild @@ -14,4 +14,4 @@ S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="ZLIB" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~x86" +KEYWORDS="amd64 ~arm64 ~x86" diff --git a/media-libs/nas/nas-1.9.5-r2.ebuild b/media-libs/nas/nas-1.9.5-r2.ebuild index 8fb0b91a04be..e548bf7f0d89 100644 --- a/media-libs/nas/nas-1.9.5-r2.ebuild +++ b/media-libs/nas/nas-1.9.5-r2.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 @@ -50,6 +50,9 @@ src_prepare() { } multilib_src_configure() { + # Ancient configure and relies on imake, not worth it + append-cflags -std=gnu89 + # -Werror=lto-type-mismatch # https://bugs.gentoo.org/859934 # https://sourceforge.net/p/nas/bugs/13/ @@ -60,6 +63,9 @@ multilib_src_configure() { econf popd || die + # bug #947416 + unset MAKEOPTS GNUMAKEFLAGS + local cpp=($(get_abi_CHOST ${DEFAULT_ABI})-gcc $(get_abi_CFLAGS) -E) #884203 CC="$(tc-getBUILD_CC)" LD="$(tc-getLD)" \ IMAKECPP="${IMAKECPP:-${cpp[*]}}" \ diff --git a/media-libs/netpbm/Manifest b/media-libs/netpbm/Manifest index bad4ee44eab9..0a09b5643645 100644 --- a/media-libs/netpbm/Manifest +++ b/media-libs/netpbm/Manifest @@ -1,3 +1,3 @@ -DIST netpbm-11.2.10.tar.xz 3782160 BLAKE2B 22dab865106f48a83992ff780a3a3cb26e7fd279b4e22f622a5f6459f90aecf70ce85ce65fd9f14ebe9a148a92ac2b0eb35ca95b0feb88dc0cbe24d11921e4d3 SHA512 baa12b1aa5d66967d900f3d92ebd9cdf2bc936389fd943b995ed863b9f57977bdb6c1e92588252b6219d26d06085b7ea5e3400f1d9be688cb538c807b84293bf DIST netpbm-11.2.11.tar.xz 3782252 BLAKE2B 422b9cefee2a54a9c222236935291f0c8d1f13f064f4ebd277d0f92974b9ce3d7e3d9ae6a0410d767553704a03c2de14ca8456996a53fca0f95d61f9ae72605f SHA512 3d94c0c8c25873a16c78af960c964f5756b3e7a29463f001345956acc3bf1378b0b0b4fc0c57d7388dced0979ba4e8cee0def2200092544dd96fc7d04304660b -DIST netpbm-11.8.1.tar.xz 3804004 BLAKE2B ed107d258a85c720de178a3e6488ad1b435135ec50227bb1e4ce9f3665a882a382c3a3e858e49055f88ee9bba6026b390291ad211a82299d03f41addaf93e7f9 SHA512 e4b1e8d7468fcd0233e50861e890669c788f95924edb6b6256f93b53d2ab16b7fd2c2099ca238b409fba7c764e51d54a9fbdbb22bb3bb1acf8296afdb807bd4f +DIST netpbm-11.2.12.tar.xz 3782188 BLAKE2B c8adb0ba54a982848a2ee0bafeacbdf4bf34dcd3ebaf6ec8473ab9c1edbe49299e1904fbea46d17fefafa0ec32a00fe79a8ab2793e6633a3f37c5db99477174a SHA512 a277aa0b70f994b9c18b7c1f2f64610d3e154e47871a82f06062ab6d1bb6b049c8d1b1c56fb9cf5d43e5b865dfea281f1caf95d40dfbbdcbc3e0134678a3b32c +DIST netpbm-11.9.2.tar.xz 3806368 BLAKE2B 0a9108c59b8e0be68a74eb874411f64115c7e42396f0d5e64a455d9f66d93bbf376513cb8723c71bcf124745e7d647237166e2a2988d6a4d40618d2d7891d96b SHA512 9da96b2bbea4aa8b5c78b290b7aeb4a552b0ca0a251498e74a6c6b40b8680cc281dfbf9d36a8760256052d1b26be1b879cb10fd4e92e55413688e907d11bcfdc diff --git a/media-libs/netpbm/files/netpbm-11.2.11-fix-C23.patch b/media-libs/netpbm/files/netpbm-11.2.11-fix-C23.patch new file mode 100644 index 000000000000..8f4d82994564 --- /dev/null +++ b/media-libs/netpbm/files/netpbm-11.2.11-fix-C23.patch @@ -0,0 +1,245 @@ +https://sourceforge.net/p/netpbm/code/4969/ +https://bugs.gentoo.org/943971 + +Backport files/netpbm-11.8.2-fix-C23.patch to 11.2.11 + +--- a/buildtools/libopt.c ++++ b/buildtools/libopt.c +@@ -85,18 +85,11 @@ + # define SHLIBPREFIXLIST "lib" + #endif + ++#include <stdbool.h> + #include <string.h> + #include <stdlib.h> + #include <stdio.h> + +-typedef unsigned char bool; +-#ifndef TRUE +-#define TRUE (1) +-#endif +-#ifndef FALSE +-#define FALSE (0) +-#endif +- + #ifdef DLLVERSTR + static const char * dllverstr = DLLVERSTR; + #else +@@ -105,9 +98,9 @@ static const char * dllverstr = ""; + + bool const explicit = + #ifdef EXPLICIT +-TRUE ++true + #else +-FALSE ++false + #endif + ; + +@@ -131,17 +124,17 @@ parse_prefixlist(const char * const prefixlist, + there is guaranteed always to be one null string at the end of the + array. + +- In case of error, return *errorP == TRUE and don't allocate any +- storage. Otherwise, return *errorP = FALSE. ++ In case of error, return *errorP == true and don't allocate any ++ storage. Otherwise, return *errorP = false. + -----------------------------------------------------------------------------*/ + char * prlist; + + prlist = strdup(prefixlist); + if (prlist == NULL) +- *errorP = TRUE; ++ *errorP = true; + else { +- if (strlen(prlist) <= 0) +- *errorP = TRUE; ++ if (strlen(prlist) <= 0) ++ *errorP = true; + else { + /* NOTE: Mac OS X, at least, does not have strtok_r(). + 2001.09.24 +@@ -155,18 +148,18 @@ parse_prefixlist(const char * const prefixlist, + } + num_tokens = 0; + token = strtok(prlist, " "); +- *errorP = FALSE; /* initial value */ ++ *errorP = false; /* initial value */ + while (token != NULL && num_tokens < MAX_PREFIXES && !*errorP) { + parsed_prefixes[num_tokens] = strdup (token); +- if (parsed_prefixes[num_tokens] == NULL) +- *errorP = TRUE; ++ if (parsed_prefixes[num_tokens] == NULL) ++ *errorP = true; + num_tokens++; + token = strtok(NULL, " "); + } + for (i = num_tokens; i < MAX_PREFIXES + 1 && !*errorP; i++) { + parsed_prefixes[i] = strdup(""); +- if (parsed_prefixes[i] == NULL) +- *errorP = TRUE; ++ if (parsed_prefixes[i] == NULL) ++ *errorP = true; + } + } + if (*errorP) { +@@ -194,7 +187,7 @@ parse_prefix(const char * const filename, + (The prefix always starts at the beginning of the filename). + + Iff we don't find a valid library name prefix, return *prefix_good_p +- == FALSE. ++ == false. + + The list of valid prefixes is compiled in as the blank-delimited + string which is the value of the SHLIBPREFIXLIST macro. +@@ -231,7 +224,7 @@ parse_prefix(const char * const filename, + i = 0; /* start with the first entry in shlibprefixlist[] */ + prefix_length = 0; /* initial value */ + prefix = shlibprefixlist[i]; +- prefix_good = FALSE; /* initial value */ ++ prefix_good = false; /* initial value */ + while ( (*prefix != '\0' ) && !prefix_good ) { + /* stop condition: shlibprefixlist has MAX_PREFIXES+1 entries. + * we only ever put tokens in the 0..MAX_PREFIXES-1 positions. +@@ -242,7 +235,7 @@ parse_prefix(const char * const filename, + */ + prefix_length = strlen(prefix); + if (strncmp(filename, prefix, prefix_length) == 0) { +- prefix_good = TRUE; ++ prefix_good = true; + /* at this point, prefix is pointing to the correct + * entry, and prefix_length has the correct value. + * When we bail out of the while loop because of the +@@ -279,16 +272,16 @@ parse_filename(const char * const filename, + + E.g. for "libxyz.so", return "xyz". + +- return *valid_library_p == TRUE iff 'filename' validly names a library ++ return *valid_library_p == true iff 'filename' validly names a library + that can be expressed in a -l linker option. + +- return *static_p == TRUE iff 'filename' indicates a static library. +- (but undefined if *valid_library_p != TRUE). ++ return *static_p == true iff 'filename' indicates a static library. ++ (but undefined if *valid_library_p != true). + +- return *error_p == TRUE iff some error such as out of memory prevents ++ return *error_p == true iff some error such as out of memory prevents + parsing. + +- Do not allocate any memory if *error_p == TRUE or *valid_library_p == FALSE. ++ Do not allocate any memory if *error_p == true or *valid_library_p == false. + -----------------------------------------------------------------------------*/ + char *lastdot; + /* Pointer to last period in 'filename'. Null if none */ +@@ -305,21 +298,21 @@ parse_filename(const char * const filename, + /* This filename doesn't have any suffix, so we don't understand + it as a library filename. + */ +- *valid_library_p = FALSE; +- *error_p = FALSE; ++ *valid_library_p = false; ++ *error_p = false; + } else { + unsigned int prefix_length; + bool prefix_good; + + if (strcmp(lastdot + 1, "a") == 0) +- *static_p = TRUE; ++ *static_p = true; + else +- *static_p = FALSE; ++ *static_p = false; + + parse_prefix(filename, &prefix_good, &prefix_length, error_p); + if (!*error_p) { + if (!prefix_good) { +- *valid_library_p = FALSE; ++ *valid_library_p = false; + } else { + /* Extract everything between <prefix> and "." as + the library name root. +@@ -328,7 +321,7 @@ parse_filename(const char * const filename, + + libname = strdup(filename + prefix_length); + if (libname == NULL) +- *error_p = TRUE; ++ *error_p = true; + else { + libname[lastdot - filename - prefix_length] = '\0'; + if (strlen(dllverstr) > 0) { +@@ -341,10 +334,10 @@ parse_filename(const char * const filename, + } + } + if (strlen(libname) == 0) { +- *valid_library_p = FALSE; ++ *valid_library_p = false; + strfree(libname); + } else +- *valid_library_p = TRUE; ++ *valid_library_p = true; + } + *libname_p = libname; + } +@@ -377,14 +370,14 @@ parse_filepath(const char * const filepath, + */ + *filename_p = strdup(filepath); + if (*filename_p == NULL) +- *error_p = TRUE; ++ *error_p = true; + else { + directory = strdup(""); + if (directory == NULL) { +- *error_p = TRUE; ++ *error_p = true; + strfree(*filename_p); + } else +- *error_p = FALSE; ++ *error_p = false; + } + } else { + /* Split the string at the slash we just found, into filename and +@@ -392,14 +385,14 @@ parse_filepath(const char * const filepath, + */ + *filename_p = strdup(lastslash+1); + if (*filename_p == NULL) +- *error_p = TRUE; ++ *error_p = true; + else { + directory = strdup(filepath); + if (directory == NULL) { +- *error_p = TRUE; ++ *error_p = true; + strfree(*filename_p); + } else { +- *error_p = FALSE; ++ *error_p = false; + directory[lastslash - filepath] = '\0'; + } + } +@@ -503,12 +496,12 @@ main(int argc, char **argv) { + char outputLine[1024]; + + strcpy(outputLine, ""); /* initial value */ +- runtime = FALSE; /* initial value */ +- error = FALSE; /* no error yet */ ++ runtime = false; /* initial value */ ++ error = false; /* no error yet */ + + for (arg = 1; arg < argc && !error; arg++) { + if (strcmp(argv[arg], "-runtime") == 0) +- runtime = TRUE; ++ runtime = true; + else if (strcmp(argv[arg], "-quiet") == 0) { + /* Doesn't do anything today */ + } else { +@@ -518,7 +511,7 @@ main(int argc, char **argv) { + if (!error) { + if (strlen(outputLine) + strlen(options) + 1 + 1 > + sizeof(outputLine)) +- error = TRUE; ++ error = true; + else { + strcat(outputLine, " "); + strcat(outputLine, options); diff --git a/media-libs/netpbm/files/netpbm-11.9.0-build.patch b/media-libs/netpbm/files/netpbm-11.9.0-build.patch new file mode 100644 index 000000000000..3cab574345d0 --- /dev/null +++ b/media-libs/netpbm/files/netpbm-11.9.0-build.patch @@ -0,0 +1,65 @@ +diff --git a/GNUmakefile b/GNUmakefile +index 9d02c6b..d8f3ca2 100644 +--- a/GNUmakefile ++++ b/GNUmakefile +@@ -122,6 +122,9 @@ all: nonmerge + .PHONY: nonmerge + nonmerge: $(PRODUCT_SUBDIRS:%=%/all) + ++$(PRODUCT_SUBDIRS:%=%/all): buildtools/all ++converter/all analyzer/all editor/all generator/all other/all: lib/all ++ + # Completely parallel make (make --jobs) does not work because there are + # multiple targets somewhere in the Netpbm build that depend upon pm_config.h + # and similar targets, and the threads building those multiple targets might +diff --git a/lib/Makefile b/lib/Makefile +index b8b95fa..02b4df1 100644 +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -249,7 +249,7 @@ libpm.o: compile.h + .PHONY: install.lib + ifeq ($(NETPBMLIBTYPE),unixshared) + # install a Unix-style shared library +-install.lib: $(PKGDIR)/lib $(PKGDIR)/sharedlink ++install.lib: $(PKGDIR)/lib + cd $(PKGDIR)/lib ; rm -f libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ).* + $(INSTALL) -c -m $(INSTALL_PERM_LIBD) \ + libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ).$(MIN) $(PKGDIR)/lib/ +@@ -291,29 +291,29 @@ $(INTERFACE_HEADERS:%=%_installhdr): $(PKGDIR)/include/netpbm + $(SRCDIR)/lib/$(@:%_installhdr=%) $(PKGDIR)/include/netpbm/ + + .PHONY: install.staticlib +-install.staticlib: $(PKGDIR)/staticlink ++install.staticlib: $(PKGDIR)/lib + $(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.$(STATICLIBSUFFIX) \ +- $(PKGDIR)/staticlink ++ $(PKGDIR)/lib + + # Install a shared library stub -- the ".so" file used at link time to + # prepare a program for dynamically linking a library at run time + .PHONY: install.sharedlibstub +-install.sharedlibstub: $(PKGDIR)/sharedlink ++install.sharedlibstub: $(PKGDIR)/lib + ifeq ($(NETPBMLIBTYPE),unixshared) + # install the link-time (.so) links to the runtime libraries +- cd $(PKGDIR)/sharedlink ; \ ++ cd $(PKGDIR)/lib ; \ + rm -f libnetpbm.$(NETPBMLIBSUFFIX); \ +- $(SYMLINK) ../lib/libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ) \ ++ $(SYMLINK) libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ) \ + libnetpbm.$(NETPBMLIBSUFFIX) + endif + ifeq ($(NETPBMLIBTYPE),dll) + $(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.dll.a \ +- $(PKGDIR)/sharedlink ++ $(PKGDIR)/lib + endif + ifeq ($(NETPBMLIBTYPE),dylib) +- cd $(PKGDIR)/sharedlink/ ; \ ++ cd $(PKGDIR)/lib/ ; \ + rm -f libnetpbm.dylib; \ +- $(SYMLINK) ../lib/libnetpbm.$(MAJ).$(MIN).dylib libnetpbm.dylib ++ $(SYMLINK) libnetpbm.$(MAJ).$(MIN).dylib libnetpbm.dylib + endif + + distclean clean: localclean diff --git a/media-libs/netpbm/metadata.xml b/media-libs/netpbm/metadata.xml index 1f5115348e89..3815c14b732e 100644 --- a/media-libs/netpbm/metadata.xml +++ b/media-libs/netpbm/metadata.xml @@ -8,6 +8,12 @@ <use> <flag name="rle">Build converters for the RLE format (utah raster toolkit)</flag> </use> + <slots> + <subslots> + 0/stable: the upstream stable branch, stabilized in Gentoo at 30+ days. + 0/advanced: the upstream advanced branch, never stabilized in Gentoo. + </subslots> + </slots> <upstream> <remote-id type="sourceforge">netpbm</remote-id> </upstream> diff --git a/media-libs/netpbm/netpbm-11.2.11.ebuild b/media-libs/netpbm/netpbm-11.2.11.ebuild index 5aadea28176f..d274c0726dd9 100644 --- a/media-libs/netpbm/netpbm-11.2.11.ebuild +++ b/media-libs/netpbm/netpbm-11.2.11.ebuild @@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs # Upstream has 3 flavors of netpbm: super stable, stable and advanced. # They only provide a tarball for super stable, but super stable is a bit lagging. # So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable" -# and the advanced branch of their svn (currently versions 11.8.yy) on SLOT "0/advanced". +# and the advanced branch of their svn (currently versions 11.9.yy) on SLOT "0/advanced". # The stable branch is stabilized according to usual Gentoo rules, while the # advanced branch will not be stabilized. # A detailed explanation is here https://netpbm.sourceforge.net/release.html diff --git a/media-libs/netpbm/netpbm-11.2.10.ebuild b/media-libs/netpbm/netpbm-11.2.12.ebuild index 85aa017b7bfb..b00b494f9f62 100644 --- a/media-libs/netpbm/netpbm-11.2.10.ebuild +++ b/media-libs/netpbm/netpbm-11.2.12.ebuild @@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs # Upstream has 3 flavors of netpbm: super stable, stable and advanced. # They only provide a tarball for super stable, but super stable is a bit lagging. # So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable" -# and the advanced branch of their svn (currently versions 11.8.yy) on SLOT "0/advanced". +# and the advanced branch of their svn (currently versions 11.9.yy) on SLOT "0/advanced". # The stable branch is stabilized according to usual Gentoo rules, while the # advanced branch will not be stabilized. # A detailed explanation is here https://netpbm.sourceforge.net/release.html @@ -19,7 +19,7 @@ SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${P}.tar.xz" LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain" SLOT="0/stable" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs svga tiff X xml" # app-text/ghostscript-gpl is really needed for postscript @@ -59,6 +59,8 @@ PATCHES=( "${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch "${FILESDIR}"/netpbm-11.2.7-fix-pnmcolormap2-test.patch "${FILESDIR}"/netpbm-11.6.1-incompatible-pointer-types.patch + "${FILESDIR}"/netpbm-11.7.2-lto.patch + "${FILESDIR}"/netpbm-11.2.11-fix-C23.patch ) netpbm_libtype() { diff --git a/media-libs/netpbm/netpbm-11.8.1.ebuild b/media-libs/netpbm/netpbm-11.9.2.ebuild index 31d10bb8169f..d80baec9557c 100644 --- a/media-libs/netpbm/netpbm-11.8.1.ebuild +++ b/media-libs/netpbm/netpbm-11.9.2.ebuild @@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs # Upstream has 3 flavors of netpbm: super stable, stable and advanced. # They only provide a tarball for super stable, but super stable is a bit lagging. # So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable" -# and the advanced branch of their svn (currently versions 11.8.yy) on SLOT "0/advanced". +# and the advanced branch of their svn (currently versions 11.9.yy) on SLOT "0/advanced". # The stable branch is stabilized according to usual Gentoo rules, while the # advanced branch will not be stabilized. # A detailed explanation is here https://netpbm.sourceforge.net/release.html @@ -54,11 +54,10 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}"/netpbm-10.86.21-build.patch + "${FILESDIR}"/netpbm-11.9.0-build.patch "${FILESDIR}"/netpbm-11.0.0-misc-deps.patch "${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch "${FILESDIR}"/netpbm-11.6.1-incompatible-pointer-types.patch - "${FILESDIR}"/netpbm-11.7.2-lto.patch ) netpbm_libtype() { diff --git a/media-libs/netpbm/netpbm-9999.ebuild b/media-libs/netpbm/netpbm-9999.ebuild new file mode 100644 index 000000000000..f887b2432fec --- /dev/null +++ b/media-libs/netpbm/netpbm-9999.ebuild @@ -0,0 +1,249 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib subversion toolchain-funcs + +# A detailed explanation is here https://netpbm.sourceforge.net/release.html +# This is the development branch, used for testing only. It does not contain the man pages. + +DESCRIPTION="A set of utilities for converting to/from the netpbm (and related) formats" +HOMEPAGE="https://netpbm.sourceforge.net/" +ESVN_REPO_URI="http://svn.code.sf.net/p/netpbm/code/trunk" + +LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain" +SLOT="0/devel" +IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs svga tiff X xml" + +# app-text/ghostscript-gpl is really needed for postscript +# some utilities execute /usr/bin/gs +# some installed programs are perl scripts +RDEPEND=" + dev-lang/perl + jbig? ( media-libs/jbigkit:= ) + jpeg? ( media-libs/libjpeg-turbo:=[static-libs?] ) + png? ( + >=media-libs/libpng-1.4:0= + sys-libs/zlib + ) + postscript? ( + app-text/ghostscript-gpl + sys-libs/zlib + ) + rle? ( media-libs/urt:= ) + svga? ( media-libs/svgalib ) + tiff? ( >=media-libs/tiff-3.5.5:= ) + xml? ( dev-libs/libxml2 ) + X? ( x11-libs/libX11 ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" +BDEPEND=" + app-arch/xz-utils + app-alternatives/lex + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/netpbm-11.9.0-build.patch + "${FILESDIR}"/netpbm-11.0.0-misc-deps.patch + "${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch + "${FILESDIR}"/netpbm-11.6.1-incompatible-pointer-types.patch +) + +netpbm_libtype() { + case ${CHOST} in + *-darwin*) echo dylib;; + *) echo unixshared;; + esac +} + +netpbm_libsuffix() { + local suffix=$(get_libname) + echo ${suffix//\.} +} + +netpbm_ldshlib() { + case ${CHOST} in + *-darwin*) echo '$(LDFLAGS) -dynamiclib -install_name $(SONAME)';; + *) echo '$(LDFLAGS) -shared -Wl,-soname,$(SONAME)';; + esac +} + +netpbm_config_lib() { + usex ${1} -l${2:-$1} NONE +} + +# for bug #828127 +netpbm_cflags_for_build() { + if is-flagq -fPIC; then + echo -fPIC + fi +} + +src_prepare() { + default + + # make sure we use system libs + sed '/SUPPORT_SUBDIRS/s:urt::' -i GNUmakefile || die + rm -r urt converter/other/jbig/libjbig converter/other/jpeg2000/libjasper || die + + # take care of the importinc stuff ourselves by only doing it once + # at the top level and having all subdirs use that one set #149843 + sed \ + -e '/^importinc:/s|^|importinc:\nmanual_|' \ + -e '/-Iimportinc/s|-Iimp|-I"$(BUILDDIR)"/imp|g'\ + -i common.mk || die + sed \ + -e '/%.c/s: importinc$::' \ + -i common.mk lib/Makefile lib/util/Makefile || die + sed \ + -e 's:pkg-config:$(PKG_CONFIG):' \ + -i GNUmakefile converter/other/Makefile other/pamx/Makefile || die + + # The postscript knob is currently bound up with a fork test. + if ! use postscript ; then + sed \ + -e 's:$(DONT_HAVE_PROCESS_MGMT):Y:' \ + -i converter/other/Makefile generator/Makefile || die + sed -r \ + -e 's:(pbmtextps|pnmtops|pstopnm).*::' \ + -i test/all-in-place.{ok,test} || die + sed \ + -e 's:lps-roundtrip.*::' \ + -e 's:pbmtextps-dump.*::' \ + -e 's:pbmtextps.*::' \ + -i test/Test-Order || die + sed \ + -e '/^$/d' \ + -i test/all-in-place.ok || die + sed \ + '2iexit 80' \ + -i test/ps-{alt-,flate-,}roundtrip.test || die + fi + + # Do not test png if not built + if ! use png ; then + sed -E \ + -e 's:(pamtopng|pngtopam|pnmtopng).*::' \ + -i test/all-in-place.{ok,test} || die + sed \ + -e '/^$/d' \ + -i test/all-in-place.ok || die + + sed -E \ + -e 's:(pamrgbatopng|pngtopnm).*::' \ + -i test/legacy-names.{ok,test} || die + sed \ + -e '/^$/d' \ + -i test/legacy-names.ok || die + sed \ + -e 's:png-roundtrip.*::' \ + -e 's:winicon-roundtrip.*::' \ + -i test/Test-Order || die + fi + + # pbmtext-iso88591 requires LC_ALL=en_US.iso88591, not available on musl + # pbmtext-utf8 requires locale, not available on musl + # ppmpat-random and pnmindex are broken on musl + # bug #907295 + if use elibc_musl; then + sed \ + -e 's:pbmtext-iso88591.*::' \ + -e 's:pbmtext-utf8.*::' \ + -e 's:ppmpat-random.*::' \ + -e 's:pnmindex.*::' \ + -i test/Test-Order || die + fi +} + +src_configure() { + cat config.mk.in - >> config.mk <<-EOF || die "writing config.mk failed" + # Misc stuff + BUILD_FIASCO = N + SYMLINK = ln -sf + + # These vars let src_test work by default + PKGDIR_DEFAULT = ${T}/netpbm + RESULTDIR_DEFAULT = ${T}/netpbm-test + + # Toolchain options + CC = $(tc-getCC) -Wall + LD = \$(CC) + CC_FOR_BUILD = $(tc-getBUILD_CC) + LD_FOR_BUILD = \$(CC_FOR_BUILD) + AR = $(tc-getAR) + RANLIB = $(tc-getRANLIB) + PKG_CONFIG = $(tc-getPKG_CONFIG) + + STRIPFLAG = + CFLAGS_SHLIB = -fPIC + CFLAGS_FOR_BUILD += $(netpbm_cflags_for_build) + + LDRELOC = \$(LD) -r + LDSHLIB = $(netpbm_ldshlib) + LINKER_CAN_DO_EXPLICIT_LIBRARY = N # we can, but dont want to + LINKERISCOMPILER = Y + NETPBMLIBSUFFIX = $(netpbm_libsuffix) + NETPBMLIBTYPE = $(netpbm_libtype) + STATICLIB_TOO = $(usex static-libs Y N) + + # The var is called SSE, but the code is actually SSE2. + WANT_SSE = $(usex cpu_flags_x86_sse2 Y N) + + # Gentoo build options + TIFFLIB = $(netpbm_config_lib tiff) + # Let tiff worry about its own dependencies #395753 + TIFFLIB_NEEDS_JPEG = N + TIFFLIB_NEEDS_Z = N + JPEGLIB = $(netpbm_config_lib jpeg) + PNGLIB = $(netpbm_config_lib png) + ZLIB = $($(tc-getPKG_CONFIG) --libs zlib) + LINUXSVGALIB = $(netpbm_config_lib svga vga) + XML2_LIBS = $(netpbm_config_lib xml xml2) + JBIGLIB = $(netpbm_config_lib jbig) + JBIGHDR_DIR = + JASPERLIB = NONE + JASPERHDR_DIR = + URTLIB = $(netpbm_config_lib rle) + URTHDR_DIR = + X11LIB = $(netpbm_config_lib X X11) + X11HDR_DIR = + EOF +} + +src_compile() { + emake -j1 pm_config.h version.h manual_importinc #149843 + emake +} + +src_test() { + # The code wants to install everything first and then test the result. + emake install.{bin,lib,data} + emake check +} + +src_install() { + # Subdir make targets like to use `mkdir` all over the place + # without any actual dependencies, thus the -j1. + emake -j1 package pkgdir="${ED}"/usr + + if [[ $(get_libdir) != "lib" ]] ; then + mv "${ED}"/usr/lib "${ED}"/usr/$(get_libdir) || die + fi + + # Remove cruft that we don't need, and move around stuff we want + rm "${ED}"/usr/{README,VERSION,{pkgconfig,config}_template,pkginfo} || die + + dodir /usr/share + mv "${ED}"/usr/misc "${ED}"/usr/share/netpbm || die + + dodoc README + + cd doc || die + dodoc HISTORY USERDOC + docinto html +} diff --git a/media-libs/nvidia-vaapi-driver/Manifest b/media-libs/nvidia-vaapi-driver/Manifest index 1235056b5716..1fa4d905afb7 100644 --- a/media-libs/nvidia-vaapi-driver/Manifest +++ b/media-libs/nvidia-vaapi-driver/Manifest @@ -1,2 +1 @@ -DIST nvidia-vaapi-driver-0.0.12.tar.gz 183420 BLAKE2B bf3d2f92a0a38d209d3108893664a7b28657657b432cd43a016442b2192c10850ea4278a2a4a02dd53ba759cef38f39d36bdfa934b1fc3a229aed1ff7f7e0a55 SHA512 e586107d840fbcbce3f4f4f4397188d7df2beaeb763ec0ceaae6f4edb2a5638abed388816796e0a0b0665087cfb09fce2a4d83a3cdfd2279edf6b1be278f2ab2 DIST nvidia-vaapi-driver-0.0.13.tar.gz 184099 BLAKE2B 73d4b6a205e05450864150b66c47fb4e7c3938e8abaac980c2ad86801d64fa6324347d6541e517b0e44dc497543bc0b97e120f4c3993e4ad8e17d9e720ea4aba SHA512 5e389d4ebc873766d138ba329503d89d4d45c668c5f20ff89a86ed094b107d3f63aee4044c49a25e78975309015c4c8da204b0131e7173d8ad7f951bb4985fcc diff --git a/media-libs/nvidia-vaapi-driver/nvidia-vaapi-driver-0.0.12.ebuild b/media-libs/nvidia-vaapi-driver/nvidia-vaapi-driver-0.0.12.ebuild deleted file mode 100644 index 24f23d496823..000000000000 --- a/media-libs/nvidia-vaapi-driver/nvidia-vaapi-driver-0.0.12.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit meson-multilib - -DESCRIPTION="A VA-API implemention using NVIDIA's NVDEC" -HOMEPAGE="https://github.com/elFarto/nvidia-vaapi-driver" -SRC_URI="https://github.com/elFarto/nvidia-vaapi-driver/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64" - -RDEPEND="media-libs/gst-plugins-bad - media-libs/libglvnd - >=media-libs/libva-1.8.0 - >=x11-libs/libdrm-2.4.60" -DEPEND="${RDEPEND} - >=media-libs/nv-codec-headers-11.1.5.1" -BDEPEND="virtual/pkgconfig" - -pkg_postinst() { - # Source: https://github.com/elFarto/nvidia-vaapi-driver/blob/v0.0.12/src/backend-common.c#L13 - elog "If vaapi drivers fail to load, then make sure that you are" - elog "passing the correct parameters to the kernel." - elog "nvidia_drm.modeset should be set to 1." - - elog "Check the wiki page for more information: " - elog "https://wiki.gentoo.org/wiki/VAAPI" -} diff --git a/media-libs/oidn/oidn-2.2.2.ebuild b/media-libs/oidn/oidn-2.2.2.ebuild index 193b91c619d1..748ea3565f9e 100644 --- a/media-libs/oidn/oidn-2.2.2.ebuild +++ b/media-libs/oidn/oidn-2.2.2.ebuild @@ -40,8 +40,8 @@ RDEPEND=" " DEPEND="${RDEPEND} $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT}= - sys-devel/llvm:${LLVM_SLOT}= + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= ') " diff --git a/media-libs/oidn/oidn-2.3.0.ebuild b/media-libs/oidn/oidn-2.3.0.ebuild index 3ff4eb5cf3fc..7df9eab58658 100644 --- a/media-libs/oidn/oidn-2.3.0.ebuild +++ b/media-libs/oidn/oidn-2.3.0.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 @@ -18,7 +18,7 @@ if [[ ${PV} = *9999 ]]; then inherit git-r3 else SRC_URI="https://github.com/RenderKit/${PN}/releases/download/v${PV}/${P}.src.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~x86" fi LICENSE="Apache-2.0" @@ -38,8 +38,8 @@ RDEPEND=" " DEPEND="${RDEPEND} $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT}= - sys-devel/llvm:${LLVM_SLOT}= + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= ') " BDEPEND="${PYTHON_DEPS}" diff --git a/media-libs/openal/Manifest b/media-libs/openal/Manifest index abd97566af8f..e3d5bbb88ea8 100644 --- a/media-libs/openal/Manifest +++ b/media-libs/openal/Manifest @@ -1,2 +1,2 @@ -DIST openal-soft-1.23.1.tar.bz2 699330 BLAKE2B 214eb5c6714f8beec711fbebb60725fb06daf77bcb62b14125ff3bc11ebe97365893a36652819bcde92d3714bb2a7ec2ac119a1f439a74fea56f65c7574f2c95 SHA512 0d40577cd27040dc8814c15bacc310a0ce1c98e084f0a37db9f66899265df42ea61ac672efba7445e495849c25b9ba5b086f43320a38965f6ee74081b2896819 -DIST openal-soft-1.24.0.tar.bz2 763289 BLAKE2B 44eaec7e7a0896928ce67b0b0ef6938c39122c36bd08e74c34fe2d085e6c369f70d7bb762c421fb4bec3ad4fdb2734d6dacf188844ac7309f0f0433c88800abb SHA512 f3e9f7a2729688092a77413bce3191b874bb898c80defc620754ce85ed079446f2b0cfe1b81846606357515e40f1c1fd035f0f64e9d9ce4f861b873f54d3a3e7 +DIST openal-soft-1.24.1.tar.bz2 991155 BLAKE2B 7fbf0e63a46a5f2eacee00bcc28746ded5b950aba580ae041825d3b47a33be757668faad5e7c3eced8983416f4a946dc7bddba69699a56470ace0d6ff6e3762c SHA512 1d2d17c94708b0a63a965b26ad960fe6f2201db2c729b6ba564dd0c2b50f0b1d0733c4448b0d2d1b3e22436fb2d7daf5f285071b7234511e3eb4abfe5fa1f223 +DIST openal-soft-1.24.2.tar.bz2 1020760 BLAKE2B d87b470570006b0e3b9f6662ba50db67eb154713d13968e05015f70c12a73f6199cfe13cbe6fd9797081c970cc37e1de1680ecf2606015d09b8eedc27abcc343 SHA512 5ac05fb20b414dfe50e6ac80a69d1e36db5588fd2ccef2606ae1f3b6fc155881d45826031660123101a31469e24bc2bea42993d81b28dd5f18d0d0463988fa65 diff --git a/media-libs/openal/files/openal-1.23.1-gcc15-cstdint.patch b/media-libs/openal/files/openal-1.23.1-gcc15-cstdint.patch deleted file mode 100644 index ce4ceb455b2f..000000000000 --- a/media-libs/openal/files/openal-1.23.1-gcc15-cstdint.patch +++ /dev/null @@ -1,32 +0,0 @@ -Fixed exhaustively upstream in https://github.com/kcat/openal-soft/commit/64f8e8347f7ed3f98917fae7587f4d72b54c28ef -but doesn't apply cleanly, so do a minimal fix here. ---- a/alc/alu.h -+++ b/alc/alu.h -@@ -2,6 +2,7 @@ - #define ALU_H - - #include <bitset> -+#include <cstdint> - - #include "aloptional.h" - ---- a/core/mixer/defs.h -+++ b/core/mixer/defs.h -@@ -2,6 +2,7 @@ - #define CORE_MIXER_DEFS_H - - #include <array> -+#include <cstdint> - #include <stdlib.h> - - #include "alspan.h" ---- a/core/uhjfilter.h -+++ b/core/uhjfilter.h -@@ -2,6 +2,7 @@ - #define CORE_UHJFILTER_H - - #include <array> -+#include <cstdint> - - #include "almalloc.h" - #include "alspan.h" diff --git a/media-libs/openal/openal-1.23.1-r1.ebuild b/media-libs/openal/openal-1.24.1.ebuild index d30f7ef3e23c..0e5668274ac8 100644 --- a/media-libs/openal/openal-1.23.1-r1.ebuild +++ b/media-libs/openal/openal-1.24.1.ebuild @@ -51,10 +51,6 @@ DEPEND=" DOCS=( alsoftrc.sample docs/env-vars.txt docs/hrtf.txt ChangeLog README.md ) -PATCHES=( - "${FILESDIR}"/${PN}-1.23.1-gcc15-cstdint.patch -) - multilib_src_configure() { local mycmakeargs=( # See bug #809314 for getting both options for backends diff --git a/media-libs/openal/openal-1.24.0.ebuild b/media-libs/openal/openal-1.24.2.ebuild index cb3f3789eddd..2d981ebc03cf 100644 --- a/media-libs/openal/openal-1.24.0.ebuild +++ b/media-libs/openal/openal-1.24.2.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,7 @@ S="${WORKDIR}"/${MY_P} # Some components are under BSD LICENSE="LGPL-2+ BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" IUSE=" alsa coreaudio debug jack oss pipewire portaudio pulseaudio sdl sndio qt5 cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 diff --git a/media-libs/opencolorio/Manifest b/media-libs/opencolorio/Manifest index 0371cd99d4a2..fb8577191f3a 100644 --- a/media-libs/opencolorio/Manifest +++ b/media-libs/opencolorio/Manifest @@ -1,3 +1,2 @@ -DIST opencolorio-2.1.3.tar.gz 11024701 BLAKE2B bcd1eb6a74260f451e49ef40e729bfc4c354ab255d96c261fbf865c586f285fe876ed54b05276f3b6b25ece4fd261672fe1dd519041ffad77d7c78efc8cf161d SHA512 b26fcfa3ea12ab6e4b019a13ce79ebcfd215c674acb348f2d9f85f749b2a5beccd395ed1cc9954e4b3cb83a160b24a8d7d81994ac1d9ea8cfe074b81d6b8a061 -DIST opencolorio-2.2.1.tar.gz 11336775 BLAKE2B b463d6a0a7e7fec0a890fa8a0cd06ed269f925c5986dfb82eb53728a09d884c89e6c4dfe112706ce27351d4440909ff9680387028d1dc887e7d866b30c39c54f SHA512 d5f3a4b5bd661af7336c015d07e0feccb286464a08239a3c259a97217001161e7571f5137475fc2f4d1b9af6381bbfa03c0b60f41de282f114307961b8d84fc9 DIST opencolorio-2.3.2.tar.gz 11443450 BLAKE2B 2573d2f229ba0349574d83883cd6534853164dc6a5866b203b65d4c0acbc54fc0aaf6ff4ecbec5506c6adafe48d57fb80a8b47c45b7b16e0c4ac94f5fbaffea3 SHA512 4c7547960623b058398a86d9c8335d31f2354a1ee7ba58fbc2d1ace698132b99e8f823c9b443a77545721da076569228f502f1f3f4deba44659571c6d12db133 +DIST opencolorio-2.4.1.tar.gz 11386201 BLAKE2B b56df7d708dbd8e0b46e9e56ea779614b99412d052372d29b9e2b4c8188bc303f19f3f04ba3e40249fff08e1aa1d5924003757b2944cad3cc7c8b18ba33f8f98 SHA512 dfa616e79da13016d7c0f007a4ad77f793241a7eac18baf65272b5edf8c61f49423a8e0f9f29be170b396014f6b9f4f2789330a5a7608c7c78e858eab622fd4c diff --git a/media-libs/opencolorio/files/opencolorio-2.1.1-gcc12.patch b/media-libs/opencolorio/files/opencolorio-2.1.1-gcc12.patch deleted file mode 100644 index 0bf00862e51b..000000000000 --- a/media-libs/opencolorio/files/opencolorio-2.1.1-gcc12.patch +++ /dev/null @@ -1,14 +0,0 @@ -https://src.fedoraproject.org/rpms/OpenColorIO/raw/rawhide/f/OCIO-strlen.patch -https://github.com/AcademySoftwareFoundation/OpenColorIO/commit/4fa94918c2cf572dcaf61ca07016f3b5c231c14c -https://bugs.gentoo.org/841479 ---- a/src/OpenColorIO/FileRules.cpp -+++ b/src/OpenColorIO/FileRules.cpp -@@ -3,6 +3,7 @@ - - #include <algorithm> - #include <cctype> -+#include <cstring> - #include <map> - #include <regex> - #include <sstream> - diff --git a/media-libs/opencolorio/files/opencolorio-2.1.2-musl-strtol.patch b/media-libs/opencolorio/files/opencolorio-2.1.2-musl-strtol.patch deleted file mode 100644 index 87059614ff03..000000000000 --- a/media-libs/opencolorio/files/opencolorio-2.1.2-musl-strtol.patch +++ /dev/null @@ -1,27 +0,0 @@ -# Fix strtol_l missing on musl. On musl libc use strtol -# Taken from Alpine Linux, please refer: -# https://git.alpinelinux.org/aports/tree/community/opencolorio/0002-fix-strtol.patch?id=dd7ba461824ab0618f0493cbb450b221fdc2513c -# Please refer: https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1624 ---- a/src/utils/NumberUtils.h -+++ b/src/utils/NumberUtils.h -@@ -68,7 +68,7 @@ really_inline from_chars_result from_chars(const char *first, const char *last, - tempval = ::strtod_l(first, &endptr, loc.local); - #endif - -- if (errno != 0) -+ if (errno != 0 && errno != EINVAL) - { - return {first + (endptr - first), std::errc::result_out_of_range}; - } -@@ -139,8 +139,10 @@ really_inline from_chars_result from_chars(const char *first, const char *last, - long int - #ifdef _WIN32 - tempval = _strtol_l(first, &endptr, 0, loc.local); --#else -+#elif defined(__GLIBC__) - tempval = ::strtol_l(first, &endptr, 0, loc.local); -+#else -+ tempval = ::strtol(first, &endptr, 0); - #endif - - if (errno != 0) diff --git a/media-libs/opencolorio/files/opencolorio-2.2.1-support-doxygen-1.9.7.patch b/media-libs/opencolorio/files/opencolorio-2.2.1-support-doxygen-1.9.7.patch deleted file mode 100644 index b3b4db802e96..000000000000 --- a/media-libs/opencolorio/files/opencolorio-2.2.1-support-doxygen-1.9.7.patch +++ /dev/null @@ -1,184 +0,0 @@ -https://github.com/AcademySoftwareFoundation/OpenColorIO/commit/94da59daeb4647faa9b134665ad156f37cfa021d - -From 94da59daeb4647faa9b134665ad156f37cfa021d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?R=C3=A9mi=20Achard?= <remiachard@gmail.com> -Date: Tue, 30 May 2023 19:33:25 +0100 -Subject: [PATCH] Fix documentation build on Doxygen 1.9.7 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Rémi Achard <remiachard@gmail.com> ---- - include/OpenColorIO/OpenColorIO.h | 29 ++++++---------------------- - include/OpenColorIO/OpenColorTypes.h | 25 +++++------------------- - 2 files changed, 11 insertions(+), 43 deletions(-) - -diff --git a/include/OpenColorIO/OpenColorIO.h b/include/OpenColorIO/OpenColorIO.h -index 313b9c631..1352771ff 100644 ---- a/include/OpenColorIO/OpenColorIO.h -+++ b/include/OpenColorIO/OpenColorIO.h -@@ -733,11 +733,8 @@ class OCIOEXPORT Config - const char * getRoleColorSpace(const char * roleName) const noexcept; - - /** -- * \defgroup Methods related to displays and views. -- * @{ -- */ -- -- /** -+ * Methods related to displays and views. -+ * - * The following methods only manipulate active displays and views. Active - * displays and views are defined from an env. variable or from the config file. - * -@@ -854,11 +851,8 @@ class OCIOEXPORT Config - /// Clear all the displays. - void clearDisplays(); - -- /** @} */ -- - /** -- * \defgroup Methods related to the Virtual Display. -- * @{ -+ * Methods related to the Virtual Display. - * - * ... (See descriptions for the non-virtual methods above.) - * -@@ -938,8 +932,6 @@ class OCIOEXPORT Config - */ - int instantiateDisplayFromICCProfile(const char * ICCProfileFilepath); - -- /** @} */ -- - /** - * \brief - * -@@ -1087,8 +1079,7 @@ class OCIOEXPORT Config - void clearViewTransforms(); - - /** -- * \defgroup Methods related to named transforms. -- * @{ -+ * Methods related to named transforms. - */ - - /** -@@ -1131,8 +1122,6 @@ class OCIOEXPORT Config - /// Clear all named transforms. - void clearNamedTransforms(); - -- /** @} */ -- - // - // File Rules - // -@@ -2051,8 +2040,7 @@ class OCIOEXPORT ColorSpaceSet - const Impl * getImpl() const { return m_impl; } - }; - --/** \defgroup ColorSpaceSetOperators -- * @{ -+/** ColorSpaceSetOperators - */ - - /** -@@ -2092,8 +2080,6 @@ extern OCIOEXPORT ConstColorSpaceSetRcPtr operator&&(const ConstColorSpaceSetRcP - extern OCIOEXPORT ConstColorSpaceSetRcPtr operator-(const ConstColorSpaceSetRcPtr & lcss, - const ConstColorSpaceSetRcPtr & rcss); - --/** @}*/ -- - - // - // Look -@@ -3669,8 +3655,7 @@ class OCIOEXPORT SystemMonitors - virtual bool isSupported() const noexcept = 0; - - /** -- * \defgroup Methods to access some information of the attached and active monitors. -- * @{ -+ * Methods to access some information of the attached and active monitors. - */ - - /// Get the number of active monitors reported by the operating system. -@@ -3687,8 +3672,6 @@ class OCIOEXPORT SystemMonitors - /// Get the ICC profile path associated to the monitor. - virtual const char * getProfileFilepath(size_t idx) const = 0; - -- /** @} */ -- - protected: - SystemMonitors() = default; - virtual ~SystemMonitors() = default; -diff --git a/include/OpenColorIO/OpenColorTypes.h b/include/OpenColorIO/OpenColorTypes.h -index c400568ea..0df8310e9 100644 ---- a/include/OpenColorIO/OpenColorTypes.h -+++ b/include/OpenColorIO/OpenColorTypes.h -@@ -726,8 +726,7 @@ extern OCIOEXPORT ExposureContrastStyle ExposureContrastStyleFromString(const ch - extern OCIOEXPORT const char * NegativeStyleToString(NegativeStyle style); - extern OCIOEXPORT NegativeStyle NegativeStyleFromString(const char * style); - --/** \defgroup Env. variables. -- * @{ -+/** Env. variables. - * - * These environmental variables are used by the OpenColorIO library. - * For variables that allow specifying more than one token, they should be separated by commas. -@@ -776,10 +775,7 @@ extern OCIOEXPORT const char * OCIO_OPTIMIZATION_FLAGS_ENVVAR; - */ - extern OCIOEXPORT const char * OCIO_USER_CATEGORIES_ENVVAR; - --/** @}*/ -- --/** \defgroup VarsRoles -- * @{ -+/** VarsRoles - */ - - // TODO: Move to .rst -@@ -852,10 +848,7 @@ extern OCIOEXPORT const char * ROLE_INTERCHANGE_SCENE; - */ - extern OCIOEXPORT const char * ROLE_INTERCHANGE_DISPLAY; - --/** @}*/ -- --/** \defgroup VarsSharedView -- * @{ -+/** VarsSharedView - */ - - /*!rst:: -@@ -870,10 +863,7 @@ Shared View - */ - extern OCIOEXPORT const char * OCIO_VIEW_USE_DISPLAY_NAME; - --/** @}*/ -- --/** \defgroup VarsFormatMetadata -- * @{ -+/** VarsFormatMetadata - */ - - // TODO: Move to .rst -@@ -929,10 +919,7 @@ extern OCIOEXPORT const char * METADATA_NAME; - */ - extern OCIOEXPORT const char * METADATA_ID; - --/** @}*/ -- --/** \defgroup VarsCaches -- * @{ -+/** VarsCaches - */ - - /*!rst:: -@@ -963,8 +950,6 @@ extern OCIOEXPORT const char * OCIO_DISABLE_PROCESSOR_CACHES; - // variable to disable the fallback. - extern OCIOEXPORT const char * OCIO_DISABLE_CACHE_FALLBACK; - --/** @}*/ -- - - // Archive config feature - // Default filename (with extension) of an config. diff --git a/media-libs/opencolorio/files/opencolorio-2.2.1-support-minizip-ng-4.patch b/media-libs/opencolorio/files/opencolorio-2.2.1-support-minizip-ng-4.patch deleted file mode 100644 index 8ee4ceaf9970..000000000000 --- a/media-libs/opencolorio/files/opencolorio-2.2.1-support-minizip-ng-4.patch +++ /dev/null @@ -1,92 +0,0 @@ -# From https://github.com/AcademySoftwareFoundation/OpenColorIO/pull/1806 -From d15ccddd4d20d66749577d7444de861112f6864c Mon Sep 17 00:00:00 2001 -From: Brad Smith <brad@comstyle.com> -Date: Thu, 29 Jun 2023 09:57:28 -0400 -Subject: [PATCH] Add support for minizip-ng 4 API - -Signed-off-by: Brad Smith <brad@comstyle.com> ---- - src/OpenColorIO/OCIOZArchive.cpp | 22 +++++++++++++++++++++- - src/apps/ocioarchive/main.cpp | 4 ++++ - 2 files changed, 25 insertions(+), 1 deletion(-) - -diff --git a/src/OpenColorIO/OCIOZArchive.cpp b/src/OpenColorIO/OCIOZArchive.cpp -index 85fc7bb76..24d836e95 100644 ---- a/src/OpenColorIO/OCIOZArchive.cpp -+++ b/src/OpenColorIO/OCIOZArchive.cpp -@@ -225,7 +225,11 @@ void archiveConfig(std::ostream & ostream, const Config & config, const char * c - std::string configStr = ss.str(); - - // Write zip to memory stream. -+#if MZ_VERSION_BUILD >= 040000 -+ write_mem_stream = mz_stream_mem_create(); -+#else - mz_stream_mem_create(&write_mem_stream); -+#endif - mz_stream_mem_set_grow_size(write_mem_stream, 128 * 1024); - mz_stream_open(write_mem_stream, NULL, MZ_OPEN_MODE_CREATE); - -@@ -237,7 +241,11 @@ void archiveConfig(std::ostream & ostream, const Config & config, const char * c - options.compress_level = ArchiveCompressionLevels::BEST; - - // Create the writer handle. -+#if MZ_VERSION_BUILD >= 040000 -+ archiver = mz_zip_writer_create(); -+#else - mz_zip_writer_create(&archiver); -+#endif - - // Archive options. - // Compression method -@@ -332,7 +340,11 @@ void ExtractOCIOZArchive(const char * archivePath, const char * destination) - std::string outputDestination = pystring::os::path::normpath(destination); - - // Create zip reader. -+#if MZ_VERSION_BUILD >= 040000 -+ extracter = mz_zip_reader_create(); -+#else - mz_zip_reader_create(&extracter); -+#endif - - MinizipNgHandlerGuard extracterGuard(extracter, false, false); - -@@ -450,7 +462,11 @@ std::vector<uint8_t> getFileStringFromArchiveFile(const std::string & filepath, - std::vector<uint8_t> buffer; - - // Create the reader object. -+#if MZ_VERSION_BUILD >= 040000 -+ reader = mz_zip_reader_create(); -+#else - mz_zip_reader_create(&reader); -+#endif - - MinizipNgHandlerGuard extracterGuard(reader, false, true); - -@@ -510,7 +526,11 @@ void getEntriesMappingFromArchiveFile(const std::string & archivePath, - void *reader = NULL; - - // Create the reader object. -+#if MZ_VERSION_BUILD >= 040000 -+ reader = mz_zip_reader_create(); -+#else - mz_zip_reader_create(&reader); -+#endif - - MinizipNgHandlerGuard extracterGuard(reader, false, false); - -diff --git a/src/apps/ocioarchive/main.cpp b/src/apps/ocioarchive/main.cpp -index 190cadee5..68054a6da 100644 ---- a/src/apps/ocioarchive/main.cpp -+++ b/src/apps/ocioarchive/main.cpp -@@ -235,7 +235,11 @@ int main(int argc, const char **argv) - } - - std::string path = args[0]; -+#if MZ_VERSION_BUILD >= 040000 -+ reader = mz_zip_reader_create(); -+#else - mz_zip_reader_create(&reader); -+#endif - struct tm tmu_date; - - err = mz_zip_reader_open_file(reader, path.c_str()); diff --git a/media-libs/opencolorio/opencolorio-2.1.3.ebuild b/media-libs/opencolorio/opencolorio-2.1.3.ebuild deleted file mode 100644 index 93f7922f06b6..000000000000 --- a/media-libs/opencolorio/opencolorio-2.1.3.ebuild +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..11} ) - -inherit cmake flag-o-matic python-single-r1 - -DESCRIPTION="Color management framework for visual effects and animation" -HOMEPAGE="https://opencolorio.org https://github.com/AcademySoftwareFoundation/OpenColorIO" -SRC_URI="https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/OpenColorIO-${PV}" - -LICENSE="BSD" -# TODO: drop .1 on next SONAME bump (2.1 -> 2.2?) as we needed to nudge it -# to force rebuild of consumers due to changing to openexr 3 changing API. -SLOT="0/$(ver_cut 1-2).1" -KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv" -IUSE="cpu_flags_x86_sse2 doc opengl python test" -REQUIRED_USE=" - doc? ( python ) - python? ( ${PYTHON_REQUIRED_USE} ) -" - -# Restricting tests, bugs #439790 and #447908 -RESTRICT="test" - -# Works with older OIIO but need to force a version w/ OpenEXR 3 -RDEPEND=" - dev-cpp/pystring - dev-python/pybind11 - <dev-cpp/yaml-cpp-0.8.0:= - >=dev-libs/imath-3.1.4-r2:= - dev-libs/tinyxml - opengl? ( - media-libs/lcms:2 - >=media-libs/openimageio-2.3.12.0-r3:= - media-libs/glew:= - media-libs/freeglut - virtual/opengl - ) - python? ( ${PYTHON_DEPS} ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - doc? ( - $(python_gen_cond_dep ' - dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/testresources[${PYTHON_USEDEP}] - ') - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.1-gcc12.patch - "${FILESDIR}"/${PN}-2.1.2-musl-strtol.patch -) - -pkg_setup() { - use python && python-single-r1_pkg_setup -} - -src_prepare() { - cmake_src_prepare - - sed -i -e "s|LIBRARY DESTINATION lib|LIBRARY DESTINATION $(get_libdir)|g" {,src/bindings/python/,src/OpenColorIO/,src/libutils/oiiohelpers/,src/libutils/oglapphelpers/}CMakeLists.txt || die - sed -i -e "s|ARCHIVE DESTINATION lib|ARCHIVE DESTINATION $(get_libdir)|g" {,src/bindings/python/,src/OpenColorIO/,src/libutils/oiiohelpers/,src/libutils/oglapphelpers/}CMakeLists.txt || die - - # Avoid automagic test dependency on OSL, bug #833933 - # Can cause problems during e.g. OpenEXR unsplitting migration - cmake_run_in tests cmake_comment_add_subdirectory osl -} - -src_configure() { - # Missing features: - # - Truelight and Nuke are not in portage for now, so their support are disabled - # - Java bindings was not tested, so disabled - # Notes: - # - OpenImageIO is required for building ociodisplay and ocioconvert (USE opengl) - # - OpenGL, GLUT and GLEW is required for building ociodisplay (USE opengl) - local mycmakeargs=( - -DOCIO_USE_OPENEXR_HALF=OFF - -DOCIO_BUILD_DOCS=$(usex doc) - -DOCIO_BUILD_APPS=$(usex opengl) - -DOCIO_BUILD_PYTHON=$(usex python) - -DOCIO_PYTHON_VERSION="${EPYTHON/python/}" - -DOCIO_BUILD_JAVA=OFF - -DOCIO_USE_SSE=$(usex cpu_flags_x86_sse2) - -DOCIO_BUILD_TESTS=$(usex test) - -DOCIO_BUILD_GPU_TESTS=$(usex test) - -DOCIO_BUILD_FROZEN_DOCS=$(usex doc) - -DOCIO_INSTALL_EXT_PACKAGES=NONE - ) - - # We need this to work around asserts that can trigger even in proper use cases. - # See https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1235 - append-flags -DNDEBUG - - cmake_src_configure -} diff --git a/media-libs/opencolorio/opencolorio-2.2.1.ebuild b/media-libs/opencolorio/opencolorio-2.4.1.ebuild index df00e5138051..1eb4b6561afa 100644 --- a/media-libs/opencolorio/opencolorio-2.2.1.ebuild +++ b/media-libs/opencolorio/opencolorio-2.4.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit cmake python-single-r1 virtualx @@ -16,8 +16,13 @@ LICENSE="BSD" SLOT="0/$(ver_cut 1-2)" # minizip-ng: ~arm ~arm64 ~ppc64 ~riscv # osl: ~riscv -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="apps cpu_flags_x86_sse2 doc opengl python test" +KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +CPU_USE=( + x86_{avx,avx2,avx512f,f16c,sse2,sse3,sse4_1,sse4_2,ssse3} + # requires https://github.com/DLTcollab/sse2neon + # arm_neon +) +IUSE="apps ${CPU_USE[*]/#/cpu_flags_} doc opengl python test" # TODO: drop opengl? It does nothing without building either the apps or the testsuite REQUIRED_USE=" apps? ( opengl ) @@ -28,7 +33,7 @@ REQUIRED_USE=" RDEPEND=" dev-cpp/pystring - <dev-cpp/yaml-cpp-0.8.0:= + >=dev-cpp/yaml-cpp-0.7.0:= dev-libs/expat >=dev-libs/imath-3.1.5:= sys-libs/minizip-ng @@ -77,12 +82,15 @@ BDEPEND=" # " # Restricting tests, bugs #439790 and #447908 -RESTRICT="!test? ( test )" +# compares floating point numbers for bit equality +# compares floating point number string representations for equality +# https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1361 Apr 4, 2021 +# https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1784 Apr 3, 2023 +RESTRICT="test" #"!test? ( test )" PATCHES=( "${FILESDIR}/${PN}-2.2.1-adjust-python-installation.patch" - "${FILESDIR}/${PN}-2.2.1-support-minizip-ng-4.patch" - "${FILESDIR}/${PN}-${PV}-support-doxygen-1.9.7.patch" + "${FILESDIR}/${PN}-2.3.2-include-cstdint.patch" ) pkg_setup() { @@ -106,26 +114,57 @@ src_configure() { # ocioconvert (USE opengl) # - OpenGL, GLUT and GLEW is required for building ociodisplay (USE opengl) local mycmakeargs=( - -DOCIO_BUILD_APPS=$(usex apps) - -DOCIO_BUILD_DOCS=$(usex doc) - -DOCIO_BUILD_FROZEN_DOCS=$(usex doc) - -DOCIO_BUILD_GPU_TESTS=$(usex test) - -DOCIO_BUILD_JAVA=OFF - -DOCIO_BUILD_PYTHON=$(usex python) - -DOCIO_BUILD_TESTS=$(usex test) - -DOCIO_INSTALL_EXT_PACKAGES=NONE - -DOCIO_USE_OIIO_CMAKE_CONFIG=ON - -DOCIO_USE_SSE=$(usex cpu_flags_x86_sse2) + "-DOCIO_BUILD_APPS=$(usex apps)" + "-DOCIO_BUILD_DOCS=$(usex doc)" + "-DOCIO_BUILD_FROZEN_DOCS=$(usex doc)" + "-DOCIO_BUILD_GPU_TESTS=$(usex test)" + "-DOCIO_BUILD_JAVA=OFF" + "-DOCIO_BUILD_PYTHON=$(usex python)" + "-DOCIO_BUILD_TESTS=$(usex test)" + "-DOCIO_INSTALL_EXT_PACKAGES=NONE" + # allow the user to tell OCIO to display more information when searching and building the dependencies. + # "-DOCIO_VERBOSE=YES" + + "-DOCIO_USE_SIMD=ON" ) + + if use amd64 || use x86 ; then + mycmakeargs+=( + "-DOCIO_USE_SSE2=$(usex cpu_flags_x86_sse2)" + "-DOCIO_USE_SSE3=$(usex cpu_flags_x86_sse3)" + "-DOCIO_USE_SSSE3=$(usex cpu_flags_x86_ssse3)" + "-DOCIO_USE_SSE4=$(usex cpu_flags_x86_sse4_1)" + "-DOCIO_USE_SSE42=$(usex cpu_flags_x86_sse4_2)" + "-DOCIO_USE_AVX=$(usex cpu_flags_x86_avx)" + "-DOCIO_USE_AVX2=$(usex cpu_flags_x86_avx2)" + "-DOCIO_USE_AVX512=$(usex cpu_flags_x86_avx512f)" + "-DOCIO_USE_F16C=$(usex cpu_flags_x86_f16c)" + ) + fi + + # requires https://github.com/DLTcollab/sse2neon + # if use arm || use arm64 ; then + # mycmakeargs+=( + # "-DOCIO_USE_SSE2NEON=$(usex cpu_flags_arm_neon)" + # ) + # fi + use python && mycmakeargs+=( - -DOCIO_PYTHON_VERSION="${EPYTHON/python/}" - -DPython_EXECUTABLE="${PYTHON}" - -DPYTHON_VARIANT_PATH=$(python_get_sitedir) + "-DOCIO_PYTHON_VERSION=${EPYTHON/python/}" + "-DPython_EXECUTABLE=${PYTHON}" + "-DPYTHON_VARIANT_PATH=$(python_get_sitedir)" ) cmake_src_configure } +src_test() { + local myctestargs=( + -j1 + ) + virtx cmake_src_test +} + src_install() { cmake_src_install @@ -135,7 +174,3 @@ src_install() { rmdir "${ED}/usr/share/doc/OpenColorIO" || die fi } - -src_test() { - virtx cmake_src_test -} diff --git a/media-libs/opencv/metadata.xml b/media-libs/opencv/metadata.xml index b23fac5f689f..6dc8077196f8 100644 --- a/media-libs/opencv/metadata.xml +++ b/media-libs/opencv/metadata.xml @@ -15,7 +15,7 @@ Face Recognition; Gesture Recognition; Motion Tracking, Ego Motion, Motion Understanding; Structure From Motion (SFM); and Mobile Robotics. </longdescription> <use> - <flag name="atlas">Use <pkg>sci-libs/atlas</pkg> for blas, lapack and sparse blas routines</flag> + <flag name="atlas">Use <pkg>sci-libs/atlas</pkg> for blas, lapack and sparse blas routines (Experimental!)</flag> <flag name="contrib">Install user contributed scripts from opencv_contrib (Experimental!)</flag> <flag name="contribcvv">Enable CVV in contrib (requires Qt5)</flag> <flag name="contribdnn">Enable DNN module contrib (requires tinydnn)</flag> diff --git a/media-libs/opencv/opencv-4.10.0.ebuild b/media-libs/opencv/opencv-4.10.0.ebuild index 34bfb33194a0..40354686489c 100644 --- a/media-libs/opencv/opencv-4.10.0.ebuild +++ b/media-libs/opencv/opencv-4.10.0.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 @@ -63,7 +63,7 @@ else https://github.com/${PN}/${PN}_extra/archive/refs/tags/${PV}.tar.gz -> ${PN}_extra-${PV}.tar.gz ) " - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv x86" fi LICENSE="Apache-2.0" @@ -381,7 +381,7 @@ cuda_get_host_compiler() { ebegin "testing ${NVCC_CCBIN_default} (default)" - while ! nvcc - -x cu <<<"int main(){}" &>/dev/null; do + while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do eend 1 while true; do @@ -565,8 +565,9 @@ multilib_src_configure() { # bug #919101 and https://github.com/opencv/opencv/issues/19020 filter-lto - if tc-is-gcc && [[ $(gcc-major-version) -ge 15 ]] && use contribdnn; then - append-cxxflags "-fno-tree-vectorize" + # bug #948071 (gcc PR118464) + if tc-is-gcc && [[ $(gcc-major-version) -eq 15 ]]; then + append-cxxflags "-fno-tree-loop-optimize" fi # please don't sort here, order is the same as in CMakeLists.txt diff --git a/media-libs/openexr/Manifest b/media-libs/openexr/Manifest index a8416e9c9951..d12a5a4deed2 100644 --- a/media-libs/openexr/Manifest +++ b/media-libs/openexr/Manifest @@ -1,2 +1,3 @@ DIST openexr-3.2.4.tar.gz 18856440 BLAKE2B f29910b2e36808b741860bf603571f607ca929672b3c5b9de7c7c16242f2a38d02627614c10e7b01a8cfd8804923636eb0dfe2c798ec3ff63252dd20e3f8e535 SHA512 ecc3d8b206bda5e5897ac9cd797a8432b76981de10d49cbb107af2b4108c22186de0dda25a9a43b07e18d641ef71508445d95f659a4ca932e029d48ee029a492 +DIST openexr-3.3.2.tar.gz 21324765 BLAKE2B 82e67953b75da0d27347260099ccae249f5b1946b78eccc383e9278f57565ed5cb9f0fa17385f0c5cdb3815d647197be3661372f9896e10596a8723ea3d8414b SHA512 0c43337fda2979b328202488a43711afb5d680781c933aa0d74970a3dcda1135fbd01228cb10e81e4628c0d19da2d3e5b781e147d609cdc8a796d2a51a90932f DIST openexr-images-1.0.tar.gz 252222962 BLAKE2B d57c458dfbd1b08c964429022b6e08a3309bf11cbd43c64e271ebc620dae6dbe70636e5221f47dabd7fe2aa0806f2cf3f3c9b3f55fd7f45b0a34f3e62b6029e7 SHA512 c1c83a26cd326d0fcda824daccb0044abad46f29e1bd2ceb1c38bc62b3e71f0aeef126dddc4517eb1cb9f7c9d0fe234276a48a754bdb7c7823e9aee459d8670a diff --git a/media-libs/openexr/openexr-3.3.2-r1.ebuild b/media-libs/openexr/openexr-3.3.2-r1.ebuild new file mode 100644 index 000000000000..644df90529d1 --- /dev/null +++ b/media-libs/openexr/openexr-3.3.2-r1.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic + +MY_PN=OpenEXR + +DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries" +HOMEPAGE="https://openexr.com/" +SRC_URI=" + https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + test? ( + utils? ( + https://github.com/AcademySoftwareFoundation/openexr-images/archive/refs/tags/v1.0.tar.gz + -> openexr-images-1.0.tar.gz + ) + ) +" + +LICENSE="BSD" +SLOT="0/32" # based on SONAME +# -ppc -sparc because broken on big endian, bug #818424 +KEYWORDS="amd64 ~arm arm64 ~loong -ppc ~ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~x64-macos" + +IUSE="cpu_flags_x86_avx doc examples large-stack utils test threads" +REQUIRED_USE="doc? ( utils )" +RESTRICT="!test? ( test )" + +RDEPEND=" + app-arch/libdeflate:=[zlib(+)] + >=dev-libs/imath-3.1.6:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + doc? ( sys-apps/help2man ) +" + +PATCHES=( + "${FILESDIR}/${PN}-3.2.1-bintests-iff-utils.patch" +) + +DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md ) + +src_prepare() { + # Fix path for testsuite + sed -e "s:/var/tmp/:${T}:" \ + -i "${S}"/src/test/${MY_PN}Test/tmpDir.h || die "failed to set temp path for tests" + + sed -e "s:if(INSTALL_DOCS):if(OPENEXR_INSTALL_DOCS):" \ + -i docs/CMakeLists.txt || die + + cmake_src_prepare + + if use test && use utils; then + IMAGES=( + Beachball/multipart.0001.exr + Beachball/singlepart.0001.exr + Chromaticities/Rec709.exr + Chromaticities/Rec709_YC.exr + Chromaticities/XYZ.exr + Chromaticities/XYZ_YC.exr + LuminanceChroma/Flowers.exr + LuminanceChroma/Garden.exr + MultiResolution/ColorCodedLevels.exr + MultiResolution/WavyLinesCube.exr + MultiResolution/WavyLinesLatLong.exr + MultiView/Adjuster.exr + TestImages/GammaChart.exr + TestImages/GrayRampsHorizontal.exr + v2/LeftView/Balls.exr + v2/Stereo/Trunks.exr + ) + + mkdir -p "${BUILD_DIR}/src/test/bin" || die + + for image in "${IMAGES[@]}"; do + mkdir -p "${BUILD_DIR}/src/test/bin/$(dirname "${image}")" || die + cp -a "${WORKDIR}/openexr-images-1.0/${image}" "${BUILD_DIR}/src/test/bin/${image}" || die + done + fi + +} + +src_configure() { + if use x86; then + replace-cpu-flags native i686 + fi + + local mycmakeargs=( + -DOPENEXR_CXX_STANDARD="17" + + -DBUILD_SHARED_LIBS="yes" + -DBUILD_TESTING="$(usex test)" + -DBUILD_WEBSITE="no" + + -DOPENEXR_BUILD_EXAMPLES="$(usex examples)" + -DOPENEXR_BUILD_PYTHON="no" + -DOPENEXR_BUILD_TOOLS="$(usex utils)" + -DOPENEXR_ENABLE_LARGE_STACK="$(usex large-stack)" + -DOPENEXR_ENABLE_THREADING="$(usex threads)" + + -DOPENEXR_INSTALL="yes" + -DOPENEXR_INSTALL_DOCS="$(usex doc)" + -DOPENEXR_INSTALL_PKG_CONFIG="yes" + -DOPENEXR_INSTALL_TOOLS="$(usex utils)" + + -DOPENEXR_USE_CLANG_TIDY="no" # don't look for clang-tidy + + -DOPENEXR_FORCE_INTERNAL_DEFLATE="no" + -DOPENEXR_FORCE_INTERNAL_IMATH="no" + ) + if use test; then + # OPENEXR_RUN_FUZZ_TESTS depends on BUILD_TESTING, see + # - https://bugs.gentoo.org/925128 + # - https://openexr.com/en/latest/install.html#component-options + + # NOTE: the fuzz tests are very slow + mycmakeargs+=( -DOPENEXR_RUN_FUZZ_TESTS="ON" ) + fi + + cmake_src_configure +} + +src_test() { + local CMAKE_SKIP_TESTS=() + + use arm64 && CMAKE_SKIP_TESTS+=( + # bug #922247 + 'OpenEXRCore.testDWAACompression' + 'OpenEXRCore.testDWABCompression' + ) + use x86 && CMAKE_SKIP_TESTS+=( + '^OpenEXR.testDwaLookups$' + ) + + cmake_src_test +} + +src_install() { + use examples && docompress -x "/usr/share/doc/${PF}/examples" + + cmake_src_install +} diff --git a/media-libs/openfec/openfec-1.4.2.11-r1.ebuild b/media-libs/openfec/openfec-1.4.2.11-r1.ebuild index 316e50512f58..1b6adacdbebc 100644 --- a/media-libs/openfec/openfec-1.4.2.11-r1.ebuild +++ b/media-libs/openfec/openfec-1.4.2.11-r1.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/roc-streaming/openfec/archive/refs/tags/v${PV}.tar.g # See https://github.com/roc-streaming/openfec/blob/d87b258e3de3cdddf700b40e94c51ec9bd44a47f/CHANGELOG#L47. LICENSE="CeCILL-2 CeCILL-C" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="amd64" PATCHES=( "${FILESDIR}"/${PN}-1.4.2.11-opt.patch diff --git a/media-libs/openh264/Manifest b/media-libs/openh264/Manifest index b34a05fdcc6c..91710f930a55 100644 --- a/media-libs/openh264/Manifest +++ b/media-libs/openh264/Manifest @@ -1,4 +1,5 @@ DIST gmp-api-Firefox114_2-e7d30b921df736a1121a0c8e0cf3ab1ce5b8a4b7.tar.gz 10915 BLAKE2B aa4b82baebbd990d94f381be4516e8780f6bc3a2104c4b899f091a9e6ec91dff9788ee6ef548d3bc07c7bf50f56347c44d01e51805f96cf9b59494889a5f7b61 SHA512 f1c75007d4f1e1ef3a11b8eb9c703935408a5e4051c8eab408e4edc09f265a71f172025269442fdab9d4c2a8b108fa69397bfbd84af4ecda22881b50de804de9 +DIST gmp-api-Firefox135-1f5a2f07a565a9465c14d3a8b12f3202f83c775e.tar.gz 10961 BLAKE2B 4dfb3fa73665a308f1f49ef6c2f293707aabc6bf8e77aa0ab20b578f5fb9650d3275bf7476554360963f0fa75d73d2e2be4f5a228c4344b5853df98678be58fb SHA512 bd040c16ac63b9d37e53952b7082f9bddd8b1e4b198313fc8c570a7950570c8a412088519260f3692b91c079f86f6d6ff7cd383f5e1178b7e2f62e9e28b3b7ff DIST openh264-2.3.1.tar.gz 60290897 BLAKE2B b4480150cfe7c44b89c7b294698db06f93d96f5f9f3ef4345108c4e360e99bc6133407cead54e720e6e74aa17ab9f2e4342287a42f19463a54eb44c9d3141c80 SHA512 fd59c767794cdfb934d692d5929e4500d78606cbf1e403bc7c7dce048cc07e40daa0794357adb856d29479427a53460c76338e156b6bbeaa36139afcd603c8e1 -DIST openh264-2.4.1.tar.gz 60297304 BLAKE2B c66dbe8003072c406641b3f1453df6d8e574b5526d6748d5f4efa4921ca6a438df2e491143dc07c8f9297d253e97cd4ee2dada450845e7d9323cb31dddc6fff4 SHA512 eb99144addd2e9c352bb95e752366e104ac6b0ddc84311dc7c87dafb803f8e7fe4d1e726833d49f8cc6d3914508e19c3a25ef82637a4993e8af3f504aa005baf DIST openh264-2.5.0.tar.gz 60301431 BLAKE2B b999b7aa152c0ef2b95f6d2ef2c8b0483ee4ca3d3c21c3cfe19c121ef09a99bb7a68bd96ec39433e744a25f3c29e016e74b1b0521190bb1a5ef00e9ac8970206 SHA512 cb6d3ca8d5277325dd64dec399421c4c62bc1fd012fe1521d7195e95ce7f59527919cf698829044dca3d9b1d8288c49b49111d01c9d2896c819da806492af838 +DIST openh264-2.6.0.tar.gz 60302243 BLAKE2B 3266f3ee6c30b4a7ab2bea1a604bb6bd0bacd278225f598877f62f0a3469a8c53d2ce8b30ee418eb138eb7f0d9a7607c41e24cc0f8930a4006da60a30cef6efb SHA512 26a03acde7153a6b40b99f00641772433a244c72a3cc4bca6d903cf3b770174d028369a2fb73b2f0774e1124db0e269758eed6d88975347a815e0366c820d247 diff --git a/media-libs/openh264/openh264-2.5.0.ebuild b/media-libs/openh264/openh264-2.5.0.ebuild index 663d3f9ff272..c9c4693d7c06 100644 --- a/media-libs/openh264/openh264-2.5.0.ebuild +++ b/media-libs/openh264/openh264-2.5.0.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 @@ -18,7 +18,7 @@ LICENSE="BSD" # (2.2.0 needed a minor bump due to undocumented but breaking ABI changes, just to be sure. # https://github.com/cisco/openh264/issues/3459 ) SLOT="0/7" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc64 ~riscv ~sparc x86" IUSE="cpu_flags_arm_neon cpu_flags_x86_avx2 +plugin test utils" RESTRICT="bindist !test? ( test )" diff --git a/media-libs/openh264/openh264-2.4.1.ebuild b/media-libs/openh264/openh264-2.6.0.ebuild index 8fe153257518..98df5efca59a 100644 --- a/media-libs/openh264/openh264-2.4.1.ebuild +++ b/media-libs/openh264/openh264-2.6.0.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit toolchain-funcs multilib-minimal -MOZVER=114_2 -MY_GMP_COMMIT="e7d30b921df736a1121a0c8e0cf3ab1ce5b8a4b7" +MOZVER=135 +MY_GMP_COMMIT="1f5a2f07a565a9465c14d3a8b12f3202f83c775e" DESCRIPTION="Cisco OpenH264 library and Gecko Media Plugin for Mozilla packages" HOMEPAGE="https://www.openh264.org/ https://github.com/cisco/openh264" @@ -15,10 +15,8 @@ SRC_URI="https://github.com/cisco/openh264/archive/refs/tags/v${PV}.tar.gz -> ${ LICENSE="BSD" # openh264 soname version. -# (2.2.0 needed a minor bump due to undocumented but breaking ABI changes, just to be sure. -# https://github.com/cisco/openh264/issues/3459 ) -SLOT="0/7" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc64 ~riscv ~sparc x86" +SLOT="0/8" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc64 ~riscv ~sparc ~x86" IUSE="cpu_flags_arm_neon cpu_flags_x86_avx2 +plugin test utils" RESTRICT="bindist !test? ( test )" diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest index e75ca4b50a4c..1d817bd5b805 100644 --- a/media-libs/openimageio/Manifest +++ b/media-libs/openimageio/Manifest @@ -5,8 +5,11 @@ DIST file003.fits 581760 BLAKE2B 35d77c64ff9e25f34593ea41839a4f7712dc344d12ab2c0 DIST file009.fits 25920 BLAKE2B 594061eba4d48da8cbfee58ab592a0adb5a22d681228330e84f60304e5146a8856e9c65b763d6d8e2136217ebe85d92128318cccfcf6358c7bc767232c6382c9 SHA512 57d53622854399aed96efbeff78e700990b2fc63c4dbd1bc9ac58c7670af98d528db2f1a3e9de4e74b977f8318109b465b46423bbac36bf2bf34a1e33e7dcdb8 DIST file012.fits 1019520 BLAKE2B e86d9e0004ca159d9a5ae0585776db65c7dd49162cb5dbd8b511686244950e33746d8a41f60b5ba8fcea220194fa87e16235adb7ccc0b4fb4b0a61e6c5c376a8 SHA512 45439544da478b24ccbcf14dc9a651aa8ecbce29b9992204d85c1eee42bc88b68802ec57bc148510da1e062de95ee53dd5c64c9bfa2e0b6cdfd945a78d1fc76a DIST openimageio-2.5.13.1.tar.gz 52538869 BLAKE2B ceba0bde73cbf2b5b7b243fa1dc4806aece881c37775418c3305d5e5665e1c249219cad2c7b0d9d4acd5955897dc13dfb94e4627e9ae866e6400559b99e7021a SHA512 3c9eb9a361464e73fae518b704438bbf409c846031f05026d8b9ace91431819ac80674130ccd2300deb9756ae26e150bf5c0a866be3f3fb65bdfba0ba60395ab +DIST openimageio-2.5.18.0.tar.gz 52549475 BLAKE2B 8a3f61f6089b304202e829a28946ec8c0bc84e05e61b84dd39f1e036614faab005619962c0217248208e133595f55fa8ffea1d931710a88eff8208b8c36fa2ae SHA512 ab6ef20fe099c19ec8cce1308890e76ec82c4bcdc1d5a2ead8c44f04593c060e819fededb958b7f36ccd0118b1aae9b1c5e12b442f7e066e940b4e32d378f7d9 +DIST openimageio-oexr-test-image-d45a2d5a890d6963b94479c7a644440068c37dd2.tar.gz 263237088 BLAKE2B 9445464b6d75d4800b843bd4a4f88404f587ca4ed384a0c1d428d5a249c04af0c610a95660aac5edff22c003c067e3a907d4a0896d7cfb20731cb486e436f17d SHA512 bbfd8e40eedd26955bc97789bfdfd556ee9ed652babc1c9c60c3cda6e5cab05a0a813323f25bc536132498a2bf3185a07020cd1170c047b72973e2be3e10fe19 DIST openimageio-oexr-test-image-df16e765fee28a947244657cae3251959ae63c00.tar.gz 252131865 BLAKE2B f5f2477897f84148574cdd02b673c7bdff49d8f45026375095bb6f184230466e2e60020be7583e5a5aa0aa9c971e7251979d3eeb2ee620d47342b1e4435427e0 SHA512 e89c2935496c5fec2ebe1175e9b9bd3aecb23374ec3947057195ee6d31a883c1a67c4dc754bf0a5b68859093b5e169b70ffabd4736cf67f9e3dc09f3299fc54f DIST openimageio-oiio-test-image-7d821f02c848022b2ee703d6bee48ca2acbfae70.tar.gz 141224552 BLAKE2B e185f6b2bd345ca0740d1ac7bc48e5a283a80db0d2fa88566367e1179e96d048ac371708db29a6591d0c4eb7f9c171af22bac30fd68bc223e2c373db3b99077d SHA512 a3c9e4151c946b79e2eb37cd53fd2865d6117431ad06e4e35d42c10d9ff8415224e2f20e14af8dd869ec2a6c6faf4f9d8ef28e5b6556c88a54398de4a8843b59 +DIST openimageio-oiio-test-image-7e6d875542b5bc1b2974b7cbecee115365a36527.tar.gz 143496336 BLAKE2B b08d42834f60abd14a64b442e30ec4f80f4bb8095177ffd1ba94240a4c9a3947cdd36f98cd967667e8a5d52fe490a214ad4cd58a836a4acd39bbe1a744eacb8b SHA512 f4f0612b4b3600fbb1ef30b4f196139a300f36e6a8290ee6a49fe0fa86072e2becf3d9e5f32c060b2ed04c0946848976bead62b352996fb8286f9969daf764d1 DIST tst0001.fits 43200 BLAKE2B 7d9d82fde64c3b21f8f86be6feaf9187d48c2c504c9afc0e652015512fb3d9e04c0f78596cdc9d7cc54815175549bfdf01d2d80f894cd36f4e6284aaf065dcc8 SHA512 b401accd51b56a493e2ec52fe4441e05cbefa3d03fe0e1c6834327094ab9f8e0c69a0f2cff26007ed7c7f8686a78a3a7e043d945f3a93c1b68e03668b8cbdc5c DIST tst0003.fits 152640 BLAKE2B 74c38c9f6cd65a46eff865589bd319111187d123c90bedc80f934caf6625f20120ecb30e8f5210c7d5d6609964e63fc2c2fc59f60bf609a07f2440421f44356e SHA512 4cd9c9a96fd3a5b8daae7d6b34af4c68c965abc4cc825aaaf9f3587a43328f468595ff1cd210e9fbca365bd52bf31a70abf39b2b3966d3087dd3af40ba0781a4 DIST tst0005.fits 48960 BLAKE2B ef8bb62702f579c8500721835100e150b2ca73272866a88457589d6f14b407efb41d106be2d454089dae00c04b903bb874132d5b44852245e6d4372ed20c7b6f SHA512 515a4dbca51e5b7fa0139b369066c02fcfa96eeffb471c6f5073343ab50da527ee610d9b677e6fabdaad1b7f9f9c68bd65eb71c5b944e5ffacf429d01fe14a39 diff --git a/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch b/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch new file mode 100644 index 000000000000..e9fb9a4b1911 --- /dev/null +++ b/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch @@ -0,0 +1,31 @@ +From: Paul Zander <negril.nx+gentoo@gmail.com> +Make fits test images download optional +Make j2k test images download optional + +diff --git a/src/cmake/testing.cmake b/src/cmake/testing.cmake +index b671def..ff84b7d 100644 +--- a/src/cmake/testing.cmake ++++ b/src/cmake/testing.cmake +@@ -271,9 +271,11 @@ macro (oiio_add_all_tests) + IMAGEDIR oiio-images URL "Recent checkout of OpenImageIO-images") + oiio_add_tests (jpeg2000 + FOUNDVAR OPENJPEG_FOUND ++ ENABLEVAR ENABLE_OPENJPEG + IMAGEDIR oiio-images URL "Recent checkout of OpenImageIO-images") + oiio_add_tests (jpeg2000-j2kp4files + FOUNDVAR OPENJPEG_FOUND ++ ENABLEVAR ENABLE_OPENJPEG + IMAGEDIR j2kp4files_v1_5 + URL http://www.itu.int/net/ITU-T/sigdb/speimage/ImageForm-s.aspx?val=10100803) + set (all_openexr_tests +@@ -410,6 +410,10 @@ function (oiio_setup_test_data) + oiio_get_test_data (openexr-images + REPO https://github.com/AcademySoftwareFoundation/openexr-images.git + BRANCH main) ++ if(ENABLE_FITS) + oiio_get_test_data (fits-images) ++ endif() ++ if(ENABLE_OPENJPEG) + oiio_get_test_data (j2kp4files_v1_5) ++ endif() + endfunction () diff --git a/media-libs/openimageio/metadata.xml b/media-libs/openimageio/metadata.xml index ebe3fe1f3f72..f292b41f7508 100644 --- a/media-libs/openimageio/metadata.xml +++ b/media-libs/openimageio/metadata.xml @@ -8,11 +8,10 @@ <use> <flag name="dicom">Enable DICOM medical image file support via <pkg>sci-libs/dcmtk</pkg></flag> <flag name="fits">Enable support for NASA's <pkg>sci-libs/cfitsio</pkg> library</flag> - <flag name="gui">Build iv (with Qt5)</flag> + <flag name="gui">Build iv with <pkg>dev-qt/qtbase</pkg></flag> <flag name="opencv">Enable OpenCV support via <pkg>media-libs/opencv</pkg></flag> <flag name="openvdb">Enable OpenVDB support via <pkg>media-gfx/openvdb</pkg></flag> <flag name="ptex">Enable Ptex texture mapping system file support via <pkg>media-libs/ptex</pkg></flag> - <flag name="qt6">Build iv with Qt6</flag> <flag name="tools">Build the command-line tools</flag> </use> <upstream> diff --git a/media-libs/openimageio/openimageio-2.5.13.1.ebuild b/media-libs/openimageio/openimageio-2.5.13.1.ebuild index 0e6c33de61fd..8a45d68d0cb3 100644 --- a/media-libs/openimageio/openimageio-2.5.13.1.ebuild +++ b/media-libs/openimageio/openimageio-2.5.13.1.ebuild @@ -48,7 +48,7 @@ X86_CPU_FEATURES=( ) CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) -IUSE="dicom doc ffmpeg fits gif gui jpeg2k opencv openvdb ptex python qt6 raw test +tools +truetype ${CPU_FEATURES[*]%:*}" +IUSE="dicom doc ffmpeg fits gif gui jpeg2k opencv openvdb ptex python raw test +tools +truetype ${CPU_FEATURES[*]%:*}" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) gui? ( tools ) test? ( tools truetype )" RESTRICT="!test? ( test )" @@ -99,15 +99,7 @@ RDEPEND=" ) gui? ( media-libs/libglvnd - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtopengl:5 - dev-qt/qtwidgets:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,widgets,opengl] - ) + dev-qt/qtbase:6[gui,widgets,opengl] ) raw? ( media-libs/libraw:= ) truetype? ( media-libs/freetype:2= ) @@ -246,9 +238,6 @@ src_configure() { if use gui; then mycmakeargs+=( -DUSE_IV="yes" -DUSE_OPENGL="yes" -DUSE_QT="yes" ) - if ! use qt6; then - mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6="yes" ) - fi else mycmakeargs+=( -DUSE_QT="no" diff --git a/media-libs/openimageio/openimageio-2.5.18.0.ebuild b/media-libs/openimageio/openimageio-2.5.18.0.ebuild new file mode 100644 index 000000000000..a036d8cbe26c --- /dev/null +++ b/media-libs/openimageio/openimageio-2.5.18.0.ebuild @@ -0,0 +1,302 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} ) + +TEST_OIIO_IMAGE_COMMIT="7e6d875542b5bc1b2974b7cbecee115365a36527" +TEST_OEXR_IMAGE_COMMIT="d45a2d5a890d6963b94479c7a644440068c37dd2" +inherit cmake flag-o-matic python-single-r1 virtualx + +DESCRIPTION="A library for reading and writing images" +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO" +SRC_URI=" + https://github.com/AcademySoftwareFoundation/OpenImageIO/archive/v${PV}.tar.gz -> ${P}.tar.gz + test? ( + https://github.com/AcademySoftwareFoundation/OpenImageIO-images/archive/${TEST_OIIO_IMAGE_COMMIT}.tar.gz + -> ${PN}-oiio-test-image-${TEST_OIIO_IMAGE_COMMIT}.tar.gz + https://github.com/AcademySoftwareFoundation/openexr-images/archive/${TEST_OEXR_IMAGE_COMMIT}.tar.gz + -> ${PN}-oexr-test-image-${TEST_OEXR_IMAGE_COMMIT}.tar.gz + jpeg2k? ( https://www.itu.int/wftp3/Public/t/testsignal/SpeImage/T803/v2002_11/J2KP4files.zip ) + + fits? ( + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file001.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file002.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file003.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file009.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file012.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0001.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0003.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0005.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0006.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0007.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0008.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0013.fits + ) + ) +" +S="${WORKDIR}/OpenImageIO-${PV}" + +LICENSE="Apache-2.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv" + +X86_CPU_FEATURES=( + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c +) +CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) + +IUSE="dicom doc ffmpeg fits gif gui jpeg2k opencv openvdb ptex python raw test +tools +truetype ${CPU_FEATURES[*]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) gui? ( tools ) test? ( tools truetype )" + +RESTRICT="!test? ( test )" + +BDEPEND=" + jpeg2k? ( app-arch/unzip ) + doc? ( + app-text/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) +" +RDEPEND=" + dev-libs/boost:= + dev-cpp/robin-map + dev-libs/libfmt:= + dev-libs/pugixml:= + >=media-libs/libheif-1.13.0:= + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + >=media-libs/libwebp-0.2.1:= + >=dev-libs/imath-3.1.2-r4:= + >=media-libs/opencolorio-2.1.1-r4:= + >=media-libs/openexr-3:0= + media-libs/tiff:= + sys-libs/zlib:= + dicom? ( sci-libs/dcmtk ) + ffmpeg? ( media-video/ffmpeg:= ) + fits? ( sci-libs/cfitsio:= ) + gif? ( media-libs/giflib:0= ) + jpeg2k? ( >=media-libs/openjpeg-2.0:2= ) + opencv? ( media-libs/opencv:= ) + openvdb? ( + dev-cpp/tbb:= + media-gfx/openvdb:= + ) + ptex? ( media-libs/ptex:= ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + ) + gui? ( + media-libs/libglvnd + dev-qt/qtbase:6[gui,widgets,opengl] + ) + raw? ( media-libs/libraw:= ) + truetype? ( media-libs/freetype:2= ) +" +DEPEND=" + ${RDEPEND} +" + +DOCS=( + CHANGES.md + CREDITS.md + README.md +) + +PATCHES=( + "${FILESDIR}/${PN}-2.5.8.0-fix-tests.patch" + "${FILESDIR}/${PN}-2.5.12.0-heif-find-fix.patch" + "${FILESDIR}/${PN}-2.5.18.0-tests-optional.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if ! use dicom; then + rm "src/dicom.imageio" -r || die + fi + + if ! use gif; then + rm src/gif.imageio -r || die + fi + + if ! use jpeg2k; then + rm src/jpeg2000.imageio -r || die + fi + + if ! use raw; then + rm src/raw.imageio -r || die + fi + + cmake_src_prepare + cmake_comment_add_subdirectory src/fonts + + if use test ; then + ln -s "${WORKDIR}/OpenImageIO-images-${TEST_OIIO_IMAGE_COMMIT}" "${WORKDIR}/oiio-images" || die + ln -s "${WORKDIR}/openexr-images-${TEST_OEXR_IMAGE_COMMIT}" "${WORKDIR}/openexr-images" || die + + if use fits; then + mkdir -p "${WORKDIR}/fits-images/"{ftt4b,pg93} || die + for a in ${A}; do + if [[ "${a}" == file*.fits ]]; then + ln -s "${DISTDIR}/${a}" "${WORKDIR}/fits-images/ftt4b/" || die + fi + if [[ "${a}" == tst*.fits ]]; then + ln -s "${DISTDIR}/${a}" "${WORKDIR}/fits-images/pg93/" || die + fi + done + fi + + if use jpeg2k; then + ln -s "${WORKDIR}/J2KP4files" "${WORKDIR}/j2kp4files_v1_5" || die + fi + + cp testsuite/heif/ref/out-libheif1.1{2,5}-orient.txt || die + eapply "${FILESDIR}/${PN}-2.5.12.0_heif_test.patch" + fi +} + +src_configure() { + # Build with SIMD support + local cpufeature + local mysimd=() + for cpufeature in "${CPU_FEATURES[@]}"; do + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}") + done + + # If no CPU SIMDs were used, completely disable them + [[ -z ${mysimd[*]} ]] && mysimd=("0") + + # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully + # Even if there are no SIMD features selected, it seems like the code will turn on NEON support if it is available. + use arm64 && append-flags -flax-vector-conversions + + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118077 + if tc-is-gcc && [[ $(gcc-major-version) -eq 15 ]]; then + append-flags -fno-early-inlining + fi + + local mycmakeargs=( + -DVERBOSE="yes" + -DINTERNALIZE_FMT="no" + # -DALWAYS_PREFER_CONFIG="yes" + # -DGLIBCXX_USE_CXX11_ABI="yes" + # -DTEX_BATCH_SIZE="8" # TODO AVX512 -> 16 + -DSTOP_ON_WARNING="OFF" + + -DCMAKE_CXX_STANDARD="17" + -DDOWNSTREAM_CXX_STANDARD="17" + + -DCMAKE_UNITY_BUILD_MODE="BATCH" + -DUNITY_SMALL_BATCH_SIZE="$(nproc)" + + -DBUILD_DOCS="$(usex doc)" + # -DBUILD_OIIOUTIL_ONLY="no" + -DBUILD_TESTING="$(usex test)" + + -DINSTALL_FONTS="OFF" + -DINSTALL_DOCS="$(usex doc)" + + -DENABLE_DCMTK="$(usex dicom)" + -DENABLE_FFmpeg="$(usex ffmpeg)" + -DENABLE_FITS="$(usex fits)" + -DENABLE_FREETYPE="$(usex truetype)" + -DENABLE_GIF="$(usex gif)" + -DENABLE_LibRaw="$(usex raw)" + -DENABLE_Nuke="no" # not in Gentoo + -DENABLE_OpenCV="$(usex opencv)" + -DENABLE_OpenJPEG="$(usex jpeg2k)" + -DENABLE_OpenVDB="$(usex openvdb)" + -DENABLE_TBB="$(usex openvdb)" + -DENABLE_Ptex="$(usex ptex)" + + -DENABLE_GIF="$(usex gif)" + -DENABLE_LIBRAW="$(usex raw)" + -DENABLE_PTEX="$(usex ptex)" + -DENABLE_OPENJPEG="$(usex jpeg2k)" + + -DOIIO_BUILD_TOOLS="$(usex tools)" + -DOIIO_BUILD_TESTS="$(usex test)" + -DOIIO_DOWNLOAD_MISSING_TESTDATA="no" + + -DUSE_CCACHE="no" + -DUSE_EXTERNAL_PUGIXML="yes" + # -DUSE_LIBCPLUSPLUS="yes" + -DUSE_R3DSDK="no" # not in Gentoo + -DUSE_PYTHON="$(usex python)" + -DUSE_SIMD="$(local IFS=','; echo "${mysimd[*]}")" +) + + if use gui; then + mycmakeargs+=( + -DUSE_IV="yes" + -DUSE_OPENGL="yes" + -DUSE_QT="yes" + ) + else + mycmakeargs+=( + -DUSE_QT="no" + ) + fi + + if use python; then + mycmakeargs+=( + "-DPYTHON_VERSION=${EPYTHON#python}" + "-DPYTHON_SITE_DIR=$(python_get_sitedir)" + ) + fi + + cmake_src_configure +} + +src_test() { + # A lot of tests needs to have access to the installed data files. + # So install them into the image directory now. + DESTDIR="${T}" cmake_build install + + CMAKE_SKIP_TESTS=( + "-broken$" + "texture-levels-stochaniso.batch" + "unit_simd" + ) + + sed -e "s#../../../testsuite#../../../OpenImageIO-${PV}/testsuite#g" \ + -i "${CMAKE_USE_DIR}/testsuite/python-imagebufalgo/ref/out.txt" || die + + local -x CI CMAKE_PREFIX_PATH LD_LIBRARY_PATH OPENIMAGEIO_FONTS PYTHONPATH + CI=true + CMAKE_PREFIX_PATH="${T}/usr" + LD_LIBRARY_PATH="${T}/usr/$(get_libdir)" + OPENIMAGEIO_FONTS="${CMAKE_USE_DIR}/src/fonts" + + if use python; then + PYTHONPATH="${T}$(python_get_sitedir)" + fi + + virtx cmake_src_test + + # Clean up the image directory for src_install + rm -fr "${T:?}"/usr || die +} + +src_install() { + cmake_src_install + + # remove Windows loader file + if use python; then + rm "${D}$(python_get_sitedir)/__init__.py" || die + fi +} diff --git a/media-libs/openjpeg/Manifest b/media-libs/openjpeg/Manifest index b35ac21ae8ba..7ccd4bbc1907 100644 --- a/media-libs/openjpeg/Manifest +++ b/media-libs/openjpeg/Manifest @@ -1,4 +1,6 @@ DIST openjpeg-2.5.0.tar.gz 1867111 BLAKE2B 472d9998a7407574d3bc059d1c0b662a8a553cfe5cb7806a022cb35e14564417a8e06e9970f06d8e65ef149019bab747caefa8e29bc793d07ad86e076909d306 SHA512 08975a2dd79f1e29fd1824249a5fbe66026640ed787b3a3aa8807c2c69f994240ff33e2132f8bf15bbc2202bef7001f98e42d487231d4eebc8e503538658049a DIST openjpeg-2.5.2.tar.gz 1871948 BLAKE2B 4c23eecd603c620d3555fa02055104d292cdf4bbb88ab3d8d8a8f62e3c21b52d3c6d9211d8dd6f11d76fb1ca6f2333a7305ae07b5883a62eb7fc28ec9dfafc0f SHA512 24c058b3e0710e689ba7fd6bce8a88353ce64e825b2e5bbf6b00ca3f2a2ec1e9c70a72e0252a5c89d10c537cf84d55af54bf2f16c58ca01db98c2018cf132e1a +DIST openjpeg-2.5.3.tar.gz 2155188 BLAKE2B 170a425a9180b734ded086ee6c5292f246324260f948598d081c2c27e90328e2f48ad86990a918cf358e0affc5b87e6f973412fea239cafb8f78a71a97c54be3 SHA512 22378f5c38c1eb8ade853716897201d8a253024638bdf94fd9851d6a456601071e705c797c5ffeeb6924be14d7356f9a67f15c2b99e96f7d27fc375a9d94505a DIST openjpeg-data_20210926.tar.gz 498600110 BLAKE2B 34a1c39379d9f8f4caad6c8263a4bc59e62a6a3b8db744eaeaa7047e58813636341b3fb7ee6a121b7dfcd4bc085f9884c3aef86605633ff0d84a1b77cf003624 SHA512 4444225ddb9c548d7753561188cd2d595ae13d7a45471240fac69c3de786a97fb899cd5bbc67cf1b54bfccff0dcd215ec6e83d1bd66982a44c802d163e365dae DIST openjpeg-data_20230923.tar.gz 498600318 BLAKE2B cf595b9f8690ad0b9616f080c3bfdaf553802912cd41015f86766085c0bd021cead294372bd9925c2a569fabbd9a0f1684bcf6eb1b5ecdc14d64231a76401a3b SHA512 3e1e3bb489eac6047671395fbf92bbfb2ad7c7c0206c1a233c215ba3d5b5263a6ce65d523f98fdaa4949e28eaa179716264f89eebf73b44c71373a9c86313cc1 +DIST openjpeg-data_20241113.tar.gz 498662590 BLAKE2B 140c2fb2985a59413b1fb8ec52d2dd1e08f1795368b71565a801d425dc1c933b396f674a3c1aca194d4f7cac6574d181acb383fd72dc2083864ca6eee240c2d4 SHA512 5fa7eaa12eae88c0e3d0624f19a6c0aef4890d601d1e5d8aaf52db3e4d7387ae17ab9017cc4ed641283c616d9b440aaec6ca300cab11b4c245cb838f69d93237 diff --git a/media-libs/openjpeg/openjpeg-2.5.3.ebuild b/media-libs/openjpeg/openjpeg-2.5.3.ebuild new file mode 100644 index 000000000000..fc91387b2c6f --- /dev/null +++ b/media-libs/openjpeg/openjpeg-2.5.3.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib flag-o-matic + +# Make sure that test data are not newer than release; +# otherwise we will see "Found-But-No-Test" test failures! +# +# To update: Go to https://github.com/uclouvain/openjpeg-data and grab the hash +# of the latest possible commit whose commit date is older than the release +# date. +MY_TESTDATA_COMMIT="39524bd3a601d90ed8e0177559400d23945f96a9" + +DESCRIPTION="Open-source JPEG 2000 library" +HOMEPAGE="https://www.openjpeg.org" +SRC_URI="https://github.com/uclouvain/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + test? ( https://github.com/uclouvain/openjpeg-data/archive/${MY_TESTDATA_COMMIT}.tar.gz -> ${PN}-data_20241113.tar.gz )" + +LICENSE="BSD-2" +SLOT="2/7" # based on SONAME +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc test" +RESTRICT="!test? ( test )" + +RDEPEND=" + media-libs/lcms:2 + media-libs/libpng:0= + media-libs/tiff:= + sys-libs/zlib:= +" +DEPEND="${RDEPEND}" +BDEPEND="doc? ( app-text/doxygen )" + +DOCS=( AUTHORS.md CHANGELOG.md NEWS.md README.md THANKS.md ) + +src_prepare() { + if use test; then + mv "${WORKDIR}"/openjpeg-data-${MY_TESTDATA_COMMIT} "${WORKDIR}"/data || + die "Failed to rename test data" + fi + + cmake_src_prepare +} + +multilib_src_configure() { + append-lfs-flags + + local mycmakeargs=( + -DBUILD_TESTING="$(multilib_native_usex test)" + -DBUILD_DOC=$(multilib_native_usex doc ON OFF) + -DBUILD_CODEC=$(multilib_is_native_abi && echo ON || echo OFF) + -DBUILD_STATIC_LIBS=OFF + ) + + # Cheat a little bit and force disabling fixed point magic + # The test suite is extremely fragile to small changes + # bug #715130, bug #715422 + # https://github.com/uclouvain/openjpeg/issues/1017 + if multilib_is_native_abi && use test ; then + append-cflags "-ffp-contract=off" + fi + + cmake_src_configure +} + +multilib_src_test() { + if ! multilib_is_native_abi ; then + elog "Cannot run tests for non-multilib abi." + return 0 + fi + + pushd "${BUILD_DIR}" > /dev/null || die + [[ -e CTestTestfile.cmake ]] || die "Test suite not available! Check source!" + + elog "Note: Upstream maintains a list of known test failures." + elog "We collect all the known failures and skip them." + elog + + local toskip=( "${S}"/tools/travis-ci/knownfailures-all.txt ) + if use amd64 ; then + toskip+=( "${S}"/tools/travis-ci/knownfailures-*x86_64*.txt ) + elif use x86 || use arm || use arm64; then + toskip+=( "${S}"/tools/travis-ci/knownfailures-*i386*.txt ) + fi + + local exp=$(sort "${toskip[@]}" | uniq | tr '\n' '|'; assert) + popd > /dev/null || die + + local myctestargs=() + if [[ -n ${TEST_VERBOSE} ]]; then + myctestargs+=( --extra-verbose --output-on-failure ) + fi + myctestargs+=( -E "(${exp::-1})" ) + + cmake_src_test +} diff --git a/media-libs/openpgl/openpgl-0.6.0.ebuild b/media-libs/openpgl/openpgl-0.6.0.ebuild index a3ebfbe61803..a0552f20c28b 100644 --- a/media-libs/openpgl/openpgl-0.6.0.ebuild +++ b/media-libs/openpgl/openpgl-0.6.0.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 @@ -11,7 +11,7 @@ SRC_URI="https://github.com/RenderKit/openpgl/archive/v${PV}.tar.gz -> ${P}.tar. LICENSE="Apache-2.0" SLOT="0/$(ver_cut 1-2)" -KEYWORDS="-* ~amd64 ~arm64" +KEYWORDS="-* amd64 ~arm64" X86_CPU_FLAGS=( sse4_2 avx2 avx512dq ) CPU_FLAGS=( "${X86_CPU_FLAGS[@]/#/cpu_flags_x86_}" ) diff --git a/media-libs/opensubdiv/opensubdiv-3.6.0-r1.ebuild b/media-libs/opensubdiv/opensubdiv-3.6.0-r1.ebuild index 118c43243cc4..849dfa35702b 100644 --- a/media-libs/opensubdiv/opensubdiv-3.6.0-r1.ebuild +++ b/media-libs/opensubdiv/opensubdiv-3.6.0-r1.ebuild @@ -56,7 +56,7 @@ RDEPEND=" opencl? ( virtual/opencl ) openmp? ( || ( sys-devel/gcc:*[openmp] - sys-libs/libomp + llvm-runtimes/openmp ) ) ptex? ( media-libs/ptex ) tbb? ( dev-cpp/tbb:= ) diff --git a/media-libs/opensubdiv/opensubdiv-3.6.0-r2.ebuild b/media-libs/opensubdiv/opensubdiv-3.6.0-r2.ebuild index 7c2bfcedf8c9..d586a94a42ac 100644 --- a/media-libs/opensubdiv/opensubdiv-3.6.0-r2.ebuild +++ b/media-libs/opensubdiv/opensubdiv-3.6.0-r2.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 @@ -18,7 +18,7 @@ S="${WORKDIR}/OpenSubdiv-${MY_PV}" # See for example CMakeLists.txt for details. LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~x86" IUSE="X cuda doc examples glfw opencl +opengl openmp ptex python tbb test tutorials" RESTRICT="!test? ( test )" @@ -53,7 +53,7 @@ RDEPEND=" opencl? ( virtual/opencl ) openmp? ( || ( sys-devel/gcc:*[openmp] - sys-libs/libomp + llvm-runtimes/openmp ) ) ptex? ( media-libs/ptex ) tbb? ( dev-cpp/tbb:= ) diff --git a/media-libs/osl/Manifest b/media-libs/osl/Manifest index e2e30825190e..8cdddaf497e7 100644 --- a/media-libs/osl/Manifest +++ b/media-libs/osl/Manifest @@ -1,2 +1,3 @@ DIST osl-1.12.14.0.tar.gz 20555853 BLAKE2B 4f6bc2084e4c1b25e707a37830961f20926e6ab5cb915c763cbd8126127e70f6368832077729ab5e044f573e8c38c4afb413eff8adccee5ea1ae96cb9be43b6e SHA512 51641e58fb0bba042853e3976c104decc788f1b1d3ec2e33a3f5504b11b05950dc38766ffb066b0f76edc4e0a8829d6b7dd408d9288b74d69380395b1d991bd5 DIST osl-1.13.10.0.tar.gz 21776721 BLAKE2B 6b40adcf50403292003ae8216e60328d5af6d25bf22cd241aeb4f99b1d39c628c78fe1bc8372226c984ca38b6e08427525f12dc38e5b6d3355de02cbc71f1b7b SHA512 f005b8797a7bb882bcdf4fd644551d42c150956baa8dd9deff39ff1121321f33b8e144a9a96ac940ae6bf60985c6131457131baa87c73c2b498298aaa77c3c7d +DIST osl-1.13.12.0.tar.gz 21824352 BLAKE2B 0d5c1d166afc347a515187c34d60c0a2be99e8a1b7078a388190f2232ee545654e3c1fea829dfabb7b0a105d69d3d98cc5dae4fa8f4db1a2228f9f258b34e76b SHA512 152a1b085c4ea88c86bc0ccbd694b848b9f50bd91f1a165899c2c3999042e413e54cdfb83dd90ea23daeeb2a3b65f794b8b2c19e9629bbda266971dcd6e3b5e7 diff --git a/media-libs/osl/files/osl-1.12.14.0-libfmt11.patch b/media-libs/osl/files/osl-1.12.14.0-libfmt11.patch new file mode 100644 index 000000000000..6b0d7caead64 --- /dev/null +++ b/media-libs/osl/files/osl-1.12.14.0-libfmt11.patch @@ -0,0 +1,431 @@ +From 62ab57dcaa96587c9c7d014571c4b83da1181090 Mon Sep 17 00:00:00 2001 +From: Larry Gritz <lg@larrygritz.com> +Date: Mon, 13 Mar 2023 09:58:11 -0700 +Subject: [PATCH] oslc: simple constant folding of binary expressions on the + oslc side + +The runtime optimization does a great job of constant folding, and +we'd pushed it there because, with instance parameter values and +shader network connections known, it can find so much more opportunity +to optimize than we could in oslc. + +However, there is one pesky problem, which is that shader parameters +that are initialized to even simple expressions such as 3+1 end up +with "init ops", which although later constant folded by the time the +shader is JITed, make it impossible to know the value via OSLQuery. + +So this patch just takes the simplest cases -- certain `int OP int` +and `float OP float` expressions involving literal constants, and +performs the operation as it's parsing the code. So + + int val = 3 + 1; + +actually just immediately is turned into `val = 4` instead of making +an "add". + +To reiterate, the add would never have happened while executing the +shader -- at runtime in the renderer, when it's time to optimize and +JIT the shader, it would know it's a constant 4 value. This is +strictly about making oslc directly output an .oso file that knows +that parameter `val` has default value 4 instead of throwing up its +hands and saying "it's math code that will be evaluated later." + +Signed-off-by: Larry Gritz <lg@larrygritz.com> +--- + src/cmake/testing.cmake | 1 + + src/liboslcomp/ast.cpp | 63 +++++++++++++++++++++++ + src/liboslcomp/ast.h | 4 ++ + src/liboslcomp/oslgram.y | 36 +++++++------- + testsuite/oslc-literalfold/ref/out.txt | 28 +++++++++++ + testsuite/oslc-literalfold/run.py | 7 +++ + testsuite/oslc-literalfold/test.osl | 69 ++++++++++++++++++++++++++ + 7 files changed, 190 insertions(+), 18 deletions(-) + create mode 100644 testsuite/oslc-literalfold/ref/out.txt + create mode 100755 testsuite/oslc-literalfold/run.py + create mode 100644 testsuite/oslc-literalfold/test.osl + +diff --git a/src/cmake/testing.cmake b/src/cmake/testing.cmake +index 0ae2c200e..3ce6f2a3d 100644 +--- a/src/cmake/testing.cmake ++++ b/src/cmake/testing.cmake +@@ -299,6 +299,7 @@ macro (osl_add_all_tests) + oslc-err-struct-dup oslc-err-struct-print + oslc-err-type-as-variable + oslc-err-unknown-ctr ++ oslc-literalfold + oslc-pragma-warnerr + oslc-warn-commainit + oslc-variadic-macro +diff --git a/src/liboslcomp/ast.cpp b/src/liboslcomp/ast.cpp +index 0ae74db48..74873e1c1 100644 +--- a/src/liboslcomp/ast.cpp ++++ b/src/liboslcomp/ast.cpp +@@ -1187,6 +1187,69 @@ ASTbinary_expression::ASTbinary_expression(OSLCompilerImpl* comp, Operator op, + + + ++ASTNode* ++ASTbinary_expression::make(OSLCompilerImpl* comp, Operator op, ASTNode* left, ++ ASTNode* right) ++{ ++ // If the left and right are both literal constants, fold the expression ++ if (left->nodetype() == literal_node && right->nodetype() == literal_node) { ++ ASTNode* cf = nullptr; // constant-folded result ++ if (left->typespec().is_int() && right->typespec().is_int()) { ++ int lv = dynamic_cast<ASTliteral*>(left)->intval(); ++ int rv = dynamic_cast<ASTliteral*>(right)->intval(); ++ switch (op) { ++ case Mul: cf = new ASTliteral(comp, lv * rv); break; ++ case Div: cf = new ASTliteral(comp, rv ? lv / rv : 0); break; ++ case Add: cf = new ASTliteral(comp, lv + rv); break; ++ case Sub: cf = new ASTliteral(comp, lv - rv); break; ++ case Mod: cf = new ASTliteral(comp, rv ? lv % rv : 0); break; ++ case Equal: cf = new ASTliteral(comp, lv == rv ? 1 : 0); break; ++ case NotEqual: cf = new ASTliteral(comp, lv != rv ? 1 : 0); break; ++ case Greater: cf = new ASTliteral(comp, lv > rv ? 1 : 0); break; ++ case Less: cf = new ASTliteral(comp, lv < rv ? 1 : 0); break; ++ case GreaterEqual: ++ cf = new ASTliteral(comp, lv >= rv ? 1 : 0); ++ break; ++ case LessEqual: cf = new ASTliteral(comp, lv <= rv ? 1 : 0); break; ++ case BitAnd: cf = new ASTliteral(comp, lv & rv); break; ++ case BitOr: cf = new ASTliteral(comp, lv | rv); break; ++ case Xor: cf = new ASTliteral(comp, lv ^ rv); break; ++ case ShiftLeft: cf = new ASTliteral(comp, lv << rv); break; ++ case ShiftRight: cf = new ASTliteral(comp, lv >> rv); break; ++ default: break; ++ } ++ } else if (left->typespec().is_float() ++ && right->typespec().is_float()) { ++ float lv = dynamic_cast<ASTliteral*>(left)->floatval(); ++ float rv = dynamic_cast<ASTliteral*>(right)->floatval(); ++ switch (op) { ++ case Mul: cf = new ASTliteral(comp, lv * rv); break; ++ case Div: cf = new ASTliteral(comp, rv ? lv / rv : 0.0f); break; ++ case Add: cf = new ASTliteral(comp, lv + rv); break; ++ case Sub: cf = new ASTliteral(comp, lv - rv); break; ++ case Equal: cf = new ASTliteral(comp, lv == rv ? 1 : 0); break; ++ case NotEqual: cf = new ASTliteral(comp, lv != rv ? 1 : 0); break; ++ case Greater: cf = new ASTliteral(comp, lv > rv ? 1 : 0); break; ++ case Less: cf = new ASTliteral(comp, lv < rv ? 1 : 0); break; ++ case GreaterEqual: ++ cf = new ASTliteral(comp, lv >= rv ? 1 : 0); ++ break; ++ case LessEqual: cf = new ASTliteral(comp, lv <= rv ? 1 : 0); break; ++ default: break; ++ } ++ } ++ if (cf) { ++ delete left; ++ delete right; ++ return cf; ++ } ++ } ++ ++ return new ASTbinary_expression(comp, op, left, right); ++} ++ ++ ++ + const char* + ASTbinary_expression::childname(size_t i) const + { +diff --git a/src/liboslcomp/ast.h b/src/liboslcomp/ast.h +index db9bd14e5..f4bd2eeec 100644 +--- a/src/liboslcomp/ast.h ++++ b/src/liboslcomp/ast.h +@@ -832,6 +832,10 @@ class ASTbinary_expression final : public ASTNode { + ASTbinary_expression(OSLCompilerImpl* comp, Operator op, ASTNode* left, + ASTNode* right); + ++ // Special consructor wrapper that can collapse ops between literals ++ static ASTNode* make(OSLCompilerImpl* comp, Operator op, ASTNode* left, ++ ASTNode* right); ++ + const char* nodetypename() const { return "binary_expression"; } + const char* childname(size_t i) const; + const char* opname() const; +diff --git a/src/liboslcomp/oslgram.y b/src/liboslcomp/oslgram.y +index b65818193..b4f3ad2e1 100644 +--- a/src/liboslcomp/oslgram.y ++++ b/src/liboslcomp/oslgram.y +@@ -858,109 +858,109 @@ variable_ref + binary_expression + : expression OR_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Or, $1, $3); + $$->sourceline (@2.first_line); + } + | expression AND_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::And, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '|' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::BitOr, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '^' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Xor, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '&' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::BitAnd, $1, $3); + $$->sourceline (@2.first_line); + } + | expression EQ_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Equal, $1, $3); + $$->sourceline (@2.first_line); + } + | expression NE_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::NotEqual, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '>' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Greater, $1, $3); + $$->sourceline (@2.first_line); + } + | expression GE_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::GreaterEqual, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '<' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Less, $1, $3); + $$->sourceline (@2.first_line); + } + | expression LE_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::LessEqual, $1, $3); + $$->sourceline (@2.first_line); + } + | expression SHL_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::ShiftLeft, $1, $3); + $$->sourceline (@2.first_line); + } + | expression SHR_OP expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::ShiftRight, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '+' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Add, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '-' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Sub, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '*' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Mul, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '/' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Div, $1, $3); + $$->sourceline (@2.first_line); + } + | expression '%' expression + { +- $$ = new ASTbinary_expression (oslcompiler, ++ $$ = ASTbinary_expression::make(oslcompiler, + ASTNode::Mod, $1, $3); + $$->sourceline (@2.first_line); + } +diff --git a/testsuite/oslc-literalfold/ref/out.txt b/testsuite/oslc-literalfold/ref/out.txt +new file mode 100644 +index 000000000..9397357ff +--- /dev/null ++++ b/testsuite/oslc-literalfold/ref/out.txt +@@ -0,0 +1,28 @@ ++Compiled test.osl -> test.oso ++int add_i = 8 ++int sub_i = 2 ++int mul_i = 15 ++int div_i = 1 ++int mod_i = 2 ++int eq_i = 0 ++int ne_i = 1 ++int gt_i = 1 ++int ge_i = 1 ++int lt_i = 0 ++int le_i = 0 ++int and_i = 1 ++int or_i = 7 ++int xor_i = 6 ++int shl_i = 40 ++int shr_i = 0 ++float add_f = 8.000000 ++float sub_f = 2.000000 ++float mul_f = 15.000000 ++float div_f = 1.666667 ++float eq_f = 0 ++float ne_f = 1 ++float gt_f = 1 ++float ge_f = 1 ++float lt_f = 0 ++float le_f = 0 ++ +diff --git a/testsuite/oslc-literalfold/run.py b/testsuite/oslc-literalfold/run.py +new file mode 100755 +index 000000000..6836d5554 +--- /dev/null ++++ b/testsuite/oslc-literalfold/run.py +@@ -0,0 +1,7 @@ ++#!/usr/bin/env python ++ ++# Copyright Contributors to the Open Shading Language project. ++# SPDX-License-Identifier: BSD-3-Clause ++# https://github.com/AcademySoftwareFoundation/OpenShadingLanguage ++ ++command = testshade("test") +diff --git a/testsuite/oslc-literalfold/test.osl b/testsuite/oslc-literalfold/test.osl +new file mode 100644 +index 000000000..0f1b09e36 +--- /dev/null ++++ b/testsuite/oslc-literalfold/test.osl +@@ -0,0 +1,69 @@ ++// Copyright Contributors to the Open Shading Language project. ++// SPDX-License-Identifier: BSD-3-Clause ++// https://github.com/AcademySoftwareFoundation/OpenShadingLanguage ++ ++// Test oslc-side constant folding of simple binary operators on literal ++// values ++ ++#define three 3 ++#define five 5 ++ ++ ++shader test( ++ int add_i = five + three, ++ int sub_i = five - three, ++ int mul_i = five * three, ++ int div_i = five / three, ++ int mod_i = five % three, ++ int eq_i = five == three, ++ int ne_i = five != three, ++ int gt_i = five > three, ++ int ge_i = five >= three, ++ int lt_i = five < three, ++ int le_i = five <= three, ++ int and_i = five & three, ++ int or_i = five | three, ++ int xor_i = five ^ three, ++ int shl_i = five << three, ++ int shr_i = five >> three, ++ ++ float add_f = float(five) + float(three), ++ float sub_f = float(five) - float(three), ++ float mul_f = float(five) * float(three), ++ float div_f = float(five) / float(three), ++ int eq_f = float(five) == float(three), ++ int ne_f = float(five) != float(three), ++ int gt_f = float(five) > float(three), ++ int ge_f = float(five) >= float(three), ++ int lt_f = float(five) < float(three), ++ int le_f = float(five) <= float(three), ++) ++{ ++ printf("int add_i = %d\n", add_i); ++ printf("int sub_i = %d\n", sub_i); ++ printf("int mul_i = %d\n", mul_i); ++ printf("int div_i = %d\n", div_i); ++ printf("int mod_i = %d\n", mod_i); ++ printf("int eq_i = %d\n", eq_i); ++ printf("int ne_i = %d\n", ne_i); ++ printf("int gt_i = %d\n", gt_i); ++ printf("int ge_i = %d\n", ge_i); ++ printf("int lt_i = %d\n", lt_i); ++ printf("int le_i = %d\n", le_i); ++ printf("int and_i = %d\n", and_i); ++ printf("int or_i = %d\n", or_i); ++ printf("int xor_i = %d\n", xor_i); ++ printf("int shl_i = %d\n", shl_i); ++ printf("int shr_i = %d\n", shr_i); ++ ++ printf("float add_f = %f\n", add_f); ++ printf("float sub_f = %f\n", sub_f); ++ printf("float mul_f = %f\n", mul_f); ++ printf("float div_f = %f\n", div_f); ++ printf("float eq_f = %d\n", eq_f); ++ printf("float ne_f = %d\n", ne_f); ++ printf("float gt_f = %d\n", gt_f); ++ printf("float ge_f = %d\n", ge_f); ++ printf("float lt_f = %d\n", lt_f); ++ printf("float le_f = %d\n", le_f); ++} +From 977f2898b10b9688c4bd65260884e1e477d29806 Mon Sep 17 00:00:00 2001 +From: Larry Gritz <lg@larrygritz.com> +Date: Sun, 20 Aug 2023 21:36:59 -0700 +Subject: [PATCH] fix: Recent journaling changes break with some fmtlib + versions + +Certain fmt library versions don't automatically know how to format +atomics. Explicitly load them to turn into regular ints to avoid new +build errors introduced by the recent journaling changes. + +Signed-off-by: Larry Gritz <lg@larrygritz.com> +--- + .github/workflows/ci.yml | 2 +- + src/liboslcomp/ast.cpp | 2 +- + src/liboslexec/journal.cpp | 6 +++--- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/liboslcomp/ast.cpp b/src/liboslcomp/ast.cpp +index 74873e1c1..a8e5d75e4 100644 +--- a/src/liboslcomp/ast.cpp ++++ b/src/liboslcomp/ast.cpp +@@ -46,7 +46,7 @@ ScopeExit print_node_counts([]() { + for (int i = 0; i < ASTNode::_last_node; ++i) + if (node_counts[i] > 0) + Strutil::print("ASTNode type {:2}: {:5} (peak {:5})\n", i, +- node_counts[i], node_counts_peak[i]); ++ node_counts[i].load(), node_counts_peak[i].load()); + }); + } // namespace + #endif diff --git a/media-libs/osl/files/osl-1.12.14.0-m_dz.patch b/media-libs/osl/files/osl-1.12.14.0-m_dz.patch new file mode 100644 index 000000000000..fb50c53452bf --- /dev/null +++ b/media-libs/osl/files/osl-1.12.14.0-m_dz.patch @@ -0,0 +1,23 @@ +From f8b8242f26a7d4676cf8e5e195f3b6ba0335bcfc Mon Sep 17 00:00:00 2001 +From: Larry Gritz <lg@larrygritz.com> +Date: Mon, 23 Sep 2024 12:35:36 -0700 +Subject: [PATCH] fix: Typo in dual.h made invalid template DualStorage + +Signed-off-by: Larry Gritz <lg@larrygritz.com> +--- + src/include/OSL/dual.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/include/OSL/dual.h b/src/include/OSL/dual.h +index a7b5e4063..60ec05ee8 100644 +--- a/src/include/OSL/dual.h ++++ b/src/include/OSL/dual.h +@@ -204,7 +204,7 @@ class DualStorage<T, 3> + : m_val(other.m_val) + , m_dx(other.m_dx) + , m_dy(other.m_dy) +- , m_dz(other.dz) ++ , m_dz(other.m_dz) + {} + + OSL_HOSTDEVICE constexpr const T& elem (ConstIndex<0>) const { return m_val; } diff --git a/media-libs/osl/files/osl-boost-config.patch b/media-libs/osl/files/osl-boost-config.patch new file mode 100644 index 000000000000..0c0f3bbe71e0 --- /dev/null +++ b/media-libs/osl/files/osl-boost-config.patch @@ -0,0 +1,22 @@ +From 8a29f2263675bf9cb7a567f00fc257728b3ac3d8 Mon Sep 17 00:00:00 2001 +From: Paul Zander <negril.nx+gentoo@gmail.com> +Date: Thu, 9 Jan 2025 19:49:15 +0100 +Subject: [PATCH] boost config + +Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> + +diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake +index 7250633..1f032f8 100644 +--- a/src/cmake/externalpackages.cmake ++++ b/src/cmake/externalpackages.cmake +@@ -57,6 +57,7 @@ else () + checked_find_package (Boost REQUIRED + VERSION_MIN 1.55 + COMPONENTS ${Boost_COMPONENTS} ++ CONFIG + RECOMMEND_MIN 1.66 + RECOMMEND_MIN_REASON "Boost 1.66 is the oldest version our CI tests against" + PRINT Boost_INCLUDE_DIRS Boost_LIBRARIES +-- +2.47.1 + diff --git a/media-libs/osl/files/osl-include-cstdint.patch b/media-libs/osl/files/osl-include-cstdint.patch new file mode 100644 index 000000000000..efaa2f81b9b6 --- /dev/null +++ b/media-libs/osl/files/osl-include-cstdint.patch @@ -0,0 +1,20 @@ +--- a/src/include/OSL/platform.h ++++ b/src/include/OSL/platform.h +@@ -18,6 +18,7 @@ + + #pragma once + ++#include <cstdint> + #include <cstring> + #include <memory> + +--- a/src/include/osl_pvt.h ++++ b/src/include/osl_pvt.h +@@ -4,6 +4,7 @@ + + #pragma once + ++#include <cstdint> + #include <memory> + + #include <OSL/oslconfig.h> diff --git a/media-libs/osl/files/osl-oslfile.patch b/media-libs/osl/files/osl-oslfile.patch new file mode 100644 index 000000000000..76e985c26372 --- /dev/null +++ b/media-libs/osl/files/osl-oslfile.patch @@ -0,0 +1,26 @@ +From 9abc5d56c8ae830355a10d6008b5925faef30af2 Mon Sep 17 00:00:00 2001 +From: Paul Zander <negril.nx+gentoo@gmail.com> +Date: Thu, 9 Jan 2025 19:59:01 +0100 +Subject: [PATCH] oslsrc + +This was snuck in via +https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/pull/1914 + +Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> + +diff --git a/src/shaders/CMakeLists.txt b/src/shaders/CMakeLists.txt +index 1ea7bee..e96207d 100644 +--- a/src/shaders/CMakeLists.txt ++++ b/src/shaders/CMakeLists.txt +@@ -40,7 +40,7 @@ macro (oslc_compile) + list (APPEND oslc_args "-I${CMAKE_SOURCE_DIR}/src/shaders") + add_custom_command (OUTPUT ${osofile} + COMMAND oslc ${oslc_args} "${oslfile}" -o "${osofile}" +- MAIN_DEPENDENCY ${oslsrc} ++ MAIN_DEPENDENCY ${oslfile} + DEPENDS ${_shader_DEPENDS} "${stdosl_header}" oslc + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "oslc ${oslsrc_we}") +-- +2.47.1 + diff --git a/media-libs/osl/metadata.xml b/media-libs/osl/metadata.xml index 4c2f57c8a0ed..a62fb425a42a 100644 --- a/media-libs/osl/metadata.xml +++ b/media-libs/osl/metadata.xml @@ -15,12 +15,11 @@ lights, displacement, and pattern generation. </longdescription> <use> - <flag name="gui">Build the osltoy binary (with Qt5)</flag> - <flag name="libcxx">Build against <pkg>sys-libs/libcxx</pkg> when using clang</flag> + <flag name="gui">Build the osltoy binary</flag> + <flag name="libcxx">Build against <pkg>llvm-runtimes/libcxx</pkg> when using clang</flag> <flag name="nofma">Do not use Fuse-Multiply-Add operations</flag> <flag name="optix">Add support for NVIDIA's OptiX Raytracing Engine</flag> <flag name="partio">Use <pkg>media-libs/partio</pkg></flag> - <flag name="qt6">Build the osltoy binary (with Qt6)</flag> </use> <upstream> <remote-id type="github">AcademySoftwareFoundation/OpenShadingLanguage</remote-id> diff --git a/media-libs/osl/osl-1.12.14.0-r1.ebuild b/media-libs/osl/osl-1.12.14.0-r3.ebuild index e450385f5016..3e3f67e8c205 100644 --- a/media-libs/osl/osl-1.12.14.0-r1.ebuild +++ b/media-libs/osl/osl-1.12.14.0-r3.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,12 +19,12 @@ if [[ ${PV} = *9999* ]] ; then else # If a development release, please don't keyword! SRC_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64" + KEYWORDS="amd64 ~arm ~arm64 ~ppc64" S="${WORKDIR}/OpenShadingLanguage-${PV}" fi LICENSE="BSD" -SLOT="0/$(ver_cut 1-3)" +SLOT="0/$(ver_cut 1-2)" # based on SONAME X86_CPU_FEATURES=( sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 @@ -32,20 +32,20 @@ X86_CPU_FEATURES=( ) CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) -IUSE="debug doc gui libcxx nofma partio qt6 test ${CPU_FEATURES[*]%:*} python" +IUSE="debug doc gui libcxx nofma partio test ${CPU_FEATURES[*]%:*} python" + RESTRICT="!test? ( test )" + REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND=" dev-libs/boost:= dev-libs/pugixml - >=media-libs/openexr-3:0= >=media-libs/openimageio-2.4:= $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= ') - sys-libs/zlib:= python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' @@ -55,25 +55,32 @@ RDEPEND=" ) partio? ( media-libs/partio ) gui? ( - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtopengl:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,widgets,opengl] - ) + dev-qt/qtbase:6[gui,widgets,opengl] ) " -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + dev-util/patchelf + >=media-libs/openexr-3 + sys-libs/zlib + test? ( + media-fonts/droid + ) +" BDEPEND=" sys-devel/bison sys-devel/flex virtual/pkgconfig " +PATCHES=( + "${FILESDIR}/${PN}-boost-config.patch" + "${FILESDIR}/${PN}-oslfile.patch" + "${FILESDIR}/${PN}-include-cstdint.patch" + "${FILESDIR}/${PN}-1.12.14.0-libfmt11.patch" + "${FILESDIR}/${PN}-1.12.14.0-m_dz.patch" +) + pkg_setup() { llvm-r1_pkg_setup @@ -123,25 +130,24 @@ src_configure() { "b8_AVX512_noFMA" "b16_AVX512_noFMA" ) - else - mybatched+=( - "b8_AVX512" - "b16_AVX512" - ) fi + mybatched+=( + "b8_AVX512" + "b16_AVX512" + ) fi if use cpu_flags_x86_avx2 ; then if use nofma; then mybatched+=( "b8_AVX2_noFMA" ) - else - mybatched+=( - "b8_AVX2" - ) fi + mybatched+=( + "b8_AVX2" + ) fi - elif use cpu_flags_x86_avx ; then + fi + if use cpu_flags_x86_avx ; then mybatched+=( "b8_AVX" ) @@ -177,6 +183,7 @@ src_configure() { -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")" -DUSE_LIBCPLUSPLUS="$(usex libcxx)" -DUSE_OPTIX="no" + -DUSE_QT="$(usex gui)" -DOpenImageIO_ROOT="${EPREFIX}/usr" ) @@ -187,18 +194,9 @@ src_configure() { ) fi - if use gui; then - mycmakeargs+=( -DUSE_QT="yes" ) - if ! use qt6; then - mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6="yes" ) - fi - else - mycmakeargs+=( -DUSE_QT="no" ) - fi - if use partio; then mycmakeargs+=( - -Dpartio_ROOT="${EPREFIX}/usr" + -Dpartio_DIR="${EPREFIX}/usr" ) fi @@ -220,7 +218,7 @@ src_test() { ln -s "${CMAKE_USE_DIR}/src/cmake/" "${BUILD_DIR}/src/cmake" || die CMAKE_SKIP_TESTS=( - "broken" + "-broken$" "^render" # outright fail @@ -229,6 +227,7 @@ src_test() { "^color.batched$" "^color.batched.opt$" "^matrix.batched.opt$" + "^osl-imageio" "^spline-reg.regress.batched.opt$" "^transform-reg.regress.batched.opt$" ) @@ -362,7 +361,7 @@ src_test() { ) local -x DEBUG CXXFLAGS LD_LIBRARY_PATH DIR OSL_DIR OSL_SOURCE_DIR PYTHONPATH - DEBUG=1 # doubles the floating point tolerance + DEBUG=1 # doubles the floating point tolerance so we avoid FMA related issues CXXFLAGS="-I${T}/usr/include" LD_LIBRARY_PATH="${T}/usr/$(get_libdir)" OSL_DIR="${T}/usr/$(get_libdir)/cmake/OSL" @@ -374,6 +373,10 @@ src_test() { cmake_src_test + einfo "" + einfo "testing render tests in isolation" + einfo "" + CMAKE_SKIP_TESTS=( "^render-background$" "^render-bumptest$" @@ -397,3 +400,21 @@ src_test() { cmake_src_test } + +src_install() { + cmake_src_install + + if use test; then + rm \ + "${ED}/usr/bin/test"{render,shade{,_dso}} \ + "${ED}/usr/$(get_libdir)/libtestshade.so"* \ + || die + fi + + if use amd64; then + find "${ED}/usr/$(get_libdir)" -type f -name 'lib_*_oslexec.so' -print0 \ + | while IFS= read -r -d $'\0' batched_lib; do + patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die + done + fi +} diff --git a/media-libs/osl/osl-1.12.14.0.ebuild b/media-libs/osl/osl-1.12.14.0.ebuild deleted file mode 100644 index 459fa3084277..000000000000 --- a/media-libs/osl/osl-1.12.14.0.ebuild +++ /dev/null @@ -1,154 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) - -# Check this on updates -LLVM_MAX_SLOT=15 - -inherit cmake flag-o-matic llvm toolchain-funcs python-single-r1 - -DESCRIPTION="Advanced shading language for production GI renderers" -HOMEPAGE="https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage" -# If a development release, please don't keyword! -SRC_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v${PV}.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/OpenShadingLanguage-${PV}" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~ppc64" - -X86_CPU_FEATURES=( - sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 - avx:avx avx2:avx2 avx512f:avx512f f16c:f16c -) -CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} ) - -IUSE="debug doc gui partio qt6 test ${CPU_FEATURES[@]%:*} python" -RESTRICT="!test? ( test )" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND=" - dev-libs/boost:= - dev-libs/pugixml - >=media-libs/openexr-3:0= - >=media-libs/openimageio-2.3.12.0:= - <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):= - sys-libs/zlib:= - python? ( - ${PYTHON_DEPS} - $(python_gen_cond_dep ' - dev-python/pybind11[${PYTHON_USEDEP}] - ') - ) - partio? ( media-libs/partio ) - gui? ( - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,widgets] - ) - ) -" - -DEPEND="${RDEPEND}" -BDEPEND=" - sys-devel/bison - sys-devel/flex - virtual/pkgconfig -" - -llvm_check_deps() { - has_version -r "sys-devel/clang:${LLVM_SLOT}" -} - -pkg_setup() { - llvm_pkg_setup - - use python && python-single-r1_pkg_setup -} - -src_configure() { - # -Werror=lto-type-mismatch - # https://bugs.gentoo.org/875836 - # https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/issues/1810 - filter-lto - - local cpufeature - local mysimd=() - for cpufeature in "${CPU_FEATURES[@]}"; do - use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}") - done - - local mybatched=() - use cpu_flags_x86_avx && mybatched+=( - "b8_AVX" - ) - use cpu_flags_x86_avx2 && mybatched+=( - "b8_AVX2" - "b8_AVX2_noFMA" - ) - use cpu_flags_x86_avx512f && mybatched+=( - "b8_AVX512" - "b8_AVX512_noFMA" - "b16_AVX512" - "b16_AVX512_noFMA" - ) - - # If no CPU SIMDs were used, completely disable them - [[ -z ${mysimd} ]] && mysimd=("0") - [[ -z ${mybatched} ]] && mybatched=("0") - - # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully - # Even if there are no SIMD features selected, it seems like the code will turn on NEON support if it is available. - use arm64 && append-flags -flax-vector-conversions - - local gcc="$(tc-getCC)" - local mycmakeargs=( - # std::tuple_size_v is c++17 - -DCMAKE_CXX_STANDARD=17 - -DDOWNSTREAM_CXX_STANDARD=17 - -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" - -DINSTALL_DOCS=$(usex doc) - -DUSE_CCACHE=OFF - -DLLVM_STATIC=OFF - -DOSL_BUILD_TESTS=$(usex test) - -DSTOP_ON_WARNING=OFF - -DUSE_PARTIO=$(usex partio) - -DUSE_PYTHON=$(usex python) - -DPYTHON_VERSION="${EPYTHON/python}" - -DUSE_SIMD="$(IFS=","; echo "${mysimd[*]}")" - -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")" - ) - - if use debug; then - mycmakeargs+=( - -DVEC_REPORT="yes" - ) - fi - - if use gui; then - mycmakeargs+=( -DUSE_QT=yes ) - if ! use qt6; then - mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6=ON ) - fi - else - mycmakeargs+=( -DUSE_QT=no ) - fi - - cmake_src_configure -} - -src_test() { - # TODO: investigate failures - local myctestargs=( - -E "(osl-imageio|osl-imageio.opt|render-background|render-bumptest|render-mx-furnace-burley-diffuse|render-mx-furnace-sheen|render-mx-burley-diffuse|render-mx-conductor|render-mx-generalized-schlick|render-mx-generalized-schlick-glass|render-microfacet|render-oren-nayar|render-uv|render-veachmis|render-ward|render-raytypes.opt|color|color.opt|example-deformer)" - ) - - cmake_src_test -} diff --git a/media-libs/osl/osl-1.13.10.0.ebuild b/media-libs/osl/osl-1.13.10.0-r1.ebuild index 2d149fe4a5f5..ccf08a400628 100644 --- a/media-libs/osl/osl-1.13.10.0.ebuild +++ b/media-libs/osl/osl-1.13.10.0-r1.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 @@ -32,7 +32,7 @@ X86_CPU_FEATURES=( ) CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) -IUSE="debug doc gui libcxx nofma optix partio qt6 test ${CPU_FEATURES[*]%:*} python" +IUSE="debug doc gui libcxx nofma optix partio test ${CPU_FEATURES[*]%:*} python" RESTRICT="!test? ( test )" @@ -42,13 +42,11 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND=" dev-libs/boost:= dev-libs/pugixml - >=media-libs/openexr-3:0= >=media-libs/openimageio-2.4:= $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= ') - sys-libs/zlib:= optix? ( dev-libs/optix[-headers-only] ) python? ( ${PYTHON_DEPS} @@ -59,20 +57,14 @@ RDEPEND=" ) partio? ( media-libs/partio ) gui? ( - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtopengl:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,widgets,opengl] - ) + dev-qt/qtbase:6[gui,widgets,opengl] ) " DEPEND="${RDEPEND} dev-util/patchelf + >=media-libs/openexr-3 + sys-libs/zlib test? ( media-fonts/droid ) @@ -83,6 +75,13 @@ BDEPEND=" virtual/pkgconfig " +PATCHES=( + "${FILESDIR}/${PN}-boost-config.patch" + "${FILESDIR}/${PN}-oslfile.patch" + "${FILESDIR}/${PN}-include-cstdint.patch" + "${FILESDIR}/${PN}-1.12.14.0-m_dz.patch" +) + pkg_setup() { llvm-r1_pkg_setup @@ -189,6 +188,7 @@ src_configure() { -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")" -DUSE_LIBCPLUSPLUS="$(usex libcxx)" -DOSL_USE_OPTIX="$(usex optix)" + -DUSE_QT="$(usex gui)" -DOpenImageIO_ROOT="${EPREFIX}/usr" ) @@ -199,15 +199,6 @@ src_configure() { ) fi - if use gui; then - mycmakeargs+=( -DUSE_QT="yes" ) - if ! use qt6; then - mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6="yes" ) - fi - else - mycmakeargs+=( -DUSE_QT="no" ) - fi - if use optix; then mycmakeargs+=( -DOptiX_FIND_QUIETLY="no" @@ -280,6 +271,15 @@ src_test() { "^osl-imageio.opt.rs_bitcode$" ) + if use optix; then + CMAKE_SKIP_TESTS+=( + "^color2.optix$" + "^color4.optix(|.opt|.fused)$" + "^vector2.optix$" + "^vector4.optix$" + ) + fi + myctestargs=( # src/build-scripts/ci-test.bash '--force-new-ctest-process' @@ -328,10 +328,20 @@ src_install() { cmake_src_install if [[ -d "${ED}/usr/build-scripts" ]]; then - rm -rf "${ED}/usr/build-scripts" || die + rm -vr "${ED}/usr/build-scripts" || die fi - for batched_lib in "${ED}/usr/$(get_libdir)/lib_"*"_oslexec.so"; do - patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die - done + if use test; then + rm \ + "${ED}/usr/bin/test"{render,shade{,_dso}} \ + "${ED}/usr/$(get_libdir)/libtestshade.so"* \ + || die + fi + + if use amd64; then + find "${ED}/usr/$(get_libdir)" -type f -name 'lib_*_oslexec.so' -print0 \ + | while IFS= read -r -d $'\0' batched_lib; do + patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die + done + fi } diff --git a/media-libs/osl/osl-1.13.12.0-r1.ebuild b/media-libs/osl/osl-1.13.12.0-r1.ebuild new file mode 100644 index 000000000000..5f185caace4b --- /dev/null +++ b/media-libs/osl/osl-1.13.12.0-r1.ebuild @@ -0,0 +1,346 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) + +# Check this on updates +LLVM_COMPAT=( {15..19} ) + +inherit cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1 + +DESCRIPTION="Advanced shading language for production GI renderers" +HOMEPAGE="https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage" + +if [[ ${PV} = *9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage.git" +else + # If a development release, please don't keyword! + SRC_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc64" + S="${WORKDIR}/OpenShadingLanguage-${PV}" +fi + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" # based on SONAME + +X86_CPU_FEATURES=( + sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c +) +CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) + +IUSE="debug doc gui libcxx nofma optix partio test ${CPU_FEATURES[*]%:*} python" + +RESTRICT="!test? ( test )" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# TODO optix +RDEPEND=" + dev-libs/boost:= + dev-libs/pugixml + >=media-libs/openimageio-2.4:= + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= + ') + optix? ( dev-libs/optix[-headers-only] ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/pybind11[${PYTHON_USEDEP}] + media-libs/openimageio[python,${PYTHON_SINGLE_USEDEP}] + ') + ) + partio? ( media-libs/partio ) + gui? ( + dev-qt/qtbase:6[gui,widgets,opengl] + ) +" + +DEPEND="${RDEPEND} + dev-util/patchelf + >=media-libs/openexr-3 + sys-libs/zlib + test? ( + media-fonts/droid + ) +" +BDEPEND=" + sys-devel/bison + sys-devel/flex + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-boost-config.patch" + "${FILESDIR}/${PN}-oslfile.patch" + "${FILESDIR}/${PN}-include-cstdint.patch" +) + +pkg_setup() { + llvm-r1_pkg_setup + + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if use optix; then + cuda_src_prepare + cuda_add_sandbox -w + fi + + sed -e "/^install.*llvm_macros.cmake.*cmake/d" -i CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + # -Werror=lto-type-mismatch + # https://bugs.gentoo.org/875836 + # https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/issues/1810 + filter-lto + + # pick the highest we support + local mysimd=() + if use cpu_flags_x86_avx512f; then + mysimd+=( avx512f ) + elif use cpu_flags_x86_avx2 ; then + mysimd+=( avx2 ) + if use cpu_flags_x86_f16c ; then + mysimd+=( f16c ) + fi + elif use cpu_flags_x86_avx ; then + mysimd+=( avx ) + elif use cpu_flags_x86_sse4_2 ; then + mysimd+=( sse4.2 ) + elif use cpu_flags_x86_sse4_1 ; then + mysimd+=( sse4.1 ) + elif use cpu_flags_x86_ssse3 ; then + mysimd+=( ssse3 ) + elif use cpu_flags_x86_sse3 ; then + mysimd+=( sse3 ) + elif use cpu_flags_x86_sse2 ; then + mysimd+=( sse2 ) + fi + + local mybatched=() + if use cpu_flags_x86_avx512f || use cpu_flags_x86_avx2 ; then + if use cpu_flags_x86_avx512f ; then + if use nofma; then + mybatched+=( + "b8_AVX512_noFMA" + "b16_AVX512_noFMA" + ) + fi + mybatched+=( + "b8_AVX512" + "b16_AVX512" + ) + fi + if use cpu_flags_x86_avx2 ; then + if use nofma; then + mybatched+=( + "b8_AVX2_noFMA" + ) + fi + mybatched+=( + "b8_AVX2" + ) + fi + fi + if use cpu_flags_x86_avx ; then + mybatched+=( + "b8_AVX" + ) + fi + + # If no CPU SIMDs were used, completely disable them + [[ -z "${mysimd[*]}" ]] && mysimd=("0") + [[ -z "${mybatched[*]}" ]] && mybatched=("0") + + # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully + # Even if there are no SIMD features selected, it seems like the code will turn on NEON support if it is available. + use arm64 && append-flags -flax-vector-conversions + + local gcc + gcc="$(tc-getCC)" + + local mycmakeargs=( + -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # BUG FindCUDA + + # std::tuple_size_v is c++17 + -DCMAKE_CXX_STANDARD="17" + + -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" + -DINSTALL_DOCS="$(usex doc)" + -DUSE_CCACHE="no" + -DLLVM_STATIC="no" + -DOSL_BUILD_TESTS="$(usex test)" + -DSTOP_ON_WARNING="no" + -DUSE_PARTIO="$(usex partio)" + -DUSE_PYTHON="$(usex python)" + -DUSE_SIMD="$(IFS=","; echo "${mysimd[*]}")" + -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")" + -DUSE_LIBCPLUSPLUS="$(usex libcxx)" + -DOSL_USE_OPTIX="$(usex optix)" + -DUSE_QT="$(usex gui)" + + -DOpenImageIO_ROOT="${EPREFIX}/usr" + ) + + if use debug; then + mycmakeargs+=( + -DVEC_REPORT="yes" + ) + fi + + if use optix; then + mycmakeargs+=( + -DOptiX_FIND_QUIETLY="no" + -DCUDA_FIND_QUIETLY="no" + + -DOPTIXHOME="${EPREFIX}/opt/optix" + -DCUDA_TOOLKIT_ROOT_DIR="${EPREFIX}/opt/cuda" + + -DCUDA_NVCC_FLAGS="--compiler-bindir;$(cuda_gccdir)" + -DOSL_EXTRA_NVCC_ARGS="--compiler-bindir;$(cuda_gccdir)" + -DCUDA_VERBOSE_BUILD="yes" + ) + fi + + if use partio; then + mycmakeargs+=( + -Dpartio_DIR="${EPREFIX}/usr" + ) + fi + + if use python; then + mycmakeargs+=( + "-DPYTHON_VERSION=${EPYTHON#python}" + "-DPYTHON_SITE_DIR=$(python_get_sitedir)" + ) + fi + + cmake_src_configure +} + +src_test() { + # A bunch of tests only work when installed. + # So install them into the temp directory now. + DESTDIR="${T}" cmake_build install + + ln -s "${CMAKE_USE_DIR}/src/cmake/" "${BUILD_DIR}/src/cmake" || die + + if use optix; then + cp \ + "${BUILD_DIR}/src/liboslexec/shadeops_cuda.ptx" \ + "${BUILD_DIR}/src/testrender/"{optix_raytracer,quad,rend_lib_testrender,sphere,wrapper}".ptx" \ + "${BUILD_DIR}/src/testshade/"{optix_grid_renderer,rend_lib_testshade}".ptx" \ + "${BUILD_DIR}/bin/" || die + + # NOTE this should go to cuda eclass + addwrite /dev/nvidiactl + addwrite /dev/nvidia0 + addwrite /dev/nvidia-uvm + addwrite /dev/nvidia-caps + addwrite "/dev/char/" + fi + + CMAKE_SKIP_TESTS=( + "-broken$" + "^render" + + # broken with in-tree <=dev-libs/optix-7.5.0 and out of date + "^example-cuda$" + + # outright fail + "^testoptix.optix.opt$" + "^testoptix-noise.optix.opt$" + "^testoptix-reparam.optix.opt$" + "^transform-reg.regress.batched.opt$" + "^spline-reg.regress.batched.opt$" + + # doesn't handle parameters + "^osl-imageio$" + "^osl-imageio.opt$" + "^osl-imageio.opt.rs_bitcode$" + ) + + if use optix; then + CMAKE_SKIP_TESTS+=( + "^color2.optix$" + "^color4.optix(|.opt|.fused)$" + "^vector2.optix$" + "^vector4.optix$" + ) + fi + + myctestargs=( + # src/build-scripts/ci-test.bash + '--force-new-ctest-process' + ) + + local -x DEBUG CXXFLAGS LD_LIBRARY_PATH DIR OSL_DIR OSL_SOURCE_DIR PYTHONPATH + DEBUG=1 # doubles the floating point tolerance so we avoid FMA related issues + CXXFLAGS="-I${T}/usr/include" + LD_LIBRARY_PATH="${T}/usr/$(get_libdir)" + OSL_DIR="${T}/usr/$(get_libdir)/cmake/OSL" + OSL_SOURCE_DIR="${S}" + + if use python; then + PYTHONPATH="${BUILD_DIR}/lib/python/site-packages" + fi + + cmake_src_test + + einfo "" + einfo "testing render tests in isolation" + einfo "" + + CMAKE_SKIP_TESTS=( + "^render-background$" + "^render-mx-furnace-sheen$" + "^render-mx-burley-diffuse$" + "^render-mx-conductor$" + "^render-microfacet$" + "^render-veachmis$" + "^render-ward$" + "^render-raytypes.opt$" + "^render-raytypes.opt.rs_bitcode$" + ) + + myctestargs=( + # src/build-scripts/ci-test.bash + '--force-new-ctest-process' + --repeat until-pass:10 + -R "^render" + ) + + cmake_src_test +} + +src_install() { + cmake_src_install + + if [[ -d "${ED}/usr/build-scripts" ]]; then + rm -vr "${ED}/usr/build-scripts" || die + fi + + if use test; then + rm \ + "${ED}/usr/bin/test"{render,shade{,_dso}} \ + "${ED}/usr/$(get_libdir)/libtestshade.so"* \ + || die + fi + + if use amd64; then + find "${ED}/usr/$(get_libdir)" -type f -name 'lib_*_oslexec.so' -print0 \ + | while IFS= read -r -d $'\0' batched_lib; do + patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die + done + fi +} diff --git a/media-libs/osl/osl-9999.ebuild b/media-libs/osl/osl-9999.ebuild index 3df3ad89ba3b..5f185caace4b 100644 --- a/media-libs/osl/osl-9999.ebuild +++ b/media-libs/osl/osl-9999.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) # Check this on updates -LLVM_COMPAT=( {15..18} ) +LLVM_COMPAT=( {15..19} ) inherit cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1 @@ -32,7 +32,7 @@ X86_CPU_FEATURES=( ) CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" ) -IUSE="debug doc gui libcxx nofma optix partio qt6 test ${CPU_FEATURES[*]%:*} python" +IUSE="debug doc gui libcxx nofma optix partio test ${CPU_FEATURES[*]%:*} python" RESTRICT="!test? ( test )" @@ -42,13 +42,11 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND=" dev-libs/boost:= dev-libs/pugixml - >=media-libs/openexr-3:0= >=media-libs/openimageio-2.4:= $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}= ') - sys-libs/zlib:= optix? ( dev-libs/optix[-headers-only] ) python? ( ${PYTHON_DEPS} @@ -59,20 +57,14 @@ RDEPEND=" ) partio? ( media-libs/partio ) gui? ( - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtopengl:5 - ) - qt6? ( - dev-qt/qtbase:6[gui,widgets,opengl] - ) + dev-qt/qtbase:6[gui,widgets,opengl] ) " DEPEND="${RDEPEND} dev-util/patchelf + >=media-libs/openexr-3 + sys-libs/zlib test? ( media-fonts/droid ) @@ -83,6 +75,12 @@ BDEPEND=" virtual/pkgconfig " +PATCHES=( + "${FILESDIR}/${PN}-boost-config.patch" + "${FILESDIR}/${PN}-oslfile.patch" + "${FILESDIR}/${PN}-include-cstdint.patch" +) + pkg_setup() { llvm-r1_pkg_setup @@ -189,6 +187,7 @@ src_configure() { -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")" -DUSE_LIBCPLUSPLUS="$(usex libcxx)" -DOSL_USE_OPTIX="$(usex optix)" + -DUSE_QT="$(usex gui)" -DOpenImageIO_ROOT="${EPREFIX}/usr" ) @@ -199,15 +198,6 @@ src_configure() { ) fi - if use gui; then - mycmakeargs+=( -DUSE_QT="yes" ) - if ! use qt6; then - mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6="yes" ) - fi - else - mycmakeargs+=( -DUSE_QT="no" ) - fi - if use optix; then mycmakeargs+=( -DOptiX_FIND_QUIETLY="no" @@ -280,6 +270,15 @@ src_test() { "^osl-imageio.opt.rs_bitcode$" ) + if use optix; then + CMAKE_SKIP_TESTS+=( + "^color2.optix$" + "^color4.optix(|.opt|.fused)$" + "^vector2.optix$" + "^vector4.optix$" + ) + fi + myctestargs=( # src/build-scripts/ci-test.bash '--force-new-ctest-process' @@ -328,10 +327,20 @@ src_install() { cmake_src_install if [[ -d "${ED}/usr/build-scripts" ]]; then - rm -rf "${ED}/usr/build-scripts" || die + rm -vr "${ED}/usr/build-scripts" || die fi - for batched_lib in "${ED}/usr/$(get_libdir)/lib_"*"_oslexec.so"; do - patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die - done + if use test; then + rm \ + "${ED}/usr/bin/test"{render,shade{,_dso}} \ + "${ED}/usr/$(get_libdir)/libtestshade.so"* \ + || die + fi + + if use amd64; then + find "${ED}/usr/$(get_libdir)" -type f -name 'lib_*_oslexec.so' -print0 \ + | while IFS= read -r -d $'\0' batched_lib; do + patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die + done + fi } diff --git a/media-libs/partio/Manifest b/media-libs/partio/Manifest index 859d45911c02..2e7d282c0cde 100644 --- a/media-libs/partio/Manifest +++ b/media-libs/partio/Manifest @@ -1,2 +1,2 @@ -DIST partio-1.14.6.tar.gz 336527 BLAKE2B 60c9c6ad9d5a7b58967e7633180d4f8d399bd129cc7b76fc4329b3d191ce0d381df7f977d5ec11ccedbdbcd8afa0fde2f946960f08a242338c2f674b4c94343e SHA512 5479d00b3124e8e06abbc65b1cdc01cdac37b9207c0615029e488baa0835e4ad545be2fb07dda5b4541dd846115059aaca5950ff904bddec6bb1fd72180ebcc0 DIST partio-1.17.1.tar.gz 338461 BLAKE2B 6c08d5b74db34ce114206ab92332e42e827d537d83e65597ba777344e1b9dc69f9b57153f716e87df6955b9898cedcd7e6da353db111463d7c8bd47f648cca6a SHA512 5dbbd988c76a26ac6f3024e29ed12f37f7995daf211e065b9ffaf185c6203be7d9de48bd62b5955d2f5444af72fb3306ea5a0f3501cb0a49a26f157bb09ec6bc +DIST partio-1.17.3.tar.gz 338044 BLAKE2B 5842c5e1ee728d5e3ea77258293b1cd0a72147ac1229e2156741cfe9a55971e2dd30d2b8e239b0a3cde8e055f564d98cd7c29cf649d33eb9f1891158ba69c1c7 SHA512 b110d29b9d4226c773adf8b98f0bcb78a877d5bf944b09500d81d2810dc2e4cc1386cbe29aa724fc256c00f6df34e171a091b2ddc60aedc9fa2576eb00a3fefa diff --git a/media-libs/partio/partio-1.14.6.ebuild b/media-libs/partio/partio-1.17.3.ebuild index 1f7714410e59..1518f8063d50 100644 --- a/media-libs/partio/partio-1.14.6.ebuild +++ b/media-libs/partio/partio-1.17.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{9..10} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit cmake python-single-r1 if [[ ${PV} == *9999 ]]; then @@ -15,11 +15,13 @@ else fi DESCRIPTION="Library for particle IO and manipulation" -HOMEPAGE="http://partio.us/" +HOMEPAGE="https://partio.us/" LICENSE="BSD" SLOT="0" -IUSE="doc" +IUSE="doc test" +RESTRICT="!test? ( test )" + REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND="${PYTHON_DEPS} @@ -29,7 +31,11 @@ RDEPEND="${PYTHON_DEPS} virtual/opengl " -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + test? ( + dev-cpp/gtest + ) +" BDEPEND=" dev-lang/swig @@ -45,7 +51,26 @@ BDEPEND=" src_configure() { local mycmakeargs=( - $(cmake_use_find_package doc Doxygen) + "$(cmake_use_find_package doc Doxygen)" + + -DPARTIO_GTEST_ENABLED="$(usex test)" # "Enable GTest for tests" + -DPARTIO_ORIGIN_RPATH="no" # "Enable ORIGIN rpath in the installed libraries" + + -DPARTIO_USE_GLVND="yes" # "Use GLVND for OpenGL" + -DPARTIO_BUILD_SHARED_LIBS="yes" # "Enabled shared libraries" + + -DWDAS_CXX_STANDARD=17 ) + cmake_src_configure } + +src_test() { + CMAKE_SKIP_TESTS=( + # fail on import partjson, partio + testpartjson + testpartio + ) + + cmake_src_test +} diff --git a/media-libs/pulseaudio-qt/Manifest b/media-libs/pulseaudio-qt/Manifest index bc9e3ac3eacb..94f388ac2f4b 100644 --- a/media-libs/pulseaudio-qt/Manifest +++ b/media-libs/pulseaudio-qt/Manifest @@ -1,2 +1,2 @@ -DIST pulseaudio-qt-1.6.0.tar.xz 37232 BLAKE2B 6302ea3a2cedae8abe8b936b16766753c8995d3bc39c4217d1aeff3682d756191c2a82d3f04b4b40602de22e6cf8cecca2e28e4a9a528c1ccc472a6f5a9834b1 SHA512 4bf612efc5caf51cd177d26ebaba0bd11f9513ac65d0bece86c8171745ec824dc924cbb067d440b711be6eaf5ebcf84e9996286944de352df5fc7cf91142ac77 DIST pulseaudio-qt-1.6.1.tar.xz 38072 BLAKE2B 2d25c05ecc3f401ce4881ae1902f4b1798586bb61c758a7fcb150225c1223bc38c4a053db4502e7ff813d73cc4d34b4887a7f24c7d352893c0da02166768d66c SHA512 7bb79bdc77d2fd8d8be569f692fa0f63b3f000fe5db605c38220a572878120ebe505edc272c43f4a3b22c70f44ee2d8cd0a0be3015c3d7660764258eca62b459 +DIST pulseaudio-qt-1.7.0.tar.xz 40684 BLAKE2B a96571914801e47c33404019edce949c4f7ba75e592051fdf4675b08b6c45aaef0b039212152eaf5f8d24386a9fa83e349ec263fbce6272c2887cde982d65db8 SHA512 e59f30eff77bfcb566b4215e9c3aea2a39acde4fdc460eb768da3280ffece8b63547345e0fb3e65b5a50321889f4c210525b141148b027b71cb5a48942402b3b diff --git a/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.1.ebuild b/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.1.ebuild index 50417aaad3b8..32aead60bf06 100644 --- a/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.1.ebuild +++ b/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.1.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 @@ -15,7 +15,7 @@ HOMEPAGE="https://invent.kde.org/libraries/pulseaudio-qt" if [[ ${KDE_BUILD_TYPE} = release ]]; then SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" - KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" fi LICENSE="LGPL-2.1" diff --git a/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.0.ebuild b/media-libs/pulseaudio-qt/pulseaudio-qt-1.7.0.ebuild index 714faa3d4c02..32aead60bf06 100644 --- a/media-libs/pulseaudio-qt/pulseaudio-qt-1.6.0.ebuild +++ b/media-libs/pulseaudio-qt/pulseaudio-qt-1.7.0.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 @@ -15,7 +15,7 @@ HOMEPAGE="https://invent.kde.org/libraries/pulseaudio-qt" if [[ ${KDE_BUILD_TYPE} = release ]]; then SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" - KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" fi LICENSE="LGPL-2.1" diff --git a/media-libs/quarter/Manifest b/media-libs/quarter/Manifest index 63414d7498a5..b2357cfa36b2 100644 --- a/media-libs/quarter/Manifest +++ b/media-libs/quarter/Manifest @@ -1,2 +1 @@ -DIST quarter-1.2.1-src.tar.gz 737236 BLAKE2B 91b332eb36ac1911449b923aabf6913a1901306c258f8e430f0c589774d1ad5991916863f14d6c3d35898a9756f7c68bd30287defe5deb04036f2dce4b8f135f SHA512 454e99ae8f65c9d8e425aaabc02f218357db4e4447a481680f75301d4102864c77da58a48144f2a9211d4de0bd9962b394ad48a832e89674291b94778e5ff96d DIST quarter-1.2.2-src.tar.gz 6709135 BLAKE2B 7294236c446ba4389cc89987cf0c461a1414405142a7d943faf8fd215f3ad103994b2cee600b9b8fad56102a7046b3d59de5b6accb748924f8bac604d5ca180c SHA512 a8e0edf1ce6155aef52392a94dbc0f9692c98e295124ac2e7465bde5398f0716822e606b924194251091f7ae3dd39dd134d5a3fdd8a745f22a94c159553271a1 diff --git a/media-libs/quarter/files/quarter-1.1.0-find-qhelpgenerator-binary.patch b/media-libs/quarter/files/quarter-1.1.0-find-qhelpgenerator-binary.patch deleted file mode 100644 index 6fe804551e72..000000000000 --- a/media-libs/quarter/files/quarter-1.1.0-find-qhelpgenerator-binary.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 04994984239e18ea68af04734c4c8a1324bc0ac6 Mon Sep 17 00:00:00 2001 -From: Bernd Waibel <waebbl-gentoo@posteo.net> -Date: Sat, 2 Apr 2022 15:00:42 +0200 -Subject: [PATCH] find qhelpgenerator binary - -Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net> ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -204,7 +204,9 @@ if(QUARTER_BUILD_DOCUMENTATION) - endif() - endif() - if(QUARTER_BUILD_DOC_QTHELP) -- find_program(QHG_LOCATION NAMES qhelpgenerator qhelpgenerator-qt5 DOC "Qt qhelpgenerator") -+ get_target_property(qt_qmake_location Qt5::qmake LOCATION) -+ get_filename_component(qt_bin_dir "${qt_qmake_location}" PATH) -+ find_program(QHG_LOCATION NAMES qhelpgenerator qhelpgenerator-qt5 DOC "Qt qhelpgenerator" HINTS "${qt_bin_dir}") - if(NOT QHG_LOCATION) - message(FATAL_ERROR "Missing program Qt qhelpgenerator") - else() --- -2.35.1 - diff --git a/media-libs/quarter/metadata.xml b/media-libs/quarter/metadata.xml index d0938058334e..862fa7e3814a 100644 --- a/media-libs/quarter/metadata.xml +++ b/media-libs/quarter/metadata.xml @@ -22,7 +22,6 @@ <use> <flag name="designer">Install plugin for <pkg>dev-qt/designer</pkg></flag> <flag name="qch">Install API documentation in QCH format</flag> - <flag name="qthelp">Build API documentation in QtHelp format</flag> </use> <upstream> <remote-id type="github">coin3d/quarter</remote-id> diff --git a/media-libs/quarter/quarter-1.2.1.ebuild b/media-libs/quarter/quarter-1.2.1.ebuild deleted file mode 100644 index 53331d1b4af6..000000000000 --- a/media-libs/quarter/quarter-1.2.1.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic - -MY_P=${P/quarter/Quarter} - -HOMEPAGE="https://github.com/coin3d/coin/wiki" -DESCRIPTION="GUI binding for using Coin/Open Inventor with Qt" -SRC_URI="https://github.com/coin3d/quarter/releases/download/v${PV}/${P}-src.tar.gz" -S="${WORKDIR}/quarter" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="debug designer doc man qt6 qthelp" - -REQUIRED_USE=" - man? ( doc ) - qthelp? ( doc ) -" - -RDEPEND=" - media-libs/coin - virtual/opengl - !qt6? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtopengl:5 - designer? ( dev-qt/designer:5 ) - ) - qt6? ( - dev-qt/qtbase:6[gui,opengl,widgets] - dev-qt/qttools:6[widgets] - designer? ( dev-qt/qttools:6[designer] ) - ) -" - -DEPEND="${RDEPEND}" - -BDEPEND=" - virtual/pkgconfig - doc? ( - app-text/doxygen[dot] - !qt6? ( - qthelp? ( dev-qt/qthelp:5 ) - ) - qt6? ( - qthelp? ( dev-qt/qttools:6[assistant] ) - ) - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.2.1-cmake.patch - "${FILESDIR}"/${PN}-1.1.0-find-qhelpgenerator-binary.patch -) - -DOCS=(AUTHORS NEWS README.md) - -src_prepare() { - cmake_src_prepare - sed -e 's|/lib$|/lib@LIB_SUFFIX@|' \ - -i Quarter.pc.cmake.in || die -} - -src_configure() { - use debug && append-cppflags -DQUARTER_DEBUG=1 - local mycmakeargs=( - -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" - -DQUARTER_BUILD_SHARED_LIBS=ON - -DQUARTER_BUILD_PLUGIN=$(usex designer) - -DQUARTER_BUILD_EXAMPLES=OFF - -DQUARTER_BUILD_DOCUMENTATION=$(usex doc) - -DQUARTER_BUILD_INTERNAL_DOCUMENTATION=OFF - -DQUARTER_BUILD_DOC_MAN=$(usex man) - -DQUARTER_BUILD_DOC_QTHELP=$(usex qthelp) - -DQUARTER_BUILD_DOC_CHM=OFF - -DQUARTER_USE_QT6=$(usex qt6) - ) - cmake_src_configure -} diff --git a/media-libs/quarter/quarter-1.2.2.ebuild b/media-libs/quarter/quarter-1.2.2.ebuild index 4f1146c8f8cc..fe3b085f07dc 100644 --- a/media-libs/quarter/quarter-1.2.2.ebuild +++ b/media-libs/quarter/quarter-1.2.2.ebuild @@ -12,7 +12,7 @@ S="${WORKDIR}/quarter" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="debug designer doc qch" REQUIRED_USE="qch? ( doc )" diff --git a/media-libs/raptor/raptor-2.0.16.ebuild b/media-libs/raptor/raptor-2.0.16.ebuild index 3d3903f710b5..4ec9436f793a 100644 --- a/media-libs/raptor/raptor-2.0.16.ebuild +++ b/media-libs/raptor/raptor-2.0.16.ebuild @@ -67,6 +67,8 @@ multilib_src_configure() { } multilib_src_test() { + # XXX: should be able to drop -j1 on next release (>2.0.16) + # https://github.com/dajobe/raptor/commit/f3aaf48b44a9ba7d01461245ca47649a82b3eb5f emake -j1 test } diff --git a/media-libs/roc-toolkit/roc-toolkit-0.3.0.ebuild b/media-libs/roc-toolkit/roc-toolkit-0.3.0.ebuild index 7b8860050538..142e9016166b 100644 --- a/media-libs/roc-toolkit/roc-toolkit-0.3.0.ebuild +++ b/media-libs/roc-toolkit/roc-toolkit-0.3.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 2023 Gentoo Authors +# Copyright 2023-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -25,7 +25,7 @@ DEPEND=" sox? ( media-sound/sox ) ssl? ( dev-libs/openssl:= ) unwind? ( - llvm-libunwind? ( sys-libs/llvm-libunwind:= ) + llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) ) " diff --git a/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild b/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild index b5355e5f2b18..e2635d28b20c 100644 --- a/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild +++ b/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild @@ -26,7 +26,7 @@ DEPEND=" sndfile? ( >=media-libs/libsndfile-1.0.28 ) ssl? ( >=dev-libs/openssl-3.0.8:= ) unwind? ( - llvm-libunwind? ( sys-libs/llvm-libunwind:= ) + llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( >=sys-libs/libunwind-1.2.1:= ) ) " diff --git a/media-libs/rtaudio/rtaudio-6.0.1.ebuild b/media-libs/rtaudio/rtaudio-6.0.1.ebuild index 0cdeea0544f6..139524709095 100644 --- a/media-libs/rtaudio/rtaudio-6.0.1.ebuild +++ b/media-libs/rtaudio/rtaudio-6.0.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/thestk/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}. LICENSE="MIT" SLOT="0/7" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86" IUSE="+alsa doc jack pulseaudio static-libs" REQUIRED_USE="|| ( alsa jack pulseaudio )" diff --git a/media-libs/rubberband/Manifest b/media-libs/rubberband/Manifest index fe81013ad418..19e32cd97076 100644 --- a/media-libs/rubberband/Manifest +++ b/media-libs/rubberband/Manifest @@ -1,2 +1 @@ -DIST rubberband-3.3.0.tar.bz2 223408 BLAKE2B 2dccdbadbb8a24f837e82e2399f3ca1f09e25bf332fc745252ef8d5b6c80f422a2708227690cc81d0cf10ea22c9f11b21f985c738079e3c80e9d97536758f0fd SHA512 0216c33a250d52d539ad7a0ec28ea94e6d4684a308a9cb62509221b3861f74717021bd79196a1f58a7715799757491f32e0475ad2ddb7884683bb9130c676591 DIST rubberband-4.0.0.tar.bz2 236705 BLAKE2B 4de34fd67e1e9188177d2cf7c67ff69b9134e754b13a0a791eef788bd032ee8c306d249c08aae320bd64ad6da6cd1ff1a4cd2c0aee54be2caca5cac95b6a9a1e SHA512 975ceead691c9fb9cb8b876d00d5661986d85ba59a97bb3c17bc8a835e8aeaf0bc324dd43ffa20f2854e019572b404d37d5e4868a99076d422f279359c44a7b4 diff --git a/media-libs/rubberband/rubberband-3.3.0-r1.ebuild b/media-libs/rubberband/rubberband-3.3.0-r1.ebuild deleted file mode 100644 index 4da6a6ced588..000000000000 --- a/media-libs/rubberband/rubberband-3.3.0-r1.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit meson-multilib flag-o-matic toolchain-funcs - -DESCRIPTION="An audio time-stretching and pitch-shifting library and utility program" -HOMEPAGE="https://www.breakfastquay.com/rubberband/" -SRC_URI="https://breakfastquay.com/files/releases/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="ladspa lv2 jni static-libs +programs test vamp" -RESTRICT="!test? ( test )" - -DEPEND=" - media-libs/libsamplerate[${MULTILIB_USEDEP}] - sci-libs/fftw:3.0[${MULTILIB_USEDEP}] - jni? ( >=virtual/jdk-1.8:* ) - ladspa? ( media-libs/ladspa-sdk[${MULTILIB_USEDEP}] ) - lv2? ( media-libs/lv2[${MULTILIB_USEDEP}] ) - programs? ( media-libs/libsndfile[${MULTILIB_USEDEP}] ) - vamp? ( media-libs/vamp-plugin-sdk[${MULTILIB_USEDEP}] ) -" -RDEPEND=" - ${DEPEND} - ppc? ( sys-devel/gcc:* ) -" -BDEPEND=" - virtual/pkgconfig - test? ( dev-libs/boost[${MULTILIB_USEDEP}] ) -" - -EMESON_BUILDTYPE=release - -src_prepare() { - sed -i \ - -e "s/if have_jni/if get_option('jni')/g" \ - -e "s/if have_ladspa/if get_option('ladspa')/g" \ - -e "s/if have_lv2/if get_option('lv2')/g" \ - -e "s/if have_vamp/if get_option('vamp')/g" \ - -e "s/if have_sndfile/if get_option('cmdline')/g" \ - "meson.build" || die - - sed -i -e "s/type: 'feature', value: 'auto'/type: 'boolean', value: 'false'/g" "meson_options.txt" || die - - default -} - -multilib_src_configure() { - if use ppc ; then - # bug #827203 - # meson doesn't respect/use LIBS but mangles LDFLAGS with libs - # correctly. Use this until we get a Meson test for libatomic. - append-ldflags -latomic - elif tc-is-clang && [[ $(tc-get-cxx-stdlib) == libstdc++ ]] ; then - # bug #860078 - # undefined reference to `__atomic_is_lock_free' - append-ldflags -latomic - fi - - local emesonargs=( - -Dfft=fftw - -Dresampler=libsamplerate - -Ddefault_library=$(use static-libs && echo "both" || echo "shared") - $(meson_use ladspa) - $(meson_use lv2) - $(meson_use jni) - $(meson_use programs cmdline) - $(meson_use vamp) - $(meson_use test tests) - ) - use jni && emesonargs+=( - -Dextra_include_dirs="$(java-config -g JAVA_HOME)/include,$(java-config -g JAVA_HOME)/include/linux" - ) - meson_src_configure -} - -multilib_src_test() { - meson_src_test --timeout-multiplier=30 -} - -multilib_src_install_all() { - ! use jni && find "${ED}" -name "*.a" -delete -} diff --git a/media-libs/rubberband/rubberband-4.0.0-r1.ebuild b/media-libs/rubberband/rubberband-4.0.0-r1.ebuild index 7238c2c72f38..f2fdb557964f 100644 --- a/media-libs/rubberband/rubberband-4.0.0-r1.ebuild +++ b/media-libs/rubberband/rubberband-4.0.0-r1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://breakfastquay.com/files/releases/${P}.tar.bz2" LICENSE="GPL-2" SLOT="0/3" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" IUSE="ladspa lv2 jni static-libs +programs test vamp" RESTRICT="!test? ( test )" diff --git a/media-libs/sdl2-mixer/Manifest b/media-libs/sdl2-mixer/Manifest index d1f5b72a1e64..cfd0e4a1d952 100644 --- a/media-libs/sdl2-mixer/Manifest +++ b/media-libs/sdl2-mixer/Manifest @@ -1,2 +1,3 @@ DIST SDL2_mixer-2.6.2.tar.gz 9934376 BLAKE2B 9cf378d03046389b3625b90ca7a4c34d9b80e0908bccef454adedc21f16f24d99acc0fc3522ba981be89d8c58c7a6e877e7d98c798b157529e2cb26141faec8c SHA512 16baa9d8b345bf0224538cbfb2ae9fc5d3deea2b454f41a98006c938fe7a65d5a8c84e28a76f98a4dd971c4fe5cf0219d8bf73331cf11f2702e01600eb197658 DIST SDL2_mixer-2.6.3.tar.gz 9935069 BLAKE2B 9908bdc549300af05b4fbcbb6c0533913ae62bfa2f761118983e0da58a4bcd68c2d008fa5bbcd94b0141241e54f1cd507e275e2d4b637214b803dabdbc5b0250 SHA512 2e9da045d2fdab97236c3901b3d441834a67a47c8851ddfb817c9db6f23ed9fb355a5ef8d2158d0c9959a83934e8cd1b95db8a69eaddf8f7fcca115f01818740 +DIST SDL2_mixer-2.8.0.tar.gz 10874471 BLAKE2B 701ed21416e7a3ceda313f3e9ad47f98687f357712fb90f6c3c2ac065c96a4ded04a907c563f3b9b7bf42f192b6c442d025abb0a5cfbb745bd8719c49e29ff61 SHA512 5ddbc4b0b5fad2e0844a503daa79564b912654192599ef8fa7698531f08323ce01801f6bb17b2b3905020a3df362a967b7566ae725eb085da991578cc0807aad diff --git a/media-libs/sdl2-mixer/metadata.xml b/media-libs/sdl2-mixer/metadata.xml index c3925886628a..955d39ff6de7 100644 --- a/media-libs/sdl2-mixer/metadata.xml +++ b/media-libs/sdl2-mixer/metadata.xml @@ -5,15 +5,26 @@ <email>games@gentoo.org</email> <name>Gentoo Games Project</name> </maintainer> + <maintainer type="person" proxied="yes"> + <email>mechakotik@gmail.com</email> + <name>Andrei Sabalenka</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <use> - <flag name="fluidsynth">Use <pkg>media-sound/fluidsynth</pkg> - for MIDI support</flag> - <flag name="midi">basic support for MIDI files</flag> - <flag name="mod">basic support for MOD files</flag> - <flag name="playtools">Install playwave and playmus tools (useful - for testing)</flag> - <flag name="tremor">enable OGG Vorbis music via libtremor</flag> - <flag name="wav">support WAVE files</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> diff --git a/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild b/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild new file mode 100644 index 000000000000..f336653b1b09 --- /dev/null +++ b/media-libs/sdl2-mixer/sdl2-mixer-2.8.0.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="SDL2_mixer-${PV}" +inherit cmake-multilib + +DESCRIPTION="Simple Direct Media Layer Mixer Library" +HOMEPAGE="https://github.com/libsdl-org/SDL_mixer" +SRC_URI="https://www.libsdl.org/projects/SDL_mixer/release/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc64 ~riscv ~sparc ~x86" +IUSE="flac fluidsynth gme midi mod modplug mp3 opus playtools stb timidity tremor vorbis +wav wavpack xmp" +REQUIRED_USE=" + midi? ( || ( timidity fluidsynth ) ) + timidity? ( midi ) + fluidsynth? ( midi ) + + vorbis? ( ?? ( stb tremor ) ) + stb? ( vorbis ) + tremor? ( vorbis ) + + mod? ( || ( modplug xmp ) ) + modplug? ( mod ) + xmp? ( mod ) +" + +RDEPEND=" + media-libs/libsdl2[${MULTILIB_USEDEP}] + flac? ( media-libs/flac:=[${MULTILIB_USEDEP}] ) + midi? ( + fluidsynth? ( media-sound/fluidsynth:=[${MULTILIB_USEDEP}] ) + timidity? ( media-sound/timidity++ ) + ) + mod? ( + modplug? ( media-libs/libmodplug[${MULTILIB_USEDEP}] ) + xmp? ( media-libs/libxmp ) + ) + mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) + opus? ( media-libs/opusfile ) + vorbis? ( + stb? ( dev-libs/stb ) + 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=( + -DSDL2MIXER_CMD=yes + -DSDL2MIXER_WAVE=$(usex wav) + -DSDL2MIXER_MOD=$(usex mod) + -DSDL2MIXER_MOD_MODPLUG=$(usex modplug) + -DSDL2MIXER_MOD_XMP=$(usex xmp) + -DSDL2MIXER_MIDI=$(usex midi) + -DSDL2MIXER_MIDI_TIMIDITY=$(usex timidity) + -DSDL2MIXER_MIDI_FLUIDSYNTH=$(usex fluidsynth) + -DSDL2MIXER_VORBIS=$(usex vorbis $(usex stb STB $(usex tremor TREMOR VORBISFILE) ) no ) + -DSDL2MIXER_FLAC=$(usex flac) + -DSDL2MIXER_FLAC_LIBFLAC=$(usex flac) + -DSDL2MIXER_MP3=$(usex mp3) + -DSDL2MIXER_MP3_MPG123=$(usex mp3) + -DSDL2MIXER_OPUS=$(usex opus) + -DSDL2MIXER_GME=$(usex gme) + -DSDL2MIXER_WAVPACK=$(usex wavpack) + -DSDL2MIXER_SAMPLES=$(usex playtools) + -DSDL2MIXER_SAMPLES_INSTALL=$(usex playtools) + ) + 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/shaderc/Manifest b/media-libs/shaderc/Manifest index 6df60c02308b..25d3cc44ac9f 100644 --- a/media-libs/shaderc/Manifest +++ b/media-libs/shaderc/Manifest @@ -1,2 +1,3 @@ DIST shaderc-2024.1.tar.gz 227211 BLAKE2B a4c9790cb117e4cf2d528ed294ef0599dc3c17ac367a4f658254ff9e161f82b3338a2d70a033fabcdb7a2925c2f4668ee89cfff0d4b88cd2b22fcfb3f2786ea9 SHA512 017d8625c66da7eb5b431f595b27a4ddf146aaa12ef56777cb8c3f7f0f15eb01c3286e5905c5268de55d07cc19d5ffae4d4c08987d105b0a6be74616a467b736 DIST shaderc-2024.3.tar.gz 227490 BLAKE2B 0f9df6251b1a107c89a4e509c7a36f4035b5282f11e0b00cb7a1603b3212917894e805337d2404509b839dd9ac40aa19d8aa23bf6666b330dae2cfdabc18c9c6 SHA512 ba990054b3e50bd1c3e7decaca80b80dfade0f15505f6e89c455b7a114b8507931dff2c570ca81fd38882472e7d7014c417ca8f4c1117fc0e6825ea9f669222a +DIST shaderc-2024.4.tar.gz 228004 BLAKE2B c694985ff96659756f70196d98fb48a82c2b05f917b0eb44596558bc17529bad51a282806c973278beb26ec97dd17235659e45b8814c815155448ab8bd7adc94 SHA512 d313af65e76664640020c964cbd7021e3b6f12ea839a58ef67f6052d9af684fc7fd237a687737e6483f24b89d5c85b3e0c0fafeec66b3646f77031cb0d6c9587 diff --git a/media-libs/shaderc/shaderc-2024.3.ebuild b/media-libs/shaderc/shaderc-2024.3.ebuild index 9a74db44450a..2b1774a67f92 100644 --- a/media-libs/shaderc/shaderc-2024.3.ebuild +++ b/media-libs/shaderc/shaderc-2024.3.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 @@ -14,7 +14,7 @@ S="${WORKDIR}/${PN}-${EGIT_COMMIT}" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64 ~loong ppc64 ~riscv x86" +KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" IUSE="doc" RDEPEND=" diff --git a/media-libs/shaderc/shaderc-2024.4.ebuild b/media-libs/shaderc/shaderc-2024.4.ebuild new file mode 100644 index 000000000000..eea04b594021 --- /dev/null +++ b/media-libs/shaderc/shaderc-2024.4.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake-multilib python-any-r1 + +DESCRIPTION="Collection of tools, libraries and tests for shader compilation" +HOMEPAGE="https://github.com/google/shaderc" +EGIT_COMMIT="${PV}" +SRC_URI="https://github.com/google/${PN}/archive/v${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${EGIT_COMMIT}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="doc" + +RDEPEND=" + >=dev-util/glslang-1.4.304.0:=[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.4.304.0[${MULTILIB_USEDEP}] +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + >=dev-util/spirv-headers-1.4.304.0" + +BDEPEND="doc? ( dev-ruby/asciidoctor )" + +PATCHES=( + "${FILESDIR}"/${PN}-2020.4-fix-build.patch +) + +# https://github.com/google/shaderc/issues/470 +RESTRICT=test + +src_prepare() { + cmake_comment_add_subdirectory examples + + # Unbundle glslang, spirv-headers, spirv-tools + cmake_comment_add_subdirectory third_party + sed -i \ + -e "s|\$<TARGET_FILE:spirv-dis>|${EPREFIX}/usr/bin/spirv-dis|" \ + glslc/test/CMakeLists.txt || die + + # Disable git versioning + sed -i -e '/build-version/d' glslc/CMakeLists.txt || die + + # Manually create build-version.inc as we disabled git versioning + cat <<- EOF > glslc/src/build-version.inc || die + "${P}\n" + "$(best_version dev-util/spirv-tools)\n" + "$(best_version dev-util/glslang)\n" + EOF + + cmake_src_prepare +} + +multilib_src_configure() { + local mycmakeargs=( + -DSHADERC_SKIP_TESTS="true" + -DSHADERC_ENABLE_WERROR_COMPILE="false" + ) + cmake_src_configure +} + +multilib_src_compile() { + if multilib_is_native_abi && use doc; then + cmake_src_compile glslc_doc_README + fi + cmake_src_compile +} + +multilib_src_install() { + if multilib_is_native_abi; then + use doc && local HTML_DOCS=( "${BUILD_DIR}/glslc/README.html" ) + fi + cmake_src_install +} diff --git a/media-libs/simage/simage-1.8.3-r1.ebuild b/media-libs/simage/simage-1.8.3-r1.ebuild index 73fd53ca3009..73298867eca3 100644 --- a/media-libs/simage/simage-1.8.3-r1.ebuild +++ b/media-libs/simage/simage-1.8.3-r1.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/coin3d/simage.git" else SRC_URI="https://github.com/coin3d/simage/releases/download/v${PV}/${P}-src.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86" + KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~sparc x86" S="${WORKDIR}/${PN}" fi diff --git a/media-libs/simage/simage-1.8.3.ebuild b/media-libs/simage/simage-1.8.3.ebuild deleted file mode 100644 index 6df076f3fb3c..000000000000 --- a/media-libs/simage/simage-1.8.3.ebuild +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake - -DESCRIPTION="Image and video texturing library" -HOMEPAGE="https://github.com/coin3d/simage/" - -if [[ ${PV} = *9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/coin3d/simage.git" -else - SRC_URI="https://github.com/coin3d/simage/releases/download/v${PV}/${P}-src.tar.gz -> ${P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~sparc x86" - S="${WORKDIR}/${PN}" -fi - -LICENSE="BSD-1" -SLOT="0" -IUSE="gif jpeg png qt5 qt6 sndfile test tiff vorbis zlib" -REQUIRED_USE="qt5? ( !qt6 )" -RESTRICT="!test? ( test )" - -RDEPEND=" - gif? ( media-libs/giflib:= ) - jpeg? ( media-libs/libjpeg-turbo:= ) - png? ( media-libs/libpng:= ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - ) - qt6? ( - dev-qt/qtbase:6[gui] - ) - sndfile? ( - media-libs/libsndfile - media-libs/flac:= - ) - tiff? ( - media-libs/tiff:=[lzma,zstd] - app-arch/xz-utils - app-arch/zstd:= - ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - media-libs/opus - ) - zlib? ( sys-libs/zlib:= ) -" -DEPEND="${RDEPEND}" -BDEPEND="test? ( media-libs/libsndfile )" - -PATCHES=( - "${FILESDIR}"/${PN}-1.8.1-0001-Gentoo-specific-remove-RELEASE-flag-from-pkg-config.patch -) - -DOCS=(AUTHORS ChangeLog NEWS README) - -src_configure() { - local use_qt - if use qt5 || use qt6 ; then - use_qt=ON - else - use_qt=OFF - fi - local mycmakeargs=( - -DSIMAGE_BUILD_SHARED_LIBS=ON - -DSIMAGE_BUILD_EXAMPLES=OFF - -DSIMAGE_BUILD_TESTS=$(usex test) - -DSIMAGE_BUILD_DOCUMENTATION=OFF - -DSIMAGE_USE_AVIENC=OFF # Windows only - -DSIMAGE_USE_GDIPLUS=OFF # Windows - -DSIMAGE_USE_CGIMAGE=OFF # OS X only - -DSIMAGE_USE_QUICKTIME=OFF # OS X only - -DSIMAGE_USE_QIMAGE=${use_qt} - -DSIMAGE_USE_QT5=$(usex qt5) - -DSIMAGE_USE_QT6=$(usex qt6) - -DSIMAGE_USE_CPACK=OFF - -DSIMAGE_USE_STATIC_LIBS=OFF - -DSIMAGE_LIBJASPER_SUPPORT=OFF - -DSIMAGE_LIBSNDFILE_SUPPORT=$(usex sndfile) - -DSIMAGE_OGGVORBIS_SUPPORT=$(usex vorbis) - -DSIMAGE_EPS_SUPPORT=ON - -DSIMAGE_MPEG2ENC_SUPPORT=ON - -DSIMAGE_PIC_SUPPORT=ON - -DSIMAGE_RGB_SUPPORT=ON - -DSIMAGE_TGA_SUPPORT=ON - -DSIMAGE_XWD_SUPPORT=ON - -DSIMAGE_ZLIB_SUPPORT=$(usex zlib) - -DSIMAGE_GIF_SUPPORT=$(usex gif) - -DSIMAGE_JPEG_SUPPORT=$(usex jpeg) - -DSIMAGE_PNG_SUPPORT=$(usex png) - -DSIMAGE_TIFF_SUPPORT=$(usex tiff) - ) - cmake_src_configure -} diff --git a/media-libs/speex/files/speex-1.2.1-slibtoolize.patch b/media-libs/speex/files/speex-1.2.1-slibtoolize.patch new file mode 100644 index 000000000000..eef545d9648a --- /dev/null +++ b/media-libs/speex/files/speex-1.2.1-slibtoolize.patch @@ -0,0 +1,28 @@ +https://github.com/xiph/speex/pull/24 +https://github.com/xiph/speex/commit/1de1260d24e01224df5fbb8b92893106c89bb8de + +From 1de1260d24e01224df5fbb8b92893106c89bb8de Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Tue, 4 Jun 2024 08:59:02 -0700 +Subject: [PATCH] configure.ac: don't use internal GNU libtool functions + +This doesn't work when using slibtoolize instead of GNU libtoolize and +is not necessary anyways. + +Signed-off-by: orbea <orbea@riseup.net> +--- + configure.ac | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 0a7d5c1c..0a631b15 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -27,7 +27,6 @@ AM_INIT_AUTOMAKE([foreign no-define]) + AM_MAINTAINER_MODE([enable]) + + AC_CANONICAL_HOST +-_LT_SET_OPTION([LT_INIT],[win32-dll]) + LT_INIT + + AC_C_BIGENDIAN diff --git a/media-libs/speex/speex-1.2.1-r2.ebuild b/media-libs/speex/speex-1.2.1-r2.ebuild index f249467b5235..253c67a92fdf 100644 --- a/media-libs/speex/speex-1.2.1-r2.ebuild +++ b/media-libs/speex/speex-1.2.1-r2.ebuild @@ -12,6 +12,8 @@ DESCRIPTION="Audio compression format designed for speech" HOMEPAGE="https://www.speex.org/" SRC_URI="https://downloads.xiph.org/releases/speex/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + LICENSE="BSD" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" @@ -28,11 +30,10 @@ DEPEND=" " BDEPEND="virtual/pkgconfig" -S="${WORKDIR}/${MY_P}" - PATCHES=( "${FILESDIR}"/${PN}-1.2.0-configure.patch "${FILESDIR}"/${P}-vla-detection.patch + "${FILESDIR}"/${P}-slibtoolize.patch "${FILESDIR}"/${PN}-1.2.1-valgrind.patch ) diff --git a/media-libs/speexdsp/files/speexdsp-1.2.1-slibtoolize.patch b/media-libs/speexdsp/files/speexdsp-1.2.1-slibtoolize.patch new file mode 100644 index 000000000000..63688bc27070 --- /dev/null +++ b/media-libs/speexdsp/files/speexdsp-1.2.1-slibtoolize.patch @@ -0,0 +1,28 @@ +https://github.com/xiph/speexdsp/pull/48 +https://github.com/xiph/speexdsp/commit/dbd421d149a9c362ea16150694b75b63d757a521 + +From dbd421d149a9c362ea16150694b75b63d757a521 Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Tue, 4 Jun 2024 08:54:37 -0700 +Subject: [PATCH] configure.ac: don't use internal GNU libtool functions + +This doesn't work when using slibtoolize instead of GNU libtoolize and +is not necessary anyways. + +Signed-off-by: orbea <orbea@riseup.net> +--- + configure.ac | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index cd433ffe..413f71da 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -22,7 +22,6 @@ AM_INIT_AUTOMAKE([foreign no-define]) + AM_MAINTAINER_MODE([enable]) + + AC_CANONICAL_HOST +-_LT_SET_OPTION([LT_INIT],[win32-dll]) + LT_INIT + + AC_C_BIGENDIAN diff --git a/media-libs/speexdsp/speexdsp-1.2.1.ebuild b/media-libs/speexdsp/speexdsp-1.2.1.ebuild index 9c163de502b2..c7c5c41cbcf1 100644 --- a/media-libs/speexdsp/speexdsp-1.2.1.ebuild +++ b/media-libs/speexdsp/speexdsp-1.2.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,6 +12,8 @@ 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" +S="${WORKDIR}/${MY_P}" + LICENSE="BSD" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" @@ -19,10 +21,9 @@ IUSE="cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_arm_neon" BDEPEND="virtual/pkgconfig" -S="${WORKDIR}/${MY_P}" - PATCHES=( "${FILESDIR}"/${PN}-1.2.0-configure.patch + "${FILESDIR}"/${P}-slibtoolize.patch ) src_prepare() { diff --git a/media-libs/sratom/Manifest b/media-libs/sratom/Manifest index c06fba00ba2a..bd1b64990a7b 100644 --- a/media-libs/sratom/Manifest +++ b/media-libs/sratom/Manifest @@ -1 +1,2 @@ DIST sratom-0.6.16.tar.xz 18940 BLAKE2B e78bc572d990ce6914f3276d1b110cb3ba01213f5a084d8548009bf9226107c820f9f86f4cf22ae8076dd9d44bdb5e8b4bc623f67759150fb267b6ccf673a1f7 SHA512 8e01eec642bff63745e8d99a814780ff34e4b79cc99699a1bb7ddac60da8808231d3b4a615a1d87464cbcf4dc26b8ec39e71688a268d493df71dc75892bf6479 +DIST sratom-0.6.18.tar.xz 19640 BLAKE2B f0ac499437b6858d5052ccc4d185c9af7464cec9ddc104da88d7ceda187f7fd17efca4437aeb2b38ec967bfacc6fe2b443be53eda2feb54cb78377a260778c14 SHA512 3f78f845974cf7d8a7166e6430a9e8a1454c98b4aea065bd7e66da01dba7a210edc540e17613985ddd8f9124ccf8500b71646942d988f4b9c65dd53f0d18f6cf diff --git a/media-libs/sratom/sratom-0.6.18.ebuild b/media-libs/sratom/sratom-0.6.18.ebuild new file mode 100644 index 000000000000..bb9f08402628 --- /dev/null +++ b/media-libs/sratom/sratom-0.6.18.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..13} python3_13t ) +PYTHON_REQ_USE='threads(+)' +inherit meson-multilib python-any-r1 + +DESCRIPTION="Library for serialising LV2 atoms to/from RDF, particularly the Turtle syntax" +HOMEPAGE="https://drobilla.net/software/sratom.html" +SRC_URI="https://download.drobilla.net/${P}.tar.xz" + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + virtual/pkgconfig + doc? ( + app-text/doxygen + dev-python/sphinx + dev-python/sphinx-lv2-theme + dev-python/sphinxygen +) +" +# Take care on bumps to check minimum versions! +RDEPEND=" + >=dev-libs/serd-0.30.10 + >=dev-libs/sord-0.16.16 + >=media-libs/lv2-1.18.4 +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} +" + +src_prepare() { + default + + # fix doc installation path + sed -iE "s/versioned_name/'${PF}'/g" doc/html/meson.build doc/singlehtml/meson.build || die +} + +multilib_src_configure() { + local emesonargs=( + $(meson_native_use_feature doc docs) + $(meson_feature test tests) + ) + + meson_src_configure +} + +multilib_src_install_all() { + local DOCS=( NEWS README.md ) + einstalldocs +} diff --git a/media-libs/suil/Manifest b/media-libs/suil/Manifest index 8662ca1c713c..0c0ea229985e 100644 --- a/media-libs/suil/Manifest +++ b/media-libs/suil/Manifest @@ -1 +1 @@ -DIST suil-0.10.20.tar.xz 27492 BLAKE2B 4ce6dcba544b4fb606d2b97dd347e5098cd1373643059fe80e2a7f9d7022432063e4391017e106a4092056999dcb7b99729339536c4c73cdaa5a3f091f1100ee SHA512 fb3735d0856c826f46ad2334b6965f4116df2fa3132d10bdfcd2b2d39f8e40142801ce3f352425845adfac90bf4a60d76d09fdf0a99b2cec82faa0f5f127c3f8 +DIST suil-0.10.22.tar.xz 28428 BLAKE2B ba483b0307ff522479d738bf90cca2efabb1f73e5c912ce3c94a690114937d6014a6f4a28e4173bb7ae3d669e88e9332c9beca505649080523cdf0dab319f38c SHA512 fe2f30acd4c6f586ad3b08e5a5fac26a902848065b944852406ae51b74fa5fdbb0ff2417c538cd803ad47074248353c2d704698bcd5e64ade174deb4b5701f7e diff --git a/media-libs/suil/files/suil-0.10.22-fix-gtk2-option.patch b/media-libs/suil/files/suil-0.10.22-fix-gtk2-option.patch new file mode 100644 index 000000000000..4ed776ddb211 --- /dev/null +++ b/media-libs/suil/files/suil-0.10.22-fix-gtk2-option.patch @@ -0,0 +1,11 @@ +--- a/meson.build 2025-01-19 14:59:34.000000000 +0100 ++++ b/meson.build 2025-01-28 18:55:30.964917952 +0100 +@@ -215,7 +215,7 @@ + 'gtk+-2.0', + include_type: 'system', + version: '>=2.18.0', +- required: get_option('gtk2').enabled(), ++ required: get_option('gtk2'), + ) + + gtk2_x11_dep = dependency( diff --git a/media-libs/suil/suil-0.10.20.ebuild b/media-libs/suil/suil-0.10.22-r2.ebuild index b4cb8009ecdb..67978e1f7892 100644 --- a/media-libs/suil/suil-0.10.20.ebuild +++ b/media-libs/suil/suil-0.10.22-r2.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 @@ -12,7 +12,7 @@ SRC_URI="https://download.drobilla.net/${P}.tar.xz" LICENSE="ISC" SLOT="0" KEYWORDS="amd64 ~arm64 ~loong ~mips ppc ppc64 ~riscv x86" -IUSE="doc gtk gtk2 qt5 test X" +IUSE="doc gtk gtk2 qt6 test X" RESTRICT="!test? ( test )" # This could be way refined, but it's quickly a rabbit hole @@ -27,12 +27,7 @@ RDEPEND=" >=x11-libs/gtk+-3.14.0:3 dev-libs/glib:2 ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtx11extras:5 - ) + qt6? ( dev-qt/qtbase:6[gui,widgets,X] ) X? ( x11-libs/libX11 ) " DEPEND="${RDEPEND}" @@ -49,6 +44,8 @@ BDEPEND=" DOCS=( AUTHORS NEWS README.md ) +PATCHES=( "${FILESDIR}/${P}-fix-gtk2-option.patch" ) + src_prepare() { default @@ -58,10 +55,11 @@ src_prepare() { src_configure() { local emesonargs=( + -Dqt5=disabled $(meson_feature doc docs) $(meson_feature gtk2) $(meson_feature gtk gtk3) - $(meson_feature qt5) + $(meson_feature qt6) $(meson_feature test tests) $(meson_feature X x11) ) diff --git a/media-libs/svt-av1/svt-av1-2.1.2.ebuild b/media-libs/svt-av1/svt-av1-2.1.2.ebuild index 49270aedb7db..6ba513e8db9a 100644 --- a/media-libs/svt-av1/svt-av1-2.1.2.ebuild +++ b/media-libs/svt-av1/svt-av1-2.1.2.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} = 9999 ]]; then EGIT_REPO_URI="https://gitlab.com/AOMediaCodec/SVT-AV1.git" else SRC_URI="https://gitlab.com/AOMediaCodec/SVT-AV1/-/archive/v${PV}/SVT-AV1-v${PV}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86" S="${WORKDIR}/SVT-AV1-v${PV}" fi diff --git a/media-libs/t1lib/t1lib-5.1.2-r5.ebuild b/media-libs/t1lib/t1lib-5.1.2-r5.ebuild index 867cd9e5ab78..994e1de47827 100644 --- a/media-libs/t1lib/t1lib-5.1.2-r5.ebuild +++ b/media-libs/t1lib/t1lib-5.1.2-r5.ebuild @@ -50,6 +50,8 @@ src_prepare() { } src_configure() { + # bug #943882 + append-cflags -std=gnu17 # lto-type-mismatch filter-lto diff --git a/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib2.patch b/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib2.patch new file mode 100644 index 000000000000..5a52b84ecca6 --- /dev/null +++ b/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib2.patch @@ -0,0 +1,283 @@ +Source: https://aur.archlinux.org/cgit/aur.git/tree/taglib-2.0.diff?h=taglib-extras + +* asturm 2024-12-28: + - Upstream repository still SVN: https://invent.kde.org/multimedia/amarok/-/issues/18 + - Cleaned up patch content already part of taglib-extras-1.0.1-taglib110.patch + - Cleaned up the irrelevant taglib min version raising bits + +diff -U 3 -r a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2009-09-17 21:31:50.000000000 +0200 ++++ b/CMakeLists.txt 2024-03-18 20:05:05.486108470 +0100 +@@ -14,7 +14,7 @@ + if (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_SYSTEM_NAME MATCHES Linux) + set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") +- set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-check-new -fno-common") ++ set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-check-new -fno-common -std=c++11") + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + endif (CMAKE_COMPILER_IS_GNUCXX) + if(MSVC) +diff -U 3 -r a/taglib-extras/audible/audibletag.cpp b/taglib-extras/audible/audibletag.cpp +--- a/taglib-extras/audible/audibletag.cpp 2009-09-17 17:38:07.000000000 +0200 ++++ b/taglib-extras/audible/audibletag.cpp 2024-03-18 19:33:40.553079218 +0100 +@@ -40,11 +40,11 @@ + using namespace TagLibExtras; + + Audible::Tag::Tag() { +- m_title = TagLib::String::null; +- m_artist = TagLib::String::null; +- m_album = TagLib::String::null; +- m_comment = TagLib::String::null; +- m_genre = TagLib::String::null; ++ m_title = TagLib::String(); ++ m_artist = TagLib::String(); ++ m_album = TagLib::String(); ++ m_comment = TagLib::String(); ++ m_genre = TagLib::String(); + m_year = 0; + m_track = 0; + m_userID = 0; +@@ -55,11 +55,11 @@ + } + + bool Audible::Tag::isEmpty() const { +- return m_title == TagLib::String::null && +- m_artist == TagLib::String::null && +- m_album == TagLib::String::null && +- m_comment == TagLib::String::null && +- m_genre == TagLib::String::null && ++ return m_title == TagLib::String() && ++ m_artist == TagLib::String() && ++ m_album == TagLib::String() && ++ m_comment == TagLib::String() && ++ m_genre == TagLib::String() && + m_year == 0 && + m_track == 0 && + m_userID == 0; +@@ -114,7 +114,7 @@ + } + else if(!strcmp(name, "description")) + { +- if( m_comment.isNull() ) ++ if( m_comment.isEmpty() ) + m_comment = TagLib::String(value, TagLib::String::Latin1); + } + else if(!strcmp(name, "pubdate")) +diff -U 3 -r a/taglib-extras/audible/audibletag.h b/taglib-extras/audible/audibletag.h +--- a/taglib-extras/audible/audibletag.h 2009-09-17 17:38:07.000000000 +0200 ++++ b/taglib-extras/audible/audibletag.h 2024-03-18 19:31:45.715118382 +0100 +@@ -52,30 +52,30 @@ + + /*! + * Returns the track name; if no track name is present in the tag +- * TagLib::String::null will be returned. ++ * TagLib::String() will be returned. + */ + virtual TagLib::String title() const { return m_title; } + + /*! + * Returns the artist name; if no artist name is present in the tag +- * TagLib::String::null will be returned. ++ * TagLib::String() will be returned. + */ + virtual TagLib::String artist() const { return m_artist; } + + /*! + * Returns the album name; if no album name is present in the tag +- * TagLib::String::null will be returned. ++ * TagLib::String() will be returned. + */ + virtual TagLib::String album() const { return m_album; } + + /*! + * Returns the track comment; if no comment is present in the tag +- * TagLib::String::null will be returned. ++ * TagLib::String() will be returned. + */ + virtual TagLib::String comment() const { return m_comment; } + + /*! +- * Returns the genre name; if no genre is present in the tag TagLib::String::null ++ * Returns the genre name; if no genre is present in the tag TagLib::String() + * will be returned. + */ + virtual TagLib::String genre() const { return m_genre; } +@@ -83,45 +83,45 @@ + /*! + * Returns the year; if there is no year set, this will return 0. + */ +- virtual TagLib::uint year() const { return m_year; } ++ virtual unsigned int year() const { return m_year; } + + /*! + * Returns the track number; if there is no track number set, this will + * return 0. + */ +- virtual TagLib::uint track() const { return m_track; } ++ virtual unsigned int track() const { return m_track; } + + /*! + * Returns the user id for this file. + */ +- virtual TagLib::uint userID() const { return m_userID; } ++ virtual unsigned int userID() const { return m_userID; } + + /*! +- * Sets the title to \a s. If \a s is TagLib::String::null then this value will be ++ * Sets the title to \a s. If \a s is TagLib::String() then this value will be + * cleared. + */ + virtual void setTitle(const TagLib::String &s) { m_title = s; } + + /*! +- * Sets the artist to \a s. If \a s is TagLib::String::null then this value will be ++ * Sets the artist to \a s. If \a s is TagLib::String() then this value will be + * cleared. + */ + virtual void setArtist(const TagLib::String &s) { m_artist = s; } + + /*! +- * Sets the album to \a s. If \a s is TagLib::String::null then this value will be ++ * Sets the album to \a s. If \a s is TagLib::String() then this value will be + * cleared. + */ + virtual void setAlbum(const TagLib::String &s) { m_album = s; } + + /*! +- * Sets the album to \a s. If \a s is TagLib::String::null then this value will be ++ * Sets the album to \a s. If \a s is TagLib::String() then this value will be + * cleared. + */ + virtual void setComment(const TagLib::String &s) { m_comment = s; } + + /*! +- * Sets the genre to \a s. If \a s is TagLib::String::null then this value will be ++ * Sets the genre to \a s. If \a s is TagLib::String() then this value will be + * cleared. For tag formats that use a fixed set of genres, the appropriate + * value will be selected based on a string comparison. A list of available + * genres for those formats should be available in that type's +@@ -132,12 +132,12 @@ + /*! + * Sets the year to \a i. If \a s is 0 then this value will be cleared. + */ +- virtual void setYear(TagLib::uint i) { m_year = i; } ++ virtual void setYear(unsigned int i) { m_year = i; } + + /*! + * Sets the track to \a i. If \a s is 0 then this value will be cleared. + */ +- virtual void setTrack(TagLib::uint i) { m_track = i; } ++ virtual void setTrack(unsigned int i) { m_track = i; } + + /*! + * Returns true if the tag does not contain any data. This should be +@@ -159,7 +159,7 @@ + */ + static void duplicate(const Tag *source, Tag *target, bool overwrite = true); + +- virtual void setUserID(TagLib::uint id) { m_userID = id; } ++ virtual void setUserID(unsigned int id) { m_userID = id; } + + int getTagsEndOffset(); + +@@ -171,9 +171,9 @@ + TagLib::String m_album; + TagLib::String m_comment; + TagLib::String m_genre; +- TagLib::uint m_year; +- TagLib::uint m_track; +- TagLib::uint m_userID; ++ unsigned int m_year; ++ unsigned int m_track; ++ unsigned int m_userID; + bool readTag( FILE *fp, char **name, char **value); + int m_tagsEndOffset; + }; +diff -U 3 -r a/taglib-extras/rmff/realmediafile.cpp b/taglib-extras/rmff/realmediafile.cpp +--- a/taglib-extras/rmff/realmediafile.cpp 2009-09-17 17:38:07.000000000 +0200 ++++ b/taglib-extras/rmff/realmediafile.cpp 2024-03-18 19:25:30.819973309 +0100 +@@ -78,12 +78,12 @@ + return m_rmff->genre(); + } + +-TagLib::uint RealMedia::Tag::year() const ++unsigned int RealMedia::Tag::year() const + { + return m_rmff->year(); + } + +-TagLib::uint RealMedia::Tag::track() const ++unsigned int RealMedia::Tag::track() const + { + return m_rmff->track(); + } +@@ -113,12 +113,12 @@ + // TODO: write support + } + +-void RealMedia::Tag::setYear( TagLib::uint ) ++void RealMedia::Tag::setYear( unsigned int ) + { + // TODO: write support + } + +-void RealMedia::Tag::setTrack( TagLib::uint ) ++void RealMedia::Tag::setTrack( unsigned int ) + { + // TODO: write support + } +diff -U 3 -r a/taglib-extras/rmff/realmediafile.h b/taglib-extras/rmff/realmediafile.h +--- a/taglib-extras/rmff/realmediafile.h 2009-09-21 16:34:45.000000000 +0200 ++++ b/taglib-extras/rmff/realmediafile.h 2024-03-18 19:25:44.642920743 +0100 +@@ -54,15 +54,15 @@ + virtual TagLib::String album () const; + virtual TagLib::String comment () const; + virtual TagLib::String genre () const; +- virtual TagLib::uint year () const; +- virtual TagLib::uint track () const; ++ virtual unsigned int year () const; ++ virtual unsigned int track () const; + virtual void setTitle (const TagLib::String &s); + virtual void setArtist (const TagLib::String &s); + virtual void setAlbum (const TagLib::String &s); + virtual void setComment (const TagLib::String &s); + virtual void setGenre (const TagLib::String &s); +- virtual void setYear (TagLib::uint i); +- virtual void setTrack (TagLib::uint i); ++ virtual void setYear (unsigned int i); ++ virtual void setTrack (unsigned int i); + + bool isEmpty() const; + void duplicate(const Tag *source, Tag *target, bool overwrite); +diff -U 3 -r a/taglib-extras/rmff/rmff.cpp b/taglib-extras/rmff/rmff.cpp +--- a/taglib-extras/rmff/rmff.cpp 2009-09-17 17:38:07.000000000 +0200 ++++ b/taglib-extras/rmff/rmff.cpp 2024-03-18 19:25:59.039184503 +0100 +@@ -98,12 +98,12 @@ + return !m_err && m_id3v1tag ? m_id3v1tag->tag()->genre() : ""; + } + +-TagLib::uint RealMedia::RealMediaFF::year() const ++unsigned int RealMedia::RealMediaFF::year() const + { + return !m_err && m_id3v1tag ? m_id3v1tag->tag()->year() : 0; + } + +-TagLib::uint RealMedia::RealMediaFF::track() const ++unsigned int RealMedia::RealMediaFF::track() const + { + return !m_err && m_id3v1tag ? m_id3v1tag->tag()->track() : 0; + } +diff -U 3 -r a/taglib-extras/rmff/rmff.h b/taglib-extras/rmff/rmff.h +--- a/taglib-extras/rmff/rmff.h 2009-09-17 17:38:07.000000000 +0200 ++++ b/taglib-extras/rmff/rmff.h 2024-03-18 19:26:08.022265920 +0100 +@@ -290,8 +290,8 @@ + TagLib::String album () const; + TagLib::String comment () const; + TagLib::String genre () const; +- TagLib::uint year () const; +- TagLib::uint track () const; ++ unsigned int year () const; ++ unsigned int track () const; + // TODO write support + //void setTitle (const String &s); + //void setArtist (const String &s); diff --git a/media-libs/taglib-extras/taglib-extras-1.0.1-r2.ebuild b/media-libs/taglib-extras/taglib-extras-1.0.1-r2.ebuild new file mode 100644 index 000000000000..9dc52b5511f7 --- /dev/null +++ b/media-libs/taglib-extras/taglib-extras-1.0.1-r2.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Unofficial taglib plugins maintained by the Amarok team" +HOMEPAGE="https://websvn.kde.org/trunk/kdesupport/taglib-extras/" +SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="" + +DEPEND="media-libs/taglib:=" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-taglib110.patch" # bug 571072 + "${FILESDIR}/${P}-taglib2.patch" +) diff --git a/media-libs/taglib/Manifest b/media-libs/taglib/Manifest index eaaab49e2e20..956834a3f8ff 100644 --- a/media-libs/taglib/Manifest +++ b/media-libs/taglib/Manifest @@ -1 +1,2 @@ DIST taglib-1.13.1.tar.gz 1372618 BLAKE2B 36cf9b59ded95c9996d04a86055a36a7b74a2a01c13f75826d4907abca0b982c5f9b0e4bcd6648707013108f8eaf424ab95f07c383130452aa169e2cab33f466 SHA512 986231ee62caa975afead7e94630d58acaac25a38bc33d4493d51bd635d79336e81bba60586d7355ebc0670e31f28d32da3ecceaf33292e4bc240c64bf00f35b +DIST taglib-2.0.2.tar.gz 1446419 BLAKE2B 389af213bd467d68e2b0ca4485f51c35e660439baf2ecb7165069e5cb73589f5cf6c92d56e25780cea60e082b6fa51c5dde320dd25b8c5ef0e3b738ff0a6d4ea SHA512 79f333dbe8ed44076010e33803e3418410516df4b70203962bbefea81ce0a6989a54a9791022488e64f1876573580cbe93920da4b2a7277d6a3f48c946e518fc diff --git a/media-libs/taglib/taglib-2.0.2.ebuild b/media-libs/taglib/taglib-2.0.2.ebuild new file mode 100644 index 000000000000..5fef3540f0a5 --- /dev/null +++ b/media-libs/taglib/taglib-2.0.2.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib + +DESCRIPTION="Library for reading and editing audio meta data" +HOMEPAGE="https://taglib.org" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-2.1 MPL-1.1" +SLOT="0/2" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="doc examples test" + +RESTRICT="!test? ( test )" + +RDEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND} + dev-libs/utfcpp + test? ( dev-util/cppunit[${MULTILIB_USEDEP}] ) +" +BDEPEND=" + virtual/pkgconfig + doc? ( app-text/doxygen[dot] ) +" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/taglib-config +) + +multilib_src_configure() { + local mycmakeargs=( + -DBUILD_EXAMPLES=$(multilib_native_usex examples) + -DBUILD_TESTING=$(usex test) + ) + cmake_src_configure +} + +multilib_src_compile() { + cmake_src_compile + + if multilib_is_native_abi && use doc; then + cmake_build docs + fi +} + +multilib_src_test() { + eninja -C "${BUILD_DIR}" check +} + +multilib_src_install() { + if multilib_is_native_abi && use doc; then + HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) + fi + cmake_src_install +} diff --git a/media-libs/tg_owt/Manifest b/media-libs/tg_owt/Manifest index 4662aea91114..1200b9bf8eca 100644 --- a/media-libs/tg_owt/Manifest +++ b/media-libs/tg_owt/Manifest @@ -1,4 +1,3 @@ DIST libsrtp-a566a9cfcd619e8327784aa7cff4a1276dc1e895.tar.gz 636836 BLAKE2B 496afcb80f67a8f76104e338408d4930475daadaf3f7cd2d673336aef938986876995e475a4d932424d7f99f6a339bad360f566d6fd3719316eaf8241970cf8d SHA512 930e665434e80e8a26d81b785563c915619b546a9a0af0455a14278816997074add852fae107027f4899415cb0ab47ffbf9492bea76b94b10f558b52098bbf92 DIST libyuv-04821d1e7d60845525e8db55c7bcd41ef5be9406.tar.bz2 418856 BLAKE2B a72e1f75491785b272b0ded46368a67aadb643278e5764d16dcd902ab7e4139d8664ffbacd940f30113ce3171e0b0846fe0d6111ced17c5b08f326cd61b2af14 SHA512 ff9cfbb61a1361e959740d00c741dc6fbe71ca7c61770abc35f70aada402df3884d7d5992ae79472dfe3d7641154d4f13065593fee41bf8eae924e26cc654117 -DIST tg_owt-0_pre20230921.tar.gz 13726037 BLAKE2B 635342dd2127330542374e2f0f9acee91844c3c825fe4610dabe2996c541d9b3dc1681999910e5b591752f7e8f65a089c16b43216dd0c0b84f1a0e913e5a0213 SHA512 538d713e9ac91e9f676cdf301d11d7b5be0d67bda6283537e03b6322f3cca5c0234ff2f2b0b23e9046709f77ed282fc4d3526d3b21ee93478c50380be410372f -DIST tg_owt-0_pre20240804.tar.gz 11722734 BLAKE2B 084bedf7ae20ba173244851e82749dba31ba1320d83d021876f12350ecaa2fb03e47857fdc8013c87df6cae6e9250ec78548b498f35a92d305a28070475f36e4 SHA512 12bc17f39569f8b09c793d0e65b82926325c8d9046454e385ef7c82ab26f4e39e8f44f7491c80be71743abd78565bca50023b62365437fc8e43fc23d1b64840b +DIST tg_owt-0_pre20241202.tar.gz 11722610 BLAKE2B effe7b833db593bdbf5d923b362cbc8839853e068d22ac1efd39ae8287eac0aeb71e74bf4476fa2a1a1b67c4e7370c6bc3b28d97e510c50b9621761b9b7be219 SHA512 10b7d0686fabc289694c659bcd138737b33375d0aad936e0cf8dcdebeebf30e7c0e1af7a9196c4275bcbb88b5867bcefa8179564980941895a6b7d9bfae822b2 diff --git a/media-libs/tg_owt/tg_owt-0_pre20230921.ebuild b/media-libs/tg_owt/tg_owt-0_pre20230921.ebuild deleted file mode 100644 index 15ec3d79c4d6..000000000000 --- a/media-libs/tg_owt/tg_owt-0_pre20230921.ebuild +++ /dev/null @@ -1,129 +0,0 @@ -# Copyright 2020-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic - -DESCRIPTION="WebRTC build for Telegram" -HOMEPAGE="https://github.com/desktop-app/tg_owt" - -TG_OWT_COMMIT="592b14d13bf9103226e90a83571e24c49f6bfdcd" -LIBYUV_COMMIT="04821d1e7d60845525e8db55c7bcd41ef5be9406" -LIBSRTP_COMMIT="a566a9cfcd619e8327784aa7cff4a1276dc1e895" -SRC_URI="https://github.com/desktop-app/tg_owt/archive/${TG_OWT_COMMIT}.tar.gz -> ${P}.tar.gz - https://gitlab.com/chromiumsrc/libyuv/-/archive/${LIBYUV_COMMIT}/libyuv-${LIBYUV_COMMIT}.tar.bz2 - https://github.com/cisco/libsrtp/archive/${LIBSRTP_COMMIT}.tar.gz -> libsrtp-${LIBSRTP_COMMIT}.tar.gz" -S="${WORKDIR}/${PN}-${TG_OWT_COMMIT}" -# Upstream libyuv: https://chromium.googlesource.com/libyuv/libyuv - -LICENSE="BSD" -SLOT="0/${PV##*pre}" -KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv" -IUSE="screencast +X" - -# This package's USE flags may change the ABI and require a rebuild of -# dependent pacakges. As such, one should make sure to depend on -# media-libs/tg_owt[x=,y=,z=] for any package that uses this. -# Furthermore, the -DNDEBUG preprocessor flag should be defined by any -# dependent package, failure to do so will change the ABI in the header files. - -# 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) -RDEPEND=" - >=dev-cpp/abseil-cpp-20220623.1:= - 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:= - dev-libs/crc32c - screencast? ( - dev-libs/glib:2 - media-video/pipewire:= - ) - X? ( - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXrandr - x11-libs/libXtst - ) -" -DEPEND="${RDEPEND} - screencast? ( - media-libs/libglvnd - media-libs/mesa - x11-libs/libdrm - ) -" -BDEPEND=" - virtual/pkgconfig - X? ( x11-base/xorg-proto ) -" - -src_unpack() { - unpack "${P}.tar.gz" - unpack "libyuv-${LIBYUV_COMMIT}.tar.bz2" - mv -T "libyuv-${LIBYUV_COMMIT}" "${S}/src/third_party/libyuv" || die - unpack "libsrtp-${LIBSRTP_COMMIT}.tar.gz" - mv -T "libsrtp-${LIBSRTP_COMMIT}" "${S}/src/third_party/libsrtp" || die -} - -src_prepare() { - # libopenh264 has GENERATED files with yasm that aren't excluded by - # EXCLUDE_FROM_ALL, and I have no clue how to avoid this. - # These source files aren't used with system-openh264, anyway. - sed -i '/include(cmake\/libopenh264.cmake)/d' CMakeLists.txt || die - - # The sources for these aren't available, avoid needing them - sed -e '/include(cmake\/libcrc32c.cmake)/d' \ - -e '/include(cmake\/libabsl.cmake)/d' -i CMakeLists.txt || die - - # "lol" said the scorpion, "lmao" - sed -i '/if (BUILD_SHARED_LIBS)/{n;n;s/WARNING/DEBUG/}' CMakeLists.txt || die - - cmake_src_prepare -} - -src_configure() { - # Defined by -DCMAKE_BUILD_TYPE=Release, avoids crashes - # See https://bugs.gentoo.org/754012 - # EAPI 8 still wipes this flag. - append-cppflags '-DNDEBUG' - - local mycmakeargs=( - -DTG_OWT_USE_X11=$(usex X) - -DTG_OWT_USE_PIPEWIRE=$(usex screencast) - ) - cmake_src_configure -} - -src_install() { - cmake_src_install - - # Save about 15MB of useless headers - rm -r "${ED}/usr/include/tg_owt/rtc_base/third_party" || die - rm -r "${ED}/usr/include/tg_owt/common_audio/third_party" || die - rm -r "${ED}/usr/include/tg_owt/modules/third_party" || die - rm -r "${ED}/usr/include/tg_owt/third_party" || die - - # Install a few headers anyway, as required by net-im/telegram-desktop... - local headers=( - third_party/libyuv/include - rtc_base/third_party/sigslot - rtc_base/third_party/base64 - ) - for dir in "${headers[@]}"; do - pushd "${S}/src/${dir}" > /dev/null || die - find -type f -name "*.h" -exec install -Dm644 '{}' "${ED}/usr/include/tg_owt/${dir}/{}" \; || die - popd > /dev/null || die - done -} diff --git a/media-libs/tg_owt/tg_owt-0_pre20240804-r1.ebuild b/media-libs/tg_owt/tg_owt-0_pre20241202.ebuild index 9b909cbcc72a..69302ac9c15e 100644 --- a/media-libs/tg_owt/tg_owt-0_pre20240804-r1.ebuild +++ b/media-libs/tg_owt/tg_owt-0_pre20241202.ebuild @@ -1,4 +1,4 @@ -# Copyright 2020-2024 Gentoo Authors +# Copyright 2020-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,7 +8,7 @@ inherit cmake flag-o-matic DESCRIPTION="WebRTC build for Telegram" HOMEPAGE="https://github.com/desktop-app/tg_owt" -TG_OWT_COMMIT="dc17143230b5519f3c1a8da0079e00566bd4c5a8" +TG_OWT_COMMIT="be39b8c8d0db1f377118f813f0c4bd331d341d5e" LIBYUV_COMMIT="04821d1e7d60845525e8db55c7bcd41ef5be9406" LIBSRTP_COMMIT="a566a9cfcd619e8327784aa7cff4a1276dc1e895" SRC_URI="https://github.com/desktop-app/tg_owt/archive/${TG_OWT_COMMIT}.tar.gz -> ${P}.tar.gz @@ -44,7 +44,7 @@ RDEPEND=" dev-libs/crc32c screencast? ( dev-libs/glib:2 - media-video/pipewire:= + >=media-video/pipewire-1.0.7:= ) X? ( x11-libs/libX11 diff --git a/media-libs/tiff-compat/files/tiff-4.4.0-C23.patch b/media-libs/tiff-compat/files/tiff-4.4.0-C23.patch new file mode 100644 index 000000000000..81e5740c8215 --- /dev/null +++ b/media-libs/tiff-compat/files/tiff-4.4.0-C23.patch @@ -0,0 +1,52 @@ +https://bugs.gentoo.org/910693 +Fix implicit declarations by regenerating configure, +Fix config header templates, manually define _GNU_SOURCE when +correct header was not cooperating +--- a/configure.ac ++++ b/configure.ac +@@ -29,6 +29,7 @@ + AC_CONFIG_AUX_DIR(config) + AC_CONFIG_MACRO_DIR(m4) + AC_LANG(C) ++AC_USE_SYSTEM_EXTENSIONS + + dnl Compute the canonical host (run-time) system type variable + AC_CANONICAL_HOST +--- a/libtiff/tif_config.h.in ++++ b/libtiff/tif_config.h.in +@@ -139,6 +139,11 @@ + /* Support zstd compression */ + #undef ZSTD_SUPPORT + ++/* Enable GNU extensions on systems that have them. */ ++#ifndef _GNU_SOURCE ++# undef _GNU_SOURCE ++#endif ++ + /* Enable large inode numbers on Mac OS X 10.5. */ + #ifndef _DARWIN_USE_64_BIT_INODE + # define _DARWIN_USE_64_BIT_INODE 1 +--- a/libtiff/tiffconf.h.in ++++ b/libtiff/tiffconf.h.in +@@ -90,6 +90,11 @@ + /* Support Deflate compression */ + #undef ZIP_SUPPORT + ++/* Enable GNU extensions on systems that have them. */ ++#ifndef _GNU_SOURCE ++# undef _GNU_SOURCE ++#endif ++ + /* Support libdeflate enhanced compression */ + #undef LIBDEFLATE_SUPPORT + +--- a/libtiff/mkg3states.c ++++ b/libtiff/mkg3states.c +@@ -27,6 +27,7 @@ + * in Frank Cringle's viewfax program; + * Copyright (C) 1990, 1995 Frank D. Cringle. + */ ++#define _GNU_SOURCE 1 + #include "tif_config.h" + #include "libport.h" + diff --git a/media-libs/tiff-compat/tiff-compat-4.4.0-r1.ebuild b/media-libs/tiff-compat/tiff-compat-4.4.0-r1.ebuild index 432e66e9c98e..28b15239b12b 100644 --- a/media-libs/tiff-compat/tiff-compat-4.4.0-r1.ebuild +++ b/media-libs/tiff-compat/tiff-compat-4.4.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -32,13 +32,13 @@ RESTRICT="!test? ( test )" REQUIRED_USE="test? ( jpeg )" RDEPEND=" + !=media-libs/tiff-4.4* jbig? ( >=media-libs/jbigkit-2.1:=[${MULTILIB_USEDEP}] ) jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) webp? ( media-libs/libwebp:=[${MULTILIB_USEDEP}] ) zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) zstd? ( >=app-arch/zstd-1.3.7-r1:=[${MULTILIB_USEDEP}] ) - !=media-libs/tiff-4.4* " DEPEND="${RDEPEND}" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-evenrouault )" diff --git a/media-libs/tiff-compat/tiff-compat-4.4.0-r2.ebuild b/media-libs/tiff-compat/tiff-compat-4.4.0-r2.ebuild new file mode 100644 index 000000000000..81c17cfbb269 --- /dev/null +++ b/media-libs/tiff-compat/tiff-compat-4.4.0-r2.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +QA_PKGCONFIG_VERSION="$(ver_cut 1-3)" + +# Release signer can vary per version but not clear if others will be doing +# them in future, so gone with Even Rouault for now as he does other geosci +# stuff too like PROJ, GDAL. Previous release manager of TIFF was +# GraphicsMagick maintainer Bob Friesenhahn. Please be careful when verifying +# who made releases. +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rouault.asc +inherit multilib-minimal verify-sig flag-o-matic autotools + +MY_P="${P/_rc/rc}" +DESCRIPTION="Tag Image File Format (TIFF) library (compat package for libtiff.so.5)" +HOMEPAGE="http://libtiff.maptools.org" +SRC_URI="https://download.osgeo.org/libtiff/${MY_P/-compat}.tar.xz" +SRC_URI+=" verify-sig? ( https://download.osgeo.org/libtiff/${MY_P/-compat}.tar.xz.sig )" +S="${WORKDIR}/${PN/-compat}-$(ver_cut 1-3)" + +LICENSE="libtiff" +SLOT="4" +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi +IUSE="+cxx jbig jpeg lzma test webp zlib zstd" +RESTRICT="!test? ( test )" + +# bug #483132 +REQUIRED_USE="test? ( jpeg )" + +RDEPEND=" + !=media-libs/tiff-4.4* + jbig? ( >=media-libs/jbigkit-2.1:=[${MULTILIB_USEDEP}] ) + jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) + webp? ( media-libs/libwebp:=[${MULTILIB_USEDEP}] ) + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) + zstd? ( >=app-arch/zstd-1.3.7-r1:=[${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND}" +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-evenrouault )" + +# Easier to keep this even though we remove the headers to avoid +# triggering multilib header check +MULTILIB_WRAPPED_HEADERS=( + /usr/include/tiffconf.h +) + +PATCHES=( + "${FILESDIR}"/${PN/-compat}-4.4.0_rc1-skip-thumbnail-test.patch + "${FILESDIR}"/${P/-compat}-hylafaxplus-regression.patch + "${FILESDIR}"/${P/-compat}-C23.patch +) + +src_prepare() { + default + + # Added to fix cross-compilation and bug #910693 + eautoreconf +} + +multilib_src_configure() { + append-lfs-flags + + local myeconfargs=( + --without-x + $(use_enable cxx) + $(use_enable jbig) + $(use_enable jpeg) + $(use_enable lzma) + $(use_enable webp) + $(use_enable zlib) + $(use_enable zstd) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + + sed -i \ + -e 's/ tools//' \ + -e 's/ contrib//' \ + -e 's/ man//' \ + -e 's/ html//' \ + Makefile || die +} + +multilib_src_install_all() { + rm -r "${ED}"/usr/include || die + rm -r "${ED}"/usr/share || die + rm -r "${ED}"/usr/lib*/pkgconfig || die + rm -r "${ED}"/usr/lib*/*.so || die + + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/media-libs/urt/Manifest b/media-libs/urt/Manifest index 313af4d3c8ea..7cad775a200e 100644 --- a/media-libs/urt/Manifest +++ b/media-libs/urt/Manifest @@ -1 +1,2 @@ DIST urt-3.1b.tar.Z 1016405 BLAKE2B 68742773591e2ae28702efb4286939c4000d32edd93110548abc25ab62bfa85e36354f20de6aa74c805ea1c4c8dfa23219c9e6fb08e1c73d90d2625404583aa1 SHA512 6c9070cd106f1d696d22f862cc1c4e10325fafc7bae51e8bb1fb98f6bf8babe21a133e21b3acc0c11cf1b28a23123c8ee7bb064c9d86301b14a1c217fbe1a12d +DIST urt-3.2_rc1_p20250101.tar.gz 1079866 BLAKE2B 519760a11b10d1cad1d2f9ba6b0de3918000ad9a6fa0a3edbf0382d8bdf99248aa12e89aec09bbe134db0138f8eb1326bad06a9c6ad581766b5f45bee3152989 SHA512 347fabddc2ff14f9313d2ed2ad7902b0fdc2108e1cb0d472f4040c2ab42c171360be390833359d813ad03bf4ea94537fe481a1bd5facfd9b72b2178622771e66 diff --git a/media-libs/urt/files/urt-3.2_rc1_p20250101-ar.patch b/media-libs/urt/files/urt-3.2_rc1_p20250101-ar.patch new file mode 100644 index 000000000000..1740530cf1c4 --- /dev/null +++ b/media-libs/urt/files/urt-3.2_rc1_p20250101-ar.patch @@ -0,0 +1,41 @@ +https://bugs.gentoo.org/947316 + +--- a/lib/makefile.src ++++ b/lib/makefile.src +@@ -50,8 +50,8 @@ + echo cp $(LIBNAME) $(DEST)/ ; \ + cp $(LIBNAME)* $(DEST)/ ; \ + if test x$(RANLIB) != x ; then \ +- echo ranlib $(DEST)/$(STATIC) ; \ +- ranlib $(DEST)/$(STATIC) ; \ ++ echo $(RANLIB) $(DEST)/$(STATIC) ; \ ++ $(RANLIB) $(DEST)/$(STATIC) ; \ + else \ + true ; \ + fi ; \ +@@ -60,11 +60,11 @@ + cp $(LIBNAME)* $(DEST)/debug/ ; \ + if test x$(RANLIB) != x ; then \ + cp $(LIBNAME) $(DEST)/debug/$(STATIC) ; \ +- echo ranlib $(DEST)/debug/$(STATIC) ; \ ++ echo $(RANLIB) $(DEST)/debug/$(STATIC) ; \ + else \ + true ; \ + fi ; \ +- ranlib $(DEST)/debug/$(STATIC) ; \ ++ $(RANLIB) $(DEST)/debug/$(STATIC) ; \ + else \ + true ; \ + fi ; \ +@@ -82,9 +82,9 @@ + touch buildshared + + buildlib: $(OBJS) +- ar rcs $(STATIC) $(OBJS) ++ $(AR) rcs $(STATIC) $(OBJS) + #ifndef NO_RANLIB +- ranlib $(STATIC) ++ $(RANLIB) $(STATIC) + #endif + touch buildlib + diff --git a/media-libs/urt/files/urt-3.2_rc1_p20250101-respect-ldflags.patch b/media-libs/urt/files/urt-3.2_rc1_p20250101-respect-ldflags.patch new file mode 100644 index 000000000000..94cf20e2a414 --- /dev/null +++ b/media-libs/urt/files/urt-3.2_rc1_p20250101-respect-ldflags.patch @@ -0,0 +1,11 @@ +--- a/get/getx11/makefile.src ++++ b/get/getx11/makefile.src +@@ -50,7 +50,7 @@ + + # getx11 - read RLE file to X11 display + getx11.out: $(X_O_FILES) +- ${CC} $(CFLAGS) $(X_O_FILES) -o getx11.new $(LIBS) ++ ${CC} $(CFLAGS) $(X_O_FILES) -o getx11.new $(LDFLAGS) $(LIBS) + mv getx11.new getx11.out + + # Make prototypes.h and fn_decls.h. Only happens if HAVE_CPROTO is defined. diff --git a/media-libs/urt/metadata.xml b/media-libs/urt/metadata.xml index 0962f154ba65..93be572a5696 100644 --- a/media-libs/urt/metadata.xml +++ b/media-libs/urt/metadata.xml @@ -5,4 +5,7 @@ <use> <flag name="tools">Install tools</flag> </use> + <upstream> + <remote-id type="github">sarnold/urt</remote-id> + </upstream> </pkgmetadata> diff --git a/media-libs/urt/urt-3.2_rc1_p20250101.ebuild b/media-libs/urt/urt-3.2_rc1_p20250101.ebuild new file mode 100644 index 000000000000..ace5d4c90998 --- /dev/null +++ b/media-libs/urt/urt-3.2_rc1_p20250101.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +COMMIT_ID=e5a6997b9d494f3010b2c32b1e3f0660ec7991ac +DESCRIPTION="the Utah Raster Toolkit is a library for dealing with raster images" +HOMEPAGE="https://sarnold.github.io/urt/ https://github.com/sarnold/urt" +SRC_URI="https://github.com/sarnold/urt/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${COMMIT_ID}" + +LICENSE="GPL-2 gif? ( free-noncomm )" +SLOT="0/3.1.0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" +IUSE="gif postscript static-libs tiff tools X" + +RDEPEND=" + gif? ( media-libs/giflib ) + postscript? ( app-text/ghostscript-gpl ) + tiff? ( media-libs/tiff:= ) + X? ( x11-libs/libXext ) +" + +DEPEND=" + ${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${P}-respect-ldflags.patch + "${FILESDIR}"/${P}-ar.patch +) + +urt_config() { + use $1 && echo "#define $2" || echo "##define $2" +} + +src_prepare() { + rm bin/README || die + + default +} + +src_configure() { + append-cflags -fPIC + + sed -i -e '/^CFLAGS/s: -O2 : :' makefile.hdr || die + + cat >> config/gentoo <<-EOF + $(urt_config X X11) + $(urt_config gif GIF) + $(urt_config postscript POSTSCRIPT) + $(urt_config tiff TIFF) + ExtraCFLAGS = ${CFLAGS} + MFLAGS = ${MAKEOPTS} + EOF + + edob -m "Configuring" ./Configure config/gentoo +} + +src_compile() { + emake CC="$(tc-getCC)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" +} + +src_install() { + mkdir -p man-dest/man{1,3,5} + # this just installs it into some local dirs + emake install + + use tools && dobin bin/* + + use static-libs && dolib.a lib/librle.a + + dolib.so lib/librle.so + dolib.so lib/librle.so.3 + dolib.so lib/librle.so.3.1.0 + dosym librle.so /usr/$(get_libdir)/librle-0.0.0.so + + insinto /usr/include + doins include/rle*.h + doman man-dest/man?/*.[135] + dodoc *-changes CHANGES* README* blurb +} diff --git a/media-libs/vamp-plugin-sdk/vamp-plugin-sdk-2.10.ebuild b/media-libs/vamp-plugin-sdk/vamp-plugin-sdk-2.10.ebuild index 3e006595e3cb..5876e17ef719 100644 --- a/media-libs/vamp-plugin-sdk/vamp-plugin-sdk-2.10.ebuild +++ b/media-libs/vamp-plugin-sdk/vamp-plugin-sdk-2.10.ebuild @@ -29,6 +29,8 @@ src_prepare() { } multilib_src_configure() { + MAKEOPTS+=" -j1" # bug #943866 + # multilib for default search paths sed -i -e "s:/usr/lib/vamp:${EPREFIX}/usr/$(get_libdir)/vamp:" \ src/vamp-hostsdk/PluginHostAdapter.cpp || die diff --git a/media-libs/vigra/Manifest b/media-libs/vigra/Manifest index 02889381064a..9db722bf27a6 100644 --- a/media-libs/vigra/Manifest +++ b/media-libs/vigra/Manifest @@ -1 +1,2 @@ DIST vigra-1.11.2_p20240505.tar.gz 34219390 BLAKE2B ad92dc6d21acb52c1aa587a4fbe051fb8416ab8f0b5a7560a6d720f38e73d467c9cebb3940cede83827e7657e30438e4d0d52207cffaf208be76f4ff8cdebca9 SHA512 fa51fc456046989e8bf1225d8ae4bac9ef77b24b9343e657c327f817f3a1b622c645ef22772a6c14c30f7e86ec5ab08df8592ec7b21727146d0f775c010cc9d5 +DIST vigra-1.12.1.tar.gz 34211133 BLAKE2B 177239a42e2052b93d414214a8119712354a939e01c2e8eeaac7ab63135eed44b4e66855a86c9e26565ca53c2e1686852ca44d6fe3924d92fe352756ccaad699 SHA512 745995f71cd32173f937083976d7894a37189c005d1a870c76f25be58aabf163ad10d1b562f65de4eb4adb1addc7c2951823c96e0391ba02f0c5ddcf569f2ee4 diff --git a/media-libs/vigra/files/vigra-1.12.1-clang19.patch b/media-libs/vigra/files/vigra-1.12.1-clang19.patch new file mode 100644 index 000000000000..aae20e93be83 --- /dev/null +++ b/media-libs/vigra/files/vigra-1.12.1-clang19.patch @@ -0,0 +1,27 @@ +https://github.com/ukoethe/vigra/issues/591 +https://github.com/msys2/MINGW-packages/commit/bd697fd68cd657cfc3c746a290335b1faaf5371b + +--- a/include/vigra/multi_iterator_coupled.hxx ++++ b/include/vigra/multi_iterator_coupled.hxx +@@ -490,7 +490,7 @@ + CoupledScanOrderIterator operator--(int) + { + CoupledScanOrderIterator res(*this); +- --this; ++ --(*this); + return res; + } + +--- a/include/vigra/random_access_set.hxx ++++ b/include/vigra/random_access_set.hxx +@@ -400,8 +400,8 @@ + const typename RandomAccessSet<Key,Compare,Alloc>::value_type& value + ) + { +- if((position == begin() || this->operator()(*(position-1),value)) +- && (position == end() || this->operator()(value, *position))) { ++ if((position == begin() || key_comp()(*(position-1),value)) ++ && (position == end() || key_comp()(value, *position))) { + return vector_.insert(position, value); + } + return insert(value).first; diff --git a/media-libs/vigra/files/vigra-1.12.1-python311.patch b/media-libs/vigra/files/vigra-1.12.1-python311.patch new file mode 100644 index 000000000000..e3da95c94ea0 --- /dev/null +++ b/media-libs/vigra/files/vigra-1.12.1-python311.patch @@ -0,0 +1,37 @@ +https://github.com/ukoethe/vigra/issues/529 +https://github.com/ukoethe/vigra/pull/594 + +From 5c2c21f7075836cdab84457632480a1cfabcec0f Mon Sep 17 00:00:00 2001 +From: Alfred Wingate <parona@protonmail.com> +Date: Wed, 4 Dec 2024 23:36:44 +0200 +Subject: [PATCH] Move away from inline global regex flag + +Fixes: https://github.com/ukoethe/vigra/issues/529 +Signed-off-by: Alfred Wingate <parona@protonmail.com> +--- a/docsrc/post.py ++++ b/docsrc/post.py +@@ -85,18 +85,18 @@ headingSummary = re.compile(r'''(<!-- Generated by Doxygen .+ --> + </div> + <div class="header">) + <div class="summary"> +-(?s).*?</div>''') ++(?s:.)*?</div>''') + + # tested with doxygen 1.8.2 + headingSummary2 = re.compile(r'''(<!-- Generated by Doxygen .+ --> + </div><!-- top --> + <div class="header">) + <div class="summary"> +-(?s).*?</div>''') ++(?s:.)*?</div>''') + + # tested with doxygen 1.7.5.1 + headingNavpath = re.compile(r'''(<!-- Generated by Doxygen .+ -->) +- <div id="nav-path" class="navpath">(?s).*?</div>''') ++ <div id="nav-path" class="navpath">(?s:.)*?</div>''') + + # tested with doxygen 1.8.2 + headingNavpath2 = re.compile(r'''(<!-- Generated by Doxygen .+ -->) +-- +2.47.1 + diff --git a/media-libs/vigra/vigra-1.12.1.ebuild b/media-libs/vigra/vigra-1.12.1.ebuild new file mode 100644 index 000000000000..80d53e24ab51 --- /dev/null +++ b/media-libs/vigra/vigra-1.12.1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_REQ_USE="threads(+),xml(+)" + +inherit cmake flag-o-matic python-single-r1 + +DESCRIPTION="C++ computer vision library emphasizing customizable algorithms and structures" +HOMEPAGE="https://ukoethe.github.io/vigra/" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ukoethe/vigra.git" + inherit git-r3 +else + if [[ ${PV} == *_p* ]] ; then + VIGRA_COMMIT="4db795574a471bf1d94d258361f1ef536dd87ac1" + SRC_URI=" + https://github.com/ukoethe/vigra/archive/${VIGRA_COMMIT}.tar.gz + -> ${P}.tar.gz + " + S="${WORKDIR}"/${PN}-${VIGRA_COMMIT} + else + SRC_URI=" + https://github.com/ukoethe/vigra/archive/refs/tags/Version-$(ver_rs 1- -).tar.gz + -> ${P}.tar.gz + " + S="${WORKDIR}/${PN}-Version-$(ver_rs 1- -)" + fi + + KEYWORDS="amd64 arm64 ~sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="doc +fftw +hdf5 +jpeg mpi openexr +png test +tiff +zlib" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + test? ( hdf5 fftw ) +" +RESTRICT="!test? ( test )" + +DEPEND=" + fftw? ( sci-libs/fftw:3.0= ) + hdf5? ( >=sci-libs/hdf5-1.8.0:=[mpi=] ) + jpeg? ( media-libs/libjpeg-turbo:= ) + openexr? ( + >=dev-libs/imath-3.1.4-r2:= + >=media-libs/openexr-3:0= + ) + png? ( media-libs/libpng:0= ) + tiff? ( media-libs/tiff:= ) + zlib? ( sys-libs/zlib ) +" +# Python is needed as a runtime dep of installed vigra-config +RDEPEND=" + ${PYTHON_DEPS} + ${DEPEND} +" +BDEPEND=" + doc? ( + app-text/doxygen + dev-texlive/texlive-latex + ) +" + +PATCHES=( + # TODO: upstream + "${FILESDIR}/${PN}-1.11.1-lib_suffix.patch" + "${FILESDIR}/${PN}-1.11.1-cmake-module-dir.patch" + + "${FILESDIR}/${PN}-1.12.1-clang19.patch" + "${FILESDIR}/${PN}-1.12.1-python311.patch" +) + +src_prepare() { + cmake_src_prepare + + sed -i -e '/ADD_DEPENDENCIES(PACKAGE_SRC_TAR/d' CMakeLists.txt || die + + sed -i -e 's|@DOCDIR@|@CMAKE_INSTALL_PREFIX@/@DOCINSTALL@|' config/vigra-config.in || die +} + +src_configure() { + # Floating point error increases with -mfma leading to test failures + append-flags -ffp-contract=off + + local mycmakeargs=( + -DAUTOEXEC_TESTS=OFF + -DAUTOBUILD_TESTS=$(usex test) + -DDOCINSTALL="share/doc/${PF}/html" + -DWITH_HDF5=$(usex hdf5) + -DWITH_OPENEXR=$(usex openexr) + -DWITH_VALGRIND=OFF # only used for tests + -DWITH_VIGRANUMPY=OFF + -DBUILD_TESTS=$(usex test) + -DBUILD_DOCS=$(usex doc) + $(cmake_use_find_package fftw FFTW3) + $(cmake_use_find_package fftw FFTW3F) + $(cmake_use_find_package jpeg JPEG) + $(cmake_use_find_package png PNG) + $(cmake_use_find_package tiff TIFF) + $(cmake_use_find_package zlib ZLIB) + ) + + use doc && mycmakeargs+=( -DPython_EXECUTABLE=${PYTHON} ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_build doc_cpp +} + +src_install() { + cmake_src_install + einstalldocs + + python_fix_shebang "${ED}"/usr/bin/vigra-config +} diff --git a/media-libs/vigra/vigra-9999.ebuild b/media-libs/vigra/vigra-9999.ebuild index 09cc7b4ffdc8..490176b71a09 100644 --- a/media-libs/vigra/vigra-9999.ebuild +++ b/media-libs/vigra/vigra-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) PYTHON_REQ_USE="threads(+),xml(+)" inherit cmake flag-o-matic python-single-r1 @@ -12,15 +12,22 @@ DESCRIPTION="C++ computer vision library emphasizing customizable algorithms and HOMEPAGE="https://ukoethe.github.io/vigra/" if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/ukoethe/${PN}.git" + EGIT_REPO_URI="https://github.com/ukoethe/vigra.git" inherit git-r3 else if [[ ${PV} == *_p* ]] ; then VIGRA_COMMIT="4db795574a471bf1d94d258361f1ef536dd87ac1" - SRC_URI="https://github.com/ukoethe/vigra/archive/${VIGRA_COMMIT}.tar.gz -> ${P}.tar.gz" + SRC_URI=" + https://github.com/ukoethe/vigra/archive/${VIGRA_COMMIT}.tar.gz + -> ${P}.tar.gz + " S="${WORKDIR}"/${PN}-${VIGRA_COMMIT} else - SRC_URI="https://github.com/ukoethe/${PN}/releases/download/Version-${PV//\./-}/${P}-src.tar.gz" + SRC_URI=" + https://github.com/ukoethe/vigra/archive/refs/tags/Version-$(ver_rs 1- -).tar.gz + -> ${P}.tar.gz + " + S="${WORKDIR}/${PN}-Version-$(ver_rs 1- -)" fi KEYWORDS="~amd64 ~arm64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" @@ -28,19 +35,14 @@ fi LICENSE="MIT" SLOT="0" -IUSE="+fftw +hdf5 +jpeg mpi openexr +png test +tiff +zlib" +IUSE="doc +fftw +hdf5 +jpeg mpi openexr +png test +tiff +zlib" REQUIRED_USE=" ${PYTHON_REQUIRED_USE} test? ( hdf5 fftw ) " -BDEPEND=" - test? ( - $(python_gen_cond_dep ' - dev-python/pytest[${PYTHON_USEDEP}] - ') - ) -" +RESTRICT="!test? ( test )" + DEPEND=" fftw? ( sci-libs/fftw:3.0= ) hdf5? ( >=sci-libs/hdf5-1.8.0:=[mpi=] ) @@ -58,63 +60,65 @@ RDEPEND=" ${PYTHON_DEPS} ${DEPEND} " - -# Severely broken, also disabled in Fedora, bugs #390447, #653442 -RESTRICT="test" +BDEPEND=" + doc? ( + app-text/doxygen + dev-texlive/texlive-latex + ) +" PATCHES=( # TODO: upstream "${FILESDIR}/${PN}-1.11.1-lib_suffix.patch" "${FILESDIR}/${PN}-1.11.1-cmake-module-dir.patch" + + "${FILESDIR}/${PN}-1.12.1-clang19.patch" + "${FILESDIR}/${PN}-1.12.1-python311.patch" ) src_prepare() { - vigra_disable() { - if ! use ${1}; then - sed -e "/^VIGRA_FIND_PACKAGE.*${2:-$1}/Is/^/#disabled by USE=${1}: /" \ - -i CMakeLists.txt || die "failed to disable ${1}" - fi - } - cmake_src_prepare - vigra_disable fftw fftw3 - vigra_disable fftw fftw3f - vigra_disable jpeg - vigra_disable png - vigra_disable tiff - vigra_disable zlib - - # Don't use python_fix_shebang because we can't put this behind USE="python" - sed -i -e '/env/s:python:python3:' config/vigra-config.in || die - - sed -i -e '/ADD_DEPENDENCIES(PACKAGE_SRC_TAR doc_cpp)/d' CMakeLists.txt || die + sed -i -e '/ADD_DEPENDENCIES(PACKAGE_SRC_TAR/d' CMakeLists.txt || die - cmake_comment_add_subdirectory docsrc - - if ! use test; then - cmake_comment_add_subdirectory test - cmake_run_in vigranumpy cmake_comment_add_subdirectory test - fi + sed -i -e 's|@DOCDIR@|@CMAKE_INSTALL_PREFIX@/@DOCINSTALL@|' config/vigra-config.in || die } src_configure() { - # Needed for now ("fix" compatibility with >=sci-libs/hdf5-1.12) - # bug #808731 - use hdf5 && append-cppflags -DH5_USE_110_API + # Floating point error increases with -mfma leading to test failures + append-flags -ffp-contract=off local mycmakeargs=( -DAUTOEXEC_TESTS=OFF + -DAUTOBUILD_TESTS=$(usex test) -DDOCINSTALL="share/doc/${PF}/html" -DWITH_HDF5=$(usex hdf5) -DWITH_OPENEXR=$(usex openexr) -DWITH_VALGRIND=OFF # only used for tests -DWITH_VIGRANUMPY=OFF + -DBUILD_TESTS=$(usex test) + -DBUILD_DOCS=$(usex doc) + $(cmake_use_find_package fftw FFTW3) + $(cmake_use_find_package fftw FFTW3F) + $(cmake_use_find_package jpeg JPEG) + $(cmake_use_find_package png PNG) + $(cmake_use_find_package tiff TIFF) + $(cmake_use_find_package zlib ZLIB) ) + use doc && mycmakeargs+=( -DPython_EXECUTABLE=${PYTHON} ) + cmake_src_configure } -src_test() { - PYTHONPATH="${BUILD_DIR}/vigranumpy/vigra" cmake_src_test +src_compile() { + cmake_src_compile + use doc && cmake_build doc_cpp +} + +src_install() { + cmake_src_install + einstalldocs + + python_fix_shebang "${ED}"/usr/bin/vigra-config } diff --git a/media-libs/vips/Manifest b/media-libs/vips/Manifest index b186f246ff3a..1d6218a8637d 100644 --- a/media-libs/vips/Manifest +++ b/media-libs/vips/Manifest @@ -1,2 +1 @@ -DIST vips-8.15.2.tar.xz 18653840 BLAKE2B fa46d58d77ec835cbb7036764bcc40554a72c2d6a854adee31905d04cb189de131340f990b432293935bc8563236816d14fa45c08ba858de6b1be5ee3ea148ec SHA512 f746e4590f0105cb40dbb4ee35fe4b177acbf09d7fc4202f623812018030b9cfdfcbe585742724b35f40ef9b68717ebd015243f3db293086621d9eac3d89a5b2 -DIST vips-8.15.5.tar.xz 18652672 BLAKE2B bebd8078cb6cedffb4aee98aab17f62538439f81378b4953085ec0cd6e9ce2c6fb17831e77113980bc91c0ed4355d765c2008232b1cf64246467a9cd936e2245 SHA512 d8f87292fa395e108f36769accc64b67ea49aadbea4a6bd97fc457f340c0f78c0365a43ae4b14ac5f154e696a8b2abc100078a8c5ac58aae2dd1b04347fbf4d8 +DIST vips-8.16.0.tar.xz 29542092 BLAKE2B d285e27858b3c2d68edff4acad3e8e7744708071e5e2eb637bcabc66af9226ed72b2a6c72cd9a52e171e37e36c6c4429d3efacd9df7f67ba317f9efcc26e78bb SHA512 4035c6c08a19cb281ec0d901f8d0c2077e3312a79c1191b5b070aa411e5de0176d7d4e246da8f40c50cd93cf89433ac330b3ee618c1a996a79d58d1d66ec57f4 diff --git a/media-libs/vips/vips-8.15.2.ebuild b/media-libs/vips/vips-8.15.2.ebuild deleted file mode 100644 index 317bef1eb0a8..000000000000 --- a/media-libs/vips/vips-8.15.2.ebuild +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright 2023-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..13} ) -inherit flag-o-matic meson python-single-r1 toolchain-funcs vala - -MY_PV=${PV}a # cleanup next bump - -DESCRIPTION="VIPS Image Processing Library" -HOMEPAGE="https://libvips.github.io/libvips/" -SRC_URI="https://github.com/libvips/libvips/releases/download/v${MY_PV}/${P}.tar.xz" - -LICENSE="LGPL-2.1+ MIT" -SLOT="0/42" # soname -KEYWORDS="amd64 ~arm64 ~x86" -IUSE=" - archive deprecated doc exif fftw fits fontconfig graphicsmagick - gtk-doc heif +highway imagemagick imagequant +introspection +jpeg - jpeg2k jpegxl lcms matio openexr orc pango pdf +png python svg - test tiff vala webp -" -REQUIRED_USE=" - fontconfig? ( pango ) - graphicsmagick? ( imagemagick ) - python? ( ${PYTHON_REQUIRED_USE} ) - test? ( jpeg png webp ) - vala? ( introspection ) -" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-libs/glib:2 - dev-libs/expat - virtual/libintl - archive? ( app-arch/libarchive:= ) - exif? ( media-libs/libexif ) - fftw? ( sci-libs/fftw:3.0= ) - fits? ( sci-libs/cfitsio:= ) - fontconfig? ( media-libs/fontconfig ) - heif? ( media-libs/libheif:= ) - highway? ( >=dev-cpp/highway-1.0.5 ) - !highway? ( - orc? ( dev-lang/orc ) - ) - imagemagick? ( - graphicsmagick? ( media-gfx/graphicsmagick:= ) - !graphicsmagick? ( media-gfx/imagemagick:= ) - ) - imagequant? ( media-gfx/libimagequant ) - introspection? ( dev-libs/gobject-introspection ) - jpeg? ( media-libs/libjpeg-turbo:= ) - jpeg2k? ( media-libs/openjpeg:= ) - jpegxl? ( media-libs/libjxl:= ) - lcms? ( media-libs/lcms:2 ) - matio? ( sci-libs/matio:= ) - openexr? ( media-libs/openexr:= ) - pango? ( - x11-libs/cairo - x11-libs/pango - ) - pdf? ( - app-text/poppler[cairo] - x11-libs/cairo - ) - png? ( media-libs/libpng:= ) - python? ( - ${PYTHON_DEPS} - $(python_gen_cond_dep 'dev-python/pycairo[${PYTHON_USEDEP}]') - ) - svg? ( - gnome-base/librsvg:2 - sys-libs/zlib:= - x11-libs/cairo - ) - tiff? ( media-libs/tiff:= ) - webp? ( media-libs/libwebp:= ) -" -DEPEND=" - ${RDEPEND} - pango? ( x11-base/xorg-proto ) - pdf? ( x11-base/xorg-proto ) - svg? ( x11-base/xorg-proto ) - test? ( - tiff? ( media-libs/tiff[jpeg] ) - ) -" -BDEPEND=" - dev-util/glib-utils - sys-devel/gettext - doc? ( - app-text/doxygen - media-gfx/graphviz - ) - gtk-doc? ( dev-util/gtk-doc ) - python? ( ${PYTHON_DEPS} ) - vala? ( $(vala_depend) ) -" - -pkg_setup() { - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - use vala && vala_setup - - sed -i "s/'vips-doc'/'${PF}'/" cplusplus/meson.build || die - - sed -i "/subdir('fuzz')/d" meson.build || die -} - -src_configure() { - # workaround for bug in lld (bug #921728) - tc-ld-is-lld && filter-lto - - local emesonargs=( - $(meson_use deprecated) - $(meson_use doc doxygen) - -Dexamples=false - $(meson_use gtk-doc gtk_doc) - $(meson_use vala vapi) - -Dcgif=disabled # not packaged, and not used to view gif (only saving) - $(meson_feature archive) - $(meson_feature exif) - $(meson_feature fftw) - $(meson_feature fits cfitsio) - $(meson_feature fontconfig) - $(meson_feature heif) - $(meson_feature highway) - $(meson_feature imagemagick magick) - -Dmagick-package=$(usex graphicsmagick GraphicsMagick MagickCore) - $(meson_feature imagequant) - $(meson_feature introspection) - $(meson_feature jpeg) - $(meson_feature jpeg2k openjpeg) - $(meson_feature jpegxl jpeg-xl) - $(meson_feature lcms) - $(meson_feature matio) - -Dnifti=disabled # not packaged - $(meson_feature openexr) - -Dopenslide=disabled # not packaged - $(meson_feature orc) # no-op if USE=highway is set - $(meson_feature pango pangocairo) - -Dpdfium=disabled # not packaged, can use poppler instead - $(meson_feature png) - $(meson_feature pdf poppler) - -Dquantizr=disabled # not packaged, can use imagequant instead - -Dspng=disabled # not packaged, can use libpng instead - $(meson_feature svg rsvg) - $(meson_feature tiff) - $(meson_feature webp) - $(meson_feature svg zlib) # zlib is currently only used by svgload.c - ) - - meson_src_configure -} - -src_install() { - meson_src_install - - if use python; then - python_fix_shebang "${ED}"/usr/bin/vipsprofile - else - rm -- "${ED}"/usr/{bin/vipsprofile,share/man/man1/vipsprofile.1} || die - fi -} diff --git a/media-libs/vips/vips-8.15.5.ebuild b/media-libs/vips/vips-8.16.0.ebuild index d95b054a4b0f..96a0a1bdc164 100644 --- a/media-libs/vips/vips-8.15.5.ebuild +++ b/media-libs/vips/vips-8.16.0.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/libvips/libvips/releases/download/v${PV}/${P}.tar.xz LICENSE="LGPL-2.1+ MIT" SLOT="0/42" # soname -KEYWORDS="~amd64 ~arm64 ~x86" +KEYWORDS="amd64 ~arm64 ~x86" IUSE=" archive deprecated doc exif fftw fits fontconfig graphicsmagick gtk-doc heif +highway imagemagick imagequant +introspection +jpeg diff --git a/media-libs/vitamtp/metadata.xml b/media-libs/vitamtp/metadata.xml index d07ec95e54ab..05e9789d9789 100644 --- a/media-libs/vitamtp/metadata.xml +++ b/media-libs/vitamtp/metadata.xml @@ -1,10 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>mva@gentoo.org</email> - <name>Vadim Misbakh-Soloviov</name> - </maintainer> + <!-- maintainer-needed --> <upstream> <remote-id type="github">codestation/vitamtp</remote-id> </upstream> diff --git a/media-libs/vpl-gpu-rt/Manifest b/media-libs/vpl-gpu-rt/Manifest index 435902cce164..290d8e567b31 100644 --- a/media-libs/vpl-gpu-rt/Manifest +++ b/media-libs/vpl-gpu-rt/Manifest @@ -1,3 +1,3 @@ -DIST vpl-gpu-rt-24.2.5.tar.gz 9063523 BLAKE2B 1d993c5f8fc460323b3630af4068e49c8222c685288f32a3500d9bc646ef99ef1273854422d34831739bbe13750993a9f23b1a8e4ed827b28e0712422b06786f SHA512 a7aa37d27e4f2429634382d55074a014d96fa15ff2c5c40539f753888152f42dd46c9e5b0899021099091167f7a611016e79792ed8808935276adf34199113bf DIST vpl-gpu-rt-24.3.4.tar.gz 9193620 BLAKE2B 9a1804bdf4ce8624bf57d38a7f0f349770ac743b50dc513fa2569bf233aabf3972d8bbd0081e00dbf2dc6e5127cdc4372b68b3b65c9b44f0dce67b4f29f1991e SHA512 586094dc531ff4ca952f6682a7a6148d77bca0beaaff7a8411d942ca23bd1c4e70969d4354b3afe65af92fdb42816cd93fe757c4dc21b52bafde14346ac6296a DIST vpl-gpu-rt-24.4.2.tar.gz 9181545 BLAKE2B fb71d94710b4414a6f7c5eac9e194fdc24687f3250546dad91cb901f2e02322aa09d6b899b7e43038fbf199a46174a687f2f278184651db734933280d22e015a SHA512 800081e87a4d4d4fa161007ab2ea3031c096e82bb70d4e0aa784e9c4b9713a35bbb6343af3782525f702131f15063b757110f23a9e65adea67524fe776e6c05b +DIST vpl-gpu-rt-24.4.4.tar.gz 9185059 BLAKE2B 25438360274d456fd8fafe95a3bafe9fd2637a8a02422cb42acfd6948fafe8826d438fd1a431d7a0e95f035bd46b20f23a71585c6e3ca4d9faa0e07c02aae02b SHA512 bb5fa4213b5e142c798324e55aec6c4e3faf1d20afda3c35c4cf1d0050263b493df442961b55ff035430002dd180fc51f22b774d525a5b0c80e10e5fddb622da diff --git a/media-libs/vpl-gpu-rt/vpl-gpu-rt-24.2.5.ebuild b/media-libs/vpl-gpu-rt/vpl-gpu-rt-24.4.4.ebuild index 8eba3560671e..861810f2ef94 100644 --- a/media-libs/vpl-gpu-rt/vpl-gpu-rt-24.2.5.ebuild +++ b/media-libs/vpl-gpu-rt/vpl-gpu-rt-24.4.4.ebuild @@ -1,6 +1,9 @@ # Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# NOTE: please bump with the other parts of intel's media stack, listed below +# https://github.com/intel/vpl-gpu-rt/releases + EAPI=8 inherit cmake diff --git a/media-libs/vulkan-layers/Manifest b/media-libs/vulkan-layers/Manifest index e67afc60055f..0f185a008606 100644 --- a/media-libs/vulkan-layers/Manifest +++ b/media-libs/vulkan-layers/Manifest @@ -1,2 +1,3 @@ DIST vulkan-layers-1.3.290.0.tar.gz 5270142 BLAKE2B cdd22f6dd3b4da9433cba1c0d0ace16961bad2d61279efca3a0d7e5ad885766f25377036f3418ba3ed4e93beeff717b8b45fc772e9e2ad8750a8aac0aec731d2 SHA512 9f1d512b4bafbcef586789e933f903c383bbb9644d0a978a390da16e03ee2395c39c9c7b622e437e1c74880409df0a3cfc3a44b066cc0efeaee8d1edb9349d26 DIST vulkan-layers-1.3.296.0.tar.gz 5529046 BLAKE2B 42d321cff2cf7f6c0377b5deff298df60811026a4121dc3315610d53059e5db435494c138dfef5844d71e51536572bd8601dc496e88362f3c68ae0562680ac4f SHA512 457edee35a347456391c9b36bdf5d457f05210b6a8889d0623498582d3385bed474fbd7dae66406d20f70d96238ca752414eaa844b86b431ec7f8cf721d46d08 +DIST vulkan-layers-1.4.304.0.tar.gz 5940153 BLAKE2B 68e4f944383c4f4a574c83735c36b8521fbde4ecaf346cf99c1b925358b4178bacaca75bb5b5fb0684ed15255c331c777bdea44ae7a62def20998971f2d968d9 SHA512 1b13ab2d196b5a9c5e85d0d8679ba0ca03b0c0c18f456ac9fb4314cd283b834883d4a89421a32627e266022dbd1b6684955799906c874e8c325c404738d49a4c diff --git a/media-libs/vulkan-layers/vulkan-layers-1.3.296.0.ebuild b/media-libs/vulkan-layers/vulkan-layers-1.3.296.0.ebuild index 380708622738..c794a9e6533f 100644 --- a/media-libs/vulkan-layers/vulkan-layers-1.3.296.0.ebuild +++ b/media-libs/vulkan-layers/vulkan-layers-1.3.296.0.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]]; then inherit git-r3 else SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" + KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV} fi diff --git a/media-libs/vulkan-layers/vulkan-layers-1.4.304.0.ebuild b/media-libs/vulkan-layers/vulkan-layers-1.4.304.0.ebuild new file mode 100644 index 000000000000..fcdb3b98ed3a --- /dev/null +++ b/media-libs/vulkan-layers/vulkan-layers-1.4.304.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=Vulkan-ValidationLayers +PYTHON_COMPAT=( python3_{10..13} ) +inherit cmake-multilib python-any-r1 + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git" + EGIT_SUBMODULES=() + inherit git-r3 +else + SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV} +fi + +DESCRIPTION="Vulkan Validation Layers" +HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="wayland X" + +RDEPEND="~dev-util/spirv-tools-${PV}[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + >=dev-cpp/robin-hood-hashing-3.11.5-r2 + ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] + ~dev-util/spirv-headers-${PV} + ~dev-util/vulkan-headers-${PV} + ~dev-util/vulkan-utility-libraries-${PV}:=[${MULTILIB_USEDEP}] + wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] ) + X? ( + x11-libs/libX11:=[${MULTILIB_USEDEP}] + x11-libs/libXrandr:=[${MULTILIB_USEDEP}] + ) +" + +QA_SONAME="/usr/lib[^/]*/libVkLayer_khronos_validation.so" + +multilib_src_configure() { + local mycmakeargs=( + -DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG" + -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" + -DCMAKE_SKIP_RPATH=ON + -DBUILD_WERROR=OFF + -DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland) + -DBUILD_WSI_XCB_SUPPORT=$(usex X) + -DBUILD_WSI_XLIB_SUPPORT=$(usex X) + -DBUILD_TESTS=OFF + ) + cmake_src_configure +} + +multilib_src_install_all() { + find "${ED}" -type f -name \*.a -delete || die +} diff --git a/media-libs/vulkan-loader/Manifest b/media-libs/vulkan-loader/Manifest index a50167832bd5..7d20dc7cfee0 100644 --- a/media-libs/vulkan-loader/Manifest +++ b/media-libs/vulkan-loader/Manifest @@ -1,2 +1,3 @@ DIST vulkan-loader-1.3.290.0.tar.gz 1711013 BLAKE2B 72c55f07537df0e0ad0fedb4a3b913cde9b6d5038370c0e92bf15ad9ee881f5910842a1b5ee00d370b93341aefbd141414b77e7ac8823d101a861829cd9f338b SHA512 42ecf05e498f6422cea9d6ef70df5a936536524c1ff4d8cb391b5c55dd409082a6b2fc2eee5b395306c782ca32a7344faceef3e5385b382fb5a7e6564cfce4b5 DIST vulkan-loader-1.3.296.0.tar.gz 1719284 BLAKE2B 5e31e490b8e301ba7b8f0fe589e3056434701bac2897fe9b1b72651d7ac0268b9b63b72003664a30f20646c7c54987c75c765ab4e39fa994603ff56fea8be3fc SHA512 535b7f324348e9edf44ff6a6a6e9eabe6e3a4bfad79bef789d1dc0cbbe3de36b6495a05236323d155631b081b89c18bb8668c79d1f735b59fc85ebee555aa682 +DIST vulkan-loader-1.4.304.0.tar.gz 1756893 BLAKE2B e5b28b37a4d86ff803b228515e38d96ac078d878f02afdc236722ccd0afac85f254347a22a5a21c7cfe997d1a769eb2b561953a7097b6632c0c7026b950b99fb SHA512 331792dab0e321c8d9ca266a6675ae431ead7babcf59da6f8ca14bacbfb8933c2d0c65dd05545b90a972c8c2bb811ba2b68c88b641f0469850d440d791dae443 diff --git a/media-libs/vulkan-loader/vulkan-loader-1.3.296.0.ebuild b/media-libs/vulkan-loader/vulkan-loader-1.3.296.0.ebuild index 740caaba257c..87dd8a1239f1 100644 --- a/media-libs/vulkan-loader/vulkan-loader-1.3.296.0.ebuild +++ b/media-libs/vulkan-loader/vulkan-loader-1.3.296.0.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]]; then inherit git-r3 else SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" + KEYWORDS="amd64 ~arm ~arm64 ~loong ppc ppc64 ~riscv x86" S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV} fi diff --git a/media-libs/vulkan-loader/vulkan-loader-1.4.304.0.ebuild b/media-libs/vulkan-loader/vulkan-loader-1.4.304.0.ebuild new file mode 100644 index 000000000000..35b52db1dcba --- /dev/null +++ b/media-libs/vulkan-loader/vulkan-loader-1.4.304.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=Vulkan-Loader +inherit flag-o-matic cmake-multilib toolchain-funcs + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git" + EGIT_SUBMODULES=() + inherit git-r3 +else + SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV} +fi + +DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader" +HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Loader" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="layers wayland X" + +DEPEND=" + ~dev-util/vulkan-headers-${PV} + wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] ) + X? ( + x11-base/xorg-proto + x11-libs/libX11:=[${MULTILIB_USEDEP}] + x11-libs/libXrandr:=[${MULTILIB_USEDEP}] + ) +" +PDEPEND="layers? ( media-libs/vulkan-layers[${MULTILIB_USEDEP}] )" + +multilib_src_configure() { + # Integrated clang assembler doesn't work with x86 - Bug #698164 + if tc-is-clang && [[ ${ABI} == x86 ]]; then + append-cflags -fno-integrated-as + fi + + local mycmakeargs=( + -DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG" + -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" + -DCMAKE_SKIP_RPATH=ON + -DBUILD_TESTS=OFF + -DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland) + -DBUILD_WSI_XCB_SUPPORT=$(usex X) + -DBUILD_WSI_XLIB_SUPPORT=$(usex X) + -DVULKAN_HEADERS_INSTALL_DIR="${ESYSROOT}/usr" + ) + cmake_src_configure +} + +multilib_src_install() { + keepdir /etc/vulkan/icd.d + + cmake_src_install +} diff --git a/media-libs/webrtc-audio-processing/webrtc-audio-processing-0.3.1-r1.ebuild b/media-libs/webrtc-audio-processing/webrtc-audio-processing-0.3.1-r1.ebuild index 946115a3b322..56ebe65118cd 100644 --- a/media-libs/webrtc-audio-processing/webrtc-audio-processing-0.3.1-r1.ebuild +++ b/media-libs/webrtc-audio-processing/webrtc-audio-processing-0.3.1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ SRC_URI="https://freedesktop.org/software/pulseaudio/${PN}/${P}.tar.xz" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux" +KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux" IUSE="static-libs" DOCS=( AUTHORS NEWS README.md ) diff --git a/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild b/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild index fecb72dc5eec..112b1203df41 100644 --- a/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild +++ b/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.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=7 @@ -11,7 +11,7 @@ SRC_URI="https://freedesktop.org/software/pulseaudio/${PN}/${P}.tar.xz" LICENSE="BSD" SLOT="1" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux" +KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux" IUSE="cpu_flags_arm_neon" RDEPEND="dev-cpp/abseil-cpp:=[${MULTILIB_USEDEP}]" diff --git a/media-libs/woff2/woff2-1.0.2-r6.ebuild b/media-libs/woff2/woff2-1.0.2-r6.ebuild index f67dcb40e762..f30641db95aa 100644 --- a/media-libs/woff2/woff2-1.0.2-r6.ebuild +++ b/media-libs/woff2/woff2-1.0.2-r6.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" IUSE="" RDEPEND="app-arch/brotli:=" diff --git a/media-libs/x264/x264-0.0.20240513.ebuild b/media-libs/x264/x264-0.0.20240513.ebuild index d178c18c2f1e..e5aaa92caa73 100644 --- a/media-libs/x264/x264-0.0.20240513.ebuild +++ b/media-libs/x264/x264-0.0.20240513.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 @@ -16,7 +16,7 @@ if [[ ${PV} == 9999 ]]; then else X264_COMMIT="4613ac3c15fd75cebc4b9f65b7fb95e70a3acce1" SRC_URI="https://code.videolan.org/videolan/x264/-/archive/${X264_COMMIT}/x264-${X264_COMMIT}.tar.bz2 -> ${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" S="${WORKDIR}/${PN}-${X264_COMMIT}" fi @@ -32,6 +32,8 @@ DEPEND=" " RDEPEND="opencl? ( >=virtual/opencl-0-r3[${MULTILIB_USEDEP}] )" +# TODO: Consider implementing src_test which does what doc/regression_test says +# https://code.videolan.org/videolan/x264/-/blob/master/doc/regression_test.txt DOCS=( AUTHORS doc/{ratecontrol,regression_test,standards,threads,vui}.txt ) multilib_src_configure() { diff --git a/media-libs/x264/x264-9999.ebuild b/media-libs/x264/x264-9999.ebuild index d178c18c2f1e..84707422b110 100644 --- a/media-libs/x264/x264-9999.ebuild +++ b/media-libs/x264/x264-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 @@ -32,6 +32,8 @@ DEPEND=" " RDEPEND="opencl? ( >=virtual/opencl-0-r3[${MULTILIB_USEDEP}] )" +# TODO: Consider implementing src_test which does what doc/regression_test says +# https://code.videolan.org/videolan/x264/-/blob/master/doc/regression_test.txt DOCS=( AUTHORS doc/{ratecontrol,regression_test,standards,threads,vui}.txt ) multilib_src_configure() { diff --git a/media-libs/x265/Manifest b/media-libs/x265/Manifest index 2ea6fb64ce0a..6a038e209d17 100644 --- a/media-libs/x265/Manifest +++ b/media-libs/x265/Manifest @@ -1,2 +1 @@ DIST x265-3.6.tar.gz 1655889 BLAKE2B 2598421e2e21974998b0b20895dc7e12dbf6ebe1b6c23bb5a7710b575d3db773335cd1f0b3ef110b79cf4d6dd01e543e9807a0509963497edc25f617f80c29f3 SHA512 570429c3f0b560b2f946ac9baba97d66d7d6485e46eb695b17003b5913028f62d35822477633e911cd3ea60e6ce0ecc7d9d82de7d8257272f9ca7b43761438be -DIST x265_3.5.tar.gz 1537044 BLAKE2B 4fe15b762eda08a4379f69df622bef603fed784a237381d5c95876412020c113d053af829fa1eb66468462a6edc0de32dc597b1a98a63e9aa0250a47f4e76d05 SHA512 230e683239c3e262096ba96246c6f67229a1625d163f86647a411733bb1cf349685858aee3017bce818bb6992448d0abaa9241615a5b620561ce47ecb164f997 diff --git a/media-libs/x265/files/arm-r1.patch b/media-libs/x265/files/arm-r1.patch deleted file mode 100644 index 69aa3036eff3..000000000000 --- a/media-libs/x265/files/arm-r1.patch +++ /dev/null @@ -1,68 +0,0 @@ -More aliases for ARM. -Do not force CFLAGS for ARM. - ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -40,7 +40,7 @@ SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_ - # System architecture detection - string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC) - set(X86_ALIASES x86 i386 i686 x86_64 amd64) --set(ARM_ALIASES armv6l armv7l aarch64) -+set(ARM_ALIASES armv6l armv6l armv7l armv7a aarch64) - list(FIND X86_ALIASES "${SYSPROC}" X86MATCH) - list(FIND ARM_ALIASES "${SYSPROC}" ARMMATCH) - set(POWER_ALIASES ppc64 ppc64le) -@@ -239,11 +239,7 @@ if(GCC) - endif() - endif() - if(ARM AND CROSS_COMPILE_ARM) -- if(ARM64) -- set(ARM_ARGS -fPIC) -- else() -- set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC) -- endif() -+ set(ARM_ARGS -fPIC) - message(STATUS "cross compile arm") - elseif(ARM) - if(ARM64) -@@ -252,10 +248,10 @@ if(GCC) - else() - find_package(Neon) - if(CPU_HAS_NEON) -- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC) -+ set(ARM_ARGS -mfpu=neon -fPIC) - add_definitions(-DHAVE_NEON) - else() -- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm) -+ set(ARM_ARGS -fPIC) - endif() - endif() - endif() ---- a/dynamicHDR10/CMakeLists.txt -+++ b/dynamicHDR10/CMakeLists.txt -@@ -43,14 +43,14 @@ if(GCC) - endif() - endif() - if(ARM AND CROSS_COMPILE_ARM) -- set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC) -+ set(ARM_ARGS -fPIC) - elseif(ARM) - find_package(Neon) - if(CPU_HAS_NEON) -- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC) -+ set(ARM_ARGS -fPIC) - add_definitions(-DHAVE_NEON) - else() -- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm) -+ set(ARM_ARGS -fPIC) - endif() - endif() - add_definitions(${ARM_ARGS}) -@@ -150,4 +150,4 @@ set(BIN_INSTALL_DIR bin CACHE STRING "Install location of executables") - option(ENABLE_SHARED "Build shared library" OFF) - - install(FILES hdr10plus.h DESTINATION include) --endif() -\ No newline at end of file -+endif() - diff --git a/media-libs/x265/files/x265-3.3-ppc64.patch b/media-libs/x265/files/x265-3.3-ppc64.patch deleted file mode 100644 index 8e739e3fab1b..000000000000 --- a/media-libs/x265/files/x265-3.3-ppc64.patch +++ /dev/null @@ -1,15 +0,0 @@ -More complete ppc64 matches. - -Index: x265_2.2/source/CMakeLists.txt -=================================================================== ---- old/CMakeLists.txt -+++ new/CMakeLists.txt -@@ -44,7 +44,7 @@ set(X86_ALIASES x86 i386 i686 x86_64 amd - set(ARM_ALIASES armv6l armv6j armv7l armv7a) - list(FIND X86_ALIASES "${SYSPROC}" X86MATCH) - list(FIND ARM_ALIASES "${SYSPROC}" ARMMATCH) --set(POWER_ALIASES ppc64 ppc64le) -+set(POWER_ALIASES ppc64 ppc64le powerpc64 powerpc64le) - list(FIND POWER_ALIASES "${SYSPROC}" POWERMATCH) - if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1") - set(X86 1) diff --git a/media-libs/x265/files/x265-3.5-r5-test-ns_2.patch b/media-libs/x265/files/x265-3.5-r5-test-ns_2.patch deleted file mode 100644 index eec119f7f923..000000000000 --- a/media-libs/x265/files/x265-3.5-r5-test-ns_2.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- source.orig/encoder/encoder.cpp -+++ source/encoder/encoder.cpp -@@ -1592,7 +1592,7 @@ int Encoder::encode(const x265_picture* - if (m_exportedPic) - { - if (!m_param->bUseAnalysisFile && m_param->analysisSave) -- x265_free_analysis_data(m_param, &m_exportedPic->m_analysisData); -+ PARAM_NS::x265_free_analysis_data(m_param, &m_exportedPic->m_analysisData); - ATOMIC_DEC(&m_exportedPic->m_countRefEncoders); - m_exportedPic = NULL; - m_dpb->recycleUnreferenced(); diff --git a/media-libs/x265/x265-3.5-r3.ebuild b/media-libs/x265/x265-3.5-r3.ebuild deleted file mode 100644 index 7dae9a86bfa8..000000000000 --- a/media-libs/x265/x265-3.5-r3.ebuild +++ /dev/null @@ -1,223 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit cmake flag-o-matic multilib-minimal multibuild - -if [[ ${PV} = 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://bitbucket.org/multicoreware/x265_git/" - S=${WORKDIR}/${P}/source -else - SRC_URI="https://bitbucket.org/multicoreware/x265_git/downloads/${PN}_${PV}.tar.gz" - KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv x86" -fi - -DESCRIPTION="Library for encoding video streams into the H.265/HEVC format" -HOMEPAGE="http://x265.org/ https://bitbucket.org/multicoreware/x265_git/" - -LICENSE="GPL-2" -# subslot = libx265 soname -SLOT="0/199" -IUSE="+10bit +12bit cpu_flags_ppc_vsx2 numa test" -RESTRICT="!test? ( test )" - -RDEPEND="numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -ASM_DEPEND=">=dev-lang/nasm-2.13" -BDEPEND=" - abi_x86_32? ( ${ASM_DEPEND} ) - abi_x86_64? ( ${ASM_DEPEND} )" - -PATCHES=( - "${FILESDIR}/arm-r1.patch" - "${FILESDIR}/neon.patch" - "${FILESDIR}/x265-3.3-ppc64.patch" - "${FILESDIR}/tests.patch" - "${FILESDIR}/test-ns.patch" - "${FILESDIR}/${PN}-3.5-r5-test-ns_2.patch" -) - -src_unpack() { - if [[ ${PV} = 9999* ]]; then - git-r3_src_unpack - else - unpack ${A} - export S="$(echo "${WORKDIR}/${PN}_"*"/source")" - fi -} - -# By default, the library and the encoder is configured for only one output bit -# depth. Meaning, one has to rebuild libx265 if (s)he wants to produce HEVC -# files with a different bit depth, which is annoying. However, upstream -# supports proper namespacing for 8bits, 10bits & 12bits HEVC and linking all -# that together so that the resulting library can produce all three of them -# instead of only one. -# The API requires the bit depth parameter, so that libx265 can then chose which -# variant of the encoder to use. -# To achieve this, we have to build one (static) library for each non-main -# variant, and link it into the main library. -# Upstream documents using the 8bit variant as main library, hence we do not -# allow disabling it: "main" *MUST* come last in the following list. - -x265_get_variants() { - local variants="" - use 12bit && variants+="main12 " - use 10bit && variants+="main10 " - variants+="main" - echo "${variants}" -} - -x265_variant_src_configure() { - mkdir -p "${BUILD_DIR}" || die - pushd "${BUILD_DIR}" >/dev/null || die - - einfo "Configuring variant: ${MULTIBUILD_VARIANT} for ABI: ${ABI}" - - local mycmakeargs=( "${myabicmakeargs[@]}" ) - case "${MULTIBUILD_VARIANT}" in - "main12") - mycmakeargs+=( - -DHIGH_BIT_DEPTH=ON - -DEXPORT_C_API=OFF - -DENABLE_SHARED=OFF - -DENABLE_CLI=OFF - -DMAIN12=ON - ) - if [[ ${ABI} = x86 ]] ; then - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - if [[ ${ABI} = arm* ]] ; then - # 589674 - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - # disable altivec for 12bit build #607802#c5 - if [[ ${ABI} = ppc* ]] ; then - mycmakeargs+=( - -DENABLE_ALTIVEC=OFF - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - ;; - "main10") - mycmakeargs+=( - -DHIGH_BIT_DEPTH=ON - -DEXPORT_C_API=OFF - -DENABLE_SHARED=OFF - -DENABLE_CLI=OFF - -DENABLE_HDR10_PLUS=ON - ) - if [[ ${ABI} = x86 ]] ; then - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - if [[ ${ABI} = arm* ]] ; then - # 589674 - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - # disable altivec for 10bit build #607802#c5 - if [[ ${ABI} = ppc* ]] ; then - mycmakeargs+=( - -DENABLE_ALTIVEC=OFF - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - ;; - "main") - if (( "${#MULTIBUILD_VARIANTS[@]}" > 1 )) ; then - local myvariants=( "${MULTIBUILD_VARIANTS[@]}" ) - unset myvariants[${#MULTIBUILD_VARIANTS[@]}-1] - local liblist="" v= - for v in "${myvariants[@]}" ; do - ln -s "${BUILD_DIR%-*}-${v}/libx265.a" "libx265_${v}.a" || die - liblist+="libx265_${v}.a;" - done - mycmakeargs+=( - -DEXTRA_LIB="${liblist}" - -DEXTRA_LINK_FLAGS=-L. - -DLINKED_10BIT=$(usex 10bit) - -DLINKED_12BIT=$(usex 12bit) - ) - if [[ ${ABI} = ppc* ]] ; then - # upstream uses mix of altivec + power8 vectors - # it's impossible to enable altivec without CPU_POWER8 - # and it does not work on ppc32 - # so we toggle both variables together - mycmakeargs+=( - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - -DENABLE_ALTIVEC=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - fi - ;; - *) - die "Unknown variant: ${MULTIBUILD_VARIANT}";; - esac - cmake_src_configure - popd >/dev/null || die -} - -multilib_src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/875854 - # https://bitbucket.org/multicoreware/x265_git/issues/937/build-fails-with-lto - filter-lto - - local myabicmakeargs=( - -DENABLE_TESTS=$(usex test ON OFF) - $(multilib_is_native_abi || echo "-DENABLE_CLI=OFF") - -DENABLE_PIC=ON - -DENABLE_LIBNUMA=$(usex numa ON OFF) - -DGIT_ARCHETYPE=1 #814116 - -DLIB_INSTALL_DIR="$(get_libdir)" - ) - - # Unfortunately, the asm for x86/x32/arm isn't PIC-safe. - if [[ ${ABI} = x86 ]] ; then - # Bug #528202, bug #913412 - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - elif [[ ${ABI} = x32 ]] ; then - # bug #510890 - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - elif [[ ${ABI} = arm ]] ; then - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant x265_variant_src_configure -} - -multilib_src_compile() { - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant cmake_src_compile -} - -x265_variant_src_test() { - if [ -x "${BUILD_DIR}/test/TestBench" ] ; then - "${BUILD_DIR}/test/TestBench" || die - else - einfo "Unit tests check only assembly." - einfo "You do not seem to have any for ABI=${ABI}, x265 variant=${MULTIBUILD_VARIANT}" - einfo "Skipping tests." - fi -} - -multilib_src_test() { - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant x265_variant_src_test -} - -multilib_src_install() { - # Install only "main" variant since the others are already linked into it. - local MULTIBUILD_VARIANTS=( "main" ) - multibuild_foreach_variant cmake_src_install -} - -multilib_src_install_all() { - dodoc -r "${S}/../doc/"* - - # we don't install *.a files for all variants, - # so just delete these files instead of pretending - # real USE=static-libs support - find "${ED}" -name "*.a" -delete || die -} diff --git a/media-libs/x265/x265-3.5-r4.ebuild b/media-libs/x265/x265-3.5-r4.ebuild deleted file mode 100644 index 762fbb6bd7f4..000000000000 --- a/media-libs/x265/x265-3.5-r4.ebuild +++ /dev/null @@ -1,223 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic multilib-minimal multibuild - -if [[ ${PV} = 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://bitbucket.org/multicoreware/x265_git/" - S=${WORKDIR}/${P}/source -else - SRC_URI="https://bitbucket.org/multicoreware/x265_git/downloads/${PN}_${PV}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86" -fi - -DESCRIPTION="Library for encoding video streams into the H.265/HEVC format" -HOMEPAGE="http://x265.org/ https://bitbucket.org/multicoreware/x265_git/" - -LICENSE="GPL-2" -# subslot = libx265 soname -SLOT="0/199" -IUSE="+10bit +12bit cpu_flags_ppc_vsx2 numa test" -RESTRICT="!test? ( test )" - -RDEPEND="numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -ASM_DEPEND=">=dev-lang/nasm-2.13" -BDEPEND=" - abi_x86_32? ( ${ASM_DEPEND} ) - abi_x86_64? ( ${ASM_DEPEND} )" - -PATCHES=( - "${FILESDIR}/arm-r1.patch" - "${FILESDIR}/neon.patch" - "${FILESDIR}/x265-3.3-ppc64.patch" - "${FILESDIR}/tests.patch" - "${FILESDIR}/test-ns.patch" - "${FILESDIR}/${PN}-3.5-r5-test-ns_2.patch" -) - -src_unpack() { - if [[ ${PV} = 9999* ]]; then - git-r3_src_unpack - else - unpack ${A} - export S="$(echo "${WORKDIR}/${PN}_"*"/source")" - fi -} - -# By default, the library and the encoder is configured for only one output bit -# depth. Meaning, one has to rebuild libx265 if (s)he wants to produce HEVC -# files with a different bit depth, which is annoying. However, upstream -# supports proper namespacing for 8bits, 10bits & 12bits HEVC and linking all -# that together so that the resulting library can produce all three of them -# instead of only one. -# The API requires the bit depth parameter, so that libx265 can then chose which -# variant of the encoder to use. -# To achieve this, we have to build one (static) library for each non-main -# variant, and link it into the main library. -# Upstream documents using the 8bit variant as main library, hence we do not -# allow disabling it: "main" *MUST* come last in the following list. - -x265_get_variants() { - local variants="" - use 12bit && variants+="main12 " - use 10bit && variants+="main10 " - variants+="main" - echo "${variants}" -} - -x265_variant_src_configure() { - mkdir -p "${BUILD_DIR}" || die - pushd "${BUILD_DIR}" >/dev/null || die - - einfo "Configuring variant: ${MULTIBUILD_VARIANT} for ABI: ${ABI}" - - local mycmakeargs=( "${myabicmakeargs[@]}" ) - case "${MULTIBUILD_VARIANT}" in - "main12") - mycmakeargs+=( - -DHIGH_BIT_DEPTH=ON - -DEXPORT_C_API=OFF - -DENABLE_SHARED=OFF - -DENABLE_CLI=OFF - -DMAIN12=ON - ) - if [[ ${ABI} = x86 ]] ; then - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - if [[ ${ABI} = arm* ]] ; then - # 589674 - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - # disable altivec for 12bit build #607802#c5 - if [[ ${ABI} = ppc* ]] ; then - mycmakeargs+=( - -DENABLE_ALTIVEC=OFF - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - ;; - "main10") - mycmakeargs+=( - -DHIGH_BIT_DEPTH=ON - -DEXPORT_C_API=OFF - -DENABLE_SHARED=OFF - -DENABLE_CLI=OFF - -DENABLE_HDR10_PLUS=ON - ) - if [[ ${ABI} = x86 ]] ; then - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - if [[ ${ABI} = arm* ]] ; then - # 589674 - mycmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - # disable altivec for 10bit build #607802#c5 - if [[ ${ABI} = ppc* ]] ; then - mycmakeargs+=( - -DENABLE_ALTIVEC=OFF - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - ;; - "main") - if (( "${#MULTIBUILD_VARIANTS[@]}" > 1 )) ; then - local myvariants=( "${MULTIBUILD_VARIANTS[@]}" ) - unset myvariants[${#MULTIBUILD_VARIANTS[@]}-1] - local liblist="" v= - for v in "${myvariants[@]}" ; do - ln -s "${BUILD_DIR%-*}-${v}/libx265.a" "libx265_${v}.a" || die - liblist+="libx265_${v}.a;" - done - mycmakeargs+=( - -DEXTRA_LIB="${liblist}" - -DEXTRA_LINK_FLAGS=-L. - -DLINKED_10BIT=$(usex 10bit) - -DLINKED_12BIT=$(usex 12bit) - ) - if [[ ${ABI} = ppc* ]] ; then - # upstream uses mix of altivec + power8 vectors - # it's impossible to enable altivec without CPU_POWER8 - # and it does not work on ppc32 - # so we toggle both variables together - mycmakeargs+=( - -DCPU_POWER8=$(usex cpu_flags_ppc_vsx2 ON OFF) - -DENABLE_ALTIVEC=$(usex cpu_flags_ppc_vsx2 ON OFF) - ) - fi - fi - ;; - *) - die "Unknown variant: ${MULTIBUILD_VARIANT}";; - esac - cmake_src_configure - popd >/dev/null || die -} - -multilib_src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/875854 - # https://bitbucket.org/multicoreware/x265_git/issues/937/build-fails-with-lto - filter-lto - - local myabicmakeargs=( - -DENABLE_TESTS=$(usex test ON OFF) - $(multilib_is_native_abi || echo "-DENABLE_CLI=OFF") - -DENABLE_PIC=ON - -DENABLE_LIBNUMA=$(usex numa ON OFF) - -DGIT_ARCHETYPE=1 #814116 - -DLIB_INSTALL_DIR="$(get_libdir)" - ) - - # Unfortunately, the asm for x86/x32/arm isn't PIC-safe. - if [[ ${ABI} = x86 ]] ; then - # Bug #528202, bug #913412 - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - elif [[ ${ABI} = x32 ]] ; then - # bug #510890 - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - elif [[ ${ABI} = arm ]] ; then - myabicmakeargs+=( -DENABLE_ASSEMBLY=OFF ) - fi - - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant x265_variant_src_configure -} - -multilib_src_compile() { - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant cmake_src_compile -} - -x265_variant_src_test() { - if [ -x "${BUILD_DIR}/test/TestBench" ] ; then - "${BUILD_DIR}/test/TestBench" || die - else - einfo "Unit tests check only assembly." - einfo "You do not seem to have any for ABI=${ABI}, x265 variant=${MULTIBUILD_VARIANT}" - einfo "Skipping tests." - fi -} - -multilib_src_test() { - local MULTIBUILD_VARIANTS=( $(x265_get_variants) ) - multibuild_foreach_variant x265_variant_src_test -} - -multilib_src_install() { - # Install only "main" variant since the others are already linked into it. - local MULTIBUILD_VARIANTS=( "main" ) - multibuild_foreach_variant cmake_src_install -} - -multilib_src_install_all() { - dodoc -r "${S}/../doc/"* - - # we don't install *.a files for all variants, - # so just delete these files instead of pretending - # real USE=static-libs support - find "${ED}" -name "*.a" -delete || die -} diff --git a/media-libs/x265/x265-3.5-r6.ebuild b/media-libs/x265/x265-3.5-r6.ebuild deleted file mode 100644 index f38a58ad7981..000000000000 --- a/media-libs/x265/x265-3.5-r6.ebuild +++ /dev/null @@ -1,202 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit cmake flag-o-matic multilib-minimal multibuild - -DESCRIPTION="Library for encoding video streams into the H.265/HEVC format" -HOMEPAGE="https://www.x265.org/ https://bitbucket.org/multicoreware/x265_git/" - -if [[ ${PV} = 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://bitbucket.org/multicoreware/x265_git/" - MY_P="${PN}-${PV}" -else - SRC_URI="https://bitbucket.org/multicoreware/x265_git/downloads/${PN}_${PV}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86" - MY_P="${PN}_${PV}" -fi - -S="${WORKDIR}/${MY_P}/source" -unset MY_P - -LICENSE="GPL-2" -# subslot = libx265 soname -SLOT="0/199" -IUSE="+10bit +12bit cpu_flags_ppc_vsx2 numa test" -RESTRICT="!test? ( test )" - -RDEPEND="numa? ( >=sys-process/numactl-2.0.10-r1[${MULTILIB_USEDEP}] )" -DEPEND="${RDEPEND}" -ASM_DEPEND=">=dev-lang/nasm-2.13" -BDEPEND=" - abi_x86_32? ( ${ASM_DEPEND} ) - abi_x86_64? ( ${ASM_DEPEND} )" - -PATCHES=( - "${FILESDIR}/arm-r1.patch" - "${FILESDIR}/neon.patch" - "${FILESDIR}/tests.patch" - "${FILESDIR}/test-ns.patch" - "${FILESDIR}/${PN}-3.5-r5-cpp-std.patch" - "${FILESDIR}/${PN}-3.5-r5-gcc15.patch" - "${FILESDIR}/${PN}-3.5-r5-test-ns_2.patch" - "${FILESDIR}/${PN}-3.6-cmake-cleanup.patch" - "${FILESDIR}/${PN}-3.6-code-cleanup.patch" -) - -pkg_setup() { - variants=( - $(usev 12bit "main12") - $(usev 10bit "main10") - ) -} - -# By default, the library and the encoder is configured for only one output bit -# depth. Meaning, one has to rebuild libx265 if (s)he wants to produce HEVC -# files with a different bit depth, which is annoying. However, upstream -# supports proper namespacing for 8bits, 10bits & 12bits HEVC and linking all -# that together so that the resulting library can produce all three of them -# instead of only one. -# The API requires the bit depth parameter, so that libx265 can then chose which -# variant of the encoder to use. -# To achieve this, we have to build one (static) library for each non-main -# variant, and link it into the main library. -# Upstream documents using the 8bit variant as main library, hence we do not -# allow disabling it - -x265_variant_src_configure() { - einfo "Configuring variant: ${MULTIBUILD_VARIANT} for ABI: ${ABI}" - - local mycmakeargs=( - "${mycmakeargs[@]}" - -DHIGH_BIT_DEPTH=ON - -DEXPORT_C_API=OFF - -DENABLE_SHARED=OFF - -DENABLE_CLI=OFF - ) - - case "${MULTIBUILD_VARIANT}" in - "main12") - mycmakeargs+=( - -DMAIN12=ON - ) - ;; - "main10") - mycmakeargs+=( - -DENABLE_HDR10_PLUS=ON - ) - ;; - *) - die "Unknown variant: ${MULTIBUILD_VARIANT}";; - esac - cmake_src_configure -} - -multilib_src_configure() { - # -Werror=odr - # https://bugs.gentoo.org/875854 - # https://bitbucket.org/multicoreware/x265_git/issues/937/build-fails-with-lto - filter-lto - - local mycmakeargs=( - -DENABLE_PIC=ON - -DENABLE_LIBNUMA="$(usex numa)" - -DENABLE_SVT_HEVC="no" # missing - -DENABLE_VTUNE="no" # missing - -DGIT_ARCHETYPE=1 #814116 - -DLIB_INSTALL_DIR="$(get_libdir)" - ) - if ! multilib_is_native_abi; then - mycmakeargs+=( - -DENABLE_CLI="no" - ) - fi - - # Unfortunately, the asm for x86/x32/arm isn't PIC-safe. - # x86 # Bug #528202, bug #913412 - # x32 # bug #510890 - if [[ ${ABI} = x86 ]] || [[ ${ABI} = x32 ]] || [[ ${ABI} = arm ]] ; then - mycmakeargs+=( - -DENABLE_ASSEMBLY=OFF - # ENABLE_TESTS requires ENABLE_ASSEMBLY=ON to be visible - # source/CMakeLists.txt:858 - # -DENABLE_TESTS="no" #728748 - ) - else - mycmakeargs+=( - -DENABLE_TESTS="$(usex test)" - ) - fi - - if [[ ${ABI} = ppc* ]] ; then - # upstream uses mix of altivec + power8 vectors - # it's impossible to enable altivec without CPU_POWER8 - # and it does not work on ppc32 - # so we toggle both variables together - mycmakeargs+=( - -DCPU_POWER8="$(usex cpu_flags_ppc_vsx2)" - -DENABLE_ALTIVEC="$(usex cpu_flags_ppc_vsx2)" - ) - fi - - local MULTIBUILD_VARIANTS=( "${variants[@]}" ) - if [[ "${#MULTIBUILD_VARIANTS[@]}" -gt 1 ]] ; then - multibuild_foreach_variant x265_variant_src_configure - - local liblist="" v= - for v in "${MULTIBUILD_VARIANTS[@]}" ; do - ln -s "${BUILD_DIR}-${v}/libx265.a" "${BUILD_DIR}/libx265_${v}.a" || die - liblist+="libx265_${v}.a;" - done - - mycmakeargs+=( - -DEXTRA_LIB="${liblist}" - -DEXTRA_LINK_FLAGS="-L${BUILD_DIR}" - -DLINKED_10BIT"=$(usex 10bit)" - -DLINKED_12BIT="$(usex 12bit)" - ) - fi - - cmake_src_configure -} - -multilib_src_compile() { - local MULTIBUILD_VARIANTS=( "${variants[@]}" ) - if [[ "${#MULTIBUILD_VARIANTS[@]}" -gt 1 ]] ; then - multibuild_foreach_variant cmake_src_compile - fi - cmake_src_compile -} - -x265_variant_src_test() { - if [[ -x "${BUILD_DIR}/test/TestBench" ]] ; then - "${BUILD_DIR}/test/TestBench" || die - else - einfo "Unit tests check only assembly." - einfo "You do not seem to have any for ABI=${ABI}, x265 variant=${MULTIBUILD_VARIANT}" - einfo "Skipping tests." - fi -} - -multilib_src_test() { - local MULTIBUILD_VARIANTS=( "${variants[@]}" ) - if [[ "${#MULTIBUILD_VARIANTS[@]}" -gt 1 ]] ; then - multibuild_foreach_variant x265_variant_src_test - fi - x265_variant_src_test -} - -multilib_src_install() { - cmake_src_install -} - -multilib_src_install_all() { - dodoc -r "${S}/../doc/"* - - # we don't install *.a files for all variants, - # so just delete these files instead of pretending - # real USE=static-libs support - find "${ED}" -name "*.a" -delete || die -} diff --git a/media-libs/x265/x265-3.6-r1.ebuild b/media-libs/x265/x265-3.6-r1.ebuild index 7fe46d01d35a..f3f31fde6afc 100644 --- a/media-libs/x265/x265-3.6-r1.ebuild +++ b/media-libs/x265/x265-3.6-r1.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} = 9999* ]]; then MY_P="${PN}-${PV}" else SRC_URI="https://bitbucket.org/multicoreware/x265_git/downloads/${PN}_${PV}.tar.gz -> ${PN}-${PV}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv x86" MY_P="${PN}_${PV}" fi diff --git a/media-libs/xine-lib/metadata.xml b/media-libs/xine-lib/metadata.xml index 2ffbc928d60d..402b3e7d564a 100644 --- a/media-libs/xine-lib/metadata.xml +++ b/media-libs/xine-lib/metadata.xml @@ -61,9 +61,6 @@ <flag name="vis"> Adds support for SIMD optimizations for UltraSPARC processors. </flag> - <flag name="vpx"> - Enable VP8 codec support via <pkg>media-libs/libvpx</pkg>. - </flag> <flag name="xvmc"> Enable support for XVideo Motion Compensation (accelerated mpeg playback). </flag> diff --git a/media-libs/xine-lib/xine-lib-1.2.13-r2.ebuild b/media-libs/xine-lib/xine-lib-1.2.13-r2.ebuild index e7612a609de7..e114a3cafad5 100644 --- a/media-libs/xine-lib/xine-lib-1.2.13-r2.ebuild +++ b/media-libs/xine-lib/xine-lib-1.2.13-r2.ebuild @@ -143,6 +143,9 @@ src_prepare() { } src_configure() { + # bug #944147 + append-flags -std=gnu17 + [[ ${CHOST} == i?86-* ]] && append-flags -fomit-frame-pointer #422519 local win32dir #197236 diff --git a/media-libs/xine-lib/xine-lib-1.2.9999.ebuild b/media-libs/xine-lib/xine-lib-1.2.9999.ebuild index 4215104fe58c..4a3c08267509 100644 --- a/media-libs/xine-lib/xine-lib-1.2.9999.ebuild +++ b/media-libs/xine-lib/xine-lib-1.2.9999.ebuild @@ -139,6 +139,9 @@ src_prepare() { } src_configure() { + # bug #944147 + append-flags -std=gnu17 + [[ ${CHOST} == i?86-* ]] && append-flags -fomit-frame-pointer #422519 local win32dir #197236 diff --git a/media-libs/xvid/metadata.xml b/media-libs/xvid/metadata.xml index a12998a66dd6..c7e80df04d05 100644 --- a/media-libs/xvid/metadata.xml +++ b/media-libs/xvid/metadata.xml @@ -4,7 +4,4 @@ <maintainer type="project"> <email>media-video@gentoo.org</email> </maintainer> - <use> - <flag name="pic">disable optimized assembly code that is not PIC friendly</flag> - </use> </pkgmetadata> diff --git a/media-libs/xvid/xvid-1.3.7-r1.ebuild b/media-libs/xvid/xvid-1.3.7-r1.ebuild deleted file mode 100644 index ffd1a7e39754..000000000000 --- a/media-libs/xvid/xvid-1.3.7-r1.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MY_PN="${PN}core" -MY_P="${MY_PN}-${PV}" -inherit flag-o-matic multilib-minimal - -DESCRIPTION="High performance/quality MPEG-4 video de-/encoding solution" -HOMEPAGE="https://labs.xvid.com/source/ https://www.xvid.org/" -SRC_URI="https://downloads.xvid.com/downloads/${MY_P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="examples pic" - -NASM=">=dev-lang/nasm-2" -YASM=">=dev-lang/yasm-1" - -BDEPEND="sys-apps/grep" -DEPEND="amd64? ( || ( ${YASM} ${NASM} ) ) - x86? ( || ( ${YASM} ${NASM} ) ) - x64-macos? ( ${NASM} )" - -S="${WORKDIR}/${MY_PN}/build/generic" - -src_prepare() { - default - - # make build verbose - sed \ - -e 's/@$(CC)/$(CC)/' \ - -e 's/@$(AS)/$(AS)/' \ - -e 's/@$(RM)/$(RM)/' \ - -e 's/@$(INSTALL)/$(INSTALL)/' \ - -e 's/@cd/cd/' \ - -e '/\$(libdir)\/\$(STATIC_LIB)/d' \ - -e 's/\$(BUILD_DIR)\/\$(STATIC_LIB)//g' \ - -e 's/info \$(STATIC_LIB)/info/g' \ - -i Makefile || die - # Since only the build system is in $S, this will only copy it but not the - # entire sources. - multilib_copy_sources -} - -multilib_src_configure() { - use sparc && append-cflags -mno-vis #357149 - - local myconf=( - --enable-pthread - ) - - if use pic || [[ ${ABI} == "x32" ]] ; then #421841 - myconf+=( --disable-assembly ) - fi - - econf "${myconf[@]}" -} - -multilib_src_install_all() { - dodoc "${S}"/../../{AUTHORS,ChangeLog*,CodingStyle,README,TODO} - - if use examples; then - insinto /usr/share/${PN} - doins -r "${S}"/../../examples - fi -} diff --git a/media-libs/xvid/xvid-1.3.7-r2.ebuild b/media-libs/xvid/xvid-1.3.7-r2.ebuild index e34e6c0c9adb..5b80dd5ac7a3 100644 --- a/media-libs/xvid/xvid-1.3.7-r2.ebuild +++ b/media-libs/xvid/xvid-1.3.7-r2.ebuild @@ -49,6 +49,9 @@ src_prepare() { multilib_src_configure() { use sparc && append-cflags -mno-vis #357149 + # bug #943748 + append-cflags -std=gnu17 + local myconf=( --enable-pthread # On x86, only available for mmx+sse2 and non-PIC. diff --git a/media-libs/xvid/xvid-1.3.7.ebuild b/media-libs/xvid/xvid-1.3.7.ebuild deleted file mode 100644 index b5e83cf121c2..000000000000 --- a/media-libs/xvid/xvid-1.3.7.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_PN="${PN}core" -MY_P="${MY_PN}-${PV}" -inherit flag-o-matic multilib-minimal - -DESCRIPTION="High performance/quality MPEG-4 video de-/encoding solution" -HOMEPAGE="https://labs.xvid.com/source/ https://www.xvid.org/" -SRC_URI="https://downloads.xvid.com/downloads/${MY_P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="examples pic +threads" - -NASM=">=dev-lang/nasm-2" -YASM=">=dev-lang/yasm-1" - -BDEPEND="sys-apps/grep" -DEPEND="amd64? ( || ( ${YASM} ${NASM} ) ) - x86? ( || ( ${YASM} ${NASM} ) ) - x64-macos? ( ${NASM} )" - -S="${WORKDIR}/${MY_PN}/build/generic" - -src_prepare() { - default - - # make build verbose - sed \ - -e 's/@$(CC)/$(CC)/' \ - -e 's/@$(AS)/$(AS)/' \ - -e 's/@$(RM)/$(RM)/' \ - -e 's/@$(INSTALL)/$(INSTALL)/' \ - -e 's/@cd/cd/' \ - -e '/\$(libdir)\/\$(STATIC_LIB)/d' \ - -e 's/\$(BUILD_DIR)\/\$(STATIC_LIB)//g' \ - -e 's/info \$(STATIC_LIB)/info/g' \ - -i Makefile || die - # Since only the build system is in $S, this will only copy it but not the - # entire sources. - multilib_copy_sources -} - -multilib_src_configure() { - use sparc && append-cflags -mno-vis #357149 - - local myconf=( $(use_enable threads pthread) ) - if use pic || [[ ${ABI} == "x32" ]] ; then #421841 - myconf+=( --disable-assembly ) - fi - - econf "${myconf[@]}" -} - -multilib_src_install_all() { - dodoc "${S}"/../../{AUTHORS,ChangeLog*,CodingStyle,README,TODO} - - if use examples; then - insinto /usr/share/${PN} - doins -r "${S}"/../../examples - fi -} diff --git a/media-libs/zimg/zimg-3.0.4-r1.ebuild b/media-libs/zimg/zimg-3.0.4-r1.ebuild index 7a637a490512..58066a13151d 100644 --- a/media-libs/zimg/zimg-3.0.4-r1.ebuild +++ b/media-libs/zimg/zimg-3.0.4-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,7 +8,7 @@ if [[ ${PV} = *9999* ]] ; then inherit git-r3 else SRC_URI="https://github.com/sekrit-twc/zimg/archive/release-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86" S="${WORKDIR}/${PN}-release-${PV}/" fi inherit autotools multilib-minimal |