summaryrefslogtreecommitdiff
path: root/media-libs
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/Manifest.gzbin69803 -> 69792 bytes
-rw-r--r--media-libs/glycin-loaders/Manifest2
-rw-r--r--media-libs/glycin-loaders/glycin-loaders-1.2_rc.ebuild94
-rw-r--r--media-libs/harfbuzz/Manifest2
-rw-r--r--media-libs/harfbuzz/harfbuzz-10.4.0.ebuild89
-rw-r--r--media-libs/tiff/Manifest7
-rw-r--r--media-libs/tiff/files/tiff-4.5.0-CVE-2022-48281.patch14
-rw-r--r--media-libs/tiff/files/tiff-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch287
-rw-r--r--media-libs/tiff/files/tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch131
-rw-r--r--media-libs/tiff/files/tiff-4.5.0_rc1-skip-tools-tests-multilib.patch52
-rw-r--r--media-libs/tiff/tiff-4.5.0-r2.ebuild92
-rw-r--r--media-libs/zxing-cpp/Manifest3
-rw-r--r--media-libs/zxing-cpp/files/zxing-cpp-2.3.0-reverse-NDEBUG.patch88
-rw-r--r--media-libs/zxing-cpp/zxing-cpp-2.3.0-r1.ebuild (renamed from media-libs/zxing-cpp/zxing-cpp-2.3.0.ebuild)4
14 files changed, 281 insertions, 584 deletions
diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz
index 0d34007ea6da..08b6252a84d0 100644
--- a/media-libs/Manifest.gz
+++ b/media-libs/Manifest.gz
Binary files differ
diff --git a/media-libs/glycin-loaders/Manifest b/media-libs/glycin-loaders/Manifest
index 4b683e24ab7a..7a576af00759 100644
--- a/media-libs/glycin-loaders/Manifest
+++ b/media-libs/glycin-loaders/Manifest
@@ -1,7 +1,9 @@
DIST glycin-1.1.5.tar.xz 28348220 BLAKE2B 79ddbe2d68246200f0026ff418abeaadd8779091925c83a8e253f2598aacce48e6ed3ddd557444a2f6ad3bb27e50fef3d5365ebd03ce2a38b2df3f1af8a0a69b SHA512 fcc2856eeaf10708ebd876186405330544ca83a262d1fccfe8d338e565657579142a8b496d993233755a21b82e96eab7b73457eacaca756ef3f8795b1cbd254f
DIST glycin-1.1.6.tar.xz 28420376 BLAKE2B 78ab434d27d1688723d061adae9ecd17500167b71c223e665fd74f5ed170d9793d5d404e753047ee7ed9061225f3da8f10ecee163dc112a170a74447b4f88efd SHA512 a6f913c776160a78870209e90f365c0321e65ae73e1903b92051c2439b4ba50e7e6645600ff050927a2f81447f08e2bed749364db8ded03d21b961046460c4b5
DIST glycin-1.2.beta.1.tar.xz 36989732 BLAKE2B 47e9d07f5487767fa0625fda352e6cb686227474addc38d2bc8acde1cb81689d62bd834949a82302153bdbe6dc3a08bb42f7fd1ba85ea67c61f62a7ba08d1b2a SHA512 2479f8044745e9203e2733359248d78e01cf1407eda770478936101dc7cbf32218c6c6cb21583b6e2444eecb8645c81cb8b9c73c6986593908cf6b11e4a5a25d
+DIST glycin-1.2.rc.tar.xz 37187208 BLAKE2B 5bee34bd2aab5cf1a4527c625e9b12a28d0d00d26f70d040a059c60f85f3a54a397265c5447d15ccc0e29c4c21af59dfa9ddf227ed0057a6f24fd33522d62076 SHA512 36bf11a26c0d788ed1f6e81bcbf94fe194c57fb3ded197ea75bd4f64a8d9132ff745b371a3ce40e229b09f2ac3bac840cdad2ea096e212a9ceba92410bdff198
EBUILD glycin-loaders-1.1.5.ebuild 1917 BLAKE2B 0dcd849afa9ce8769054770c41745dfd1513662c6e85b729c725286517727a7206fcb2a30fe5326d8e69692a5f8634c4e57457e7693b0c015b1ed971e98ca342 SHA512 f2b93eab34949f7c93b2df94211e2f265e302aa34a48cffaa8afa03be5f21fbd012266ae4c2d660a1b8238453a3b6aba93d9decac43ecc721d0c98bff9e6d66c
EBUILD glycin-loaders-1.1.6.ebuild 1917 BLAKE2B 0dcd849afa9ce8769054770c41745dfd1513662c6e85b729c725286517727a7206fcb2a30fe5326d8e69692a5f8634c4e57457e7693b0c015b1ed971e98ca342 SHA512 f2b93eab34949f7c93b2df94211e2f265e302aa34a48cffaa8afa03be5f21fbd012266ae4c2d660a1b8238453a3b6aba93d9decac43ecc721d0c98bff9e6d66c
EBUILD glycin-loaders-1.2_beta1.ebuild 1994 BLAKE2B 30fbfabccef9587a6e1aa07f43b92dc841c56be9b3f000cdfc22bc012e15adce31f4a4abfaa50bdd7ae587fbdeee7a9205fa216371a2710f5520d4314d4e7a35 SHA512 cf95ca963a8551793624d45dfbc9a14567ee68448060236890b16d145b33b8bd175476e2747050dec7ab32d6401c488284e6c8563ce0fb60e80c8fdcaeb13a24
+EBUILD glycin-loaders-1.2_rc.ebuild 1845 BLAKE2B 19887d39488f72a60abad247f6e8ade7f467c189a0fb5b4142dace40255dce791bbebfc06e3308c0e8fc9214fdafe374348adc0f69551f52dcfba144315c0d75 SHA512 f17517ce42dcc753e62dd134109286451f359f9ed0d3f183b5b117b39f66c0f3759533b5c5cfbb2287fb3043e352a4f537683e587a3c1757d5e0049f9024fbdc
MISC metadata.xml 331 BLAKE2B b62bbf18b3c5de49ceb8429587082188fa6503b3dc24d8aae4d79cebcba1889846d20724f0293eb87413e554a1c2dea698e452070889c945ed9b3ce823eb7107 SHA512 4408889d08fe53cf137df4ea60d15e4cbda90c1df5da9072f66be025dc97693570c3af4a1e7a22cbba5475c9e30210af07e338197e1a2cfe72f341b28d2f5e7d
diff --git a/media-libs/glycin-loaders/glycin-loaders-1.2_rc.ebuild b/media-libs/glycin-loaders/glycin-loaders-1.2_rc.ebuild
new file mode 100644
index 000000000000..69a8669e0c77
--- /dev/null
+++ b/media-libs/glycin-loaders/glycin-loaders-1.2_rc.ebuild
@@ -0,0 +1,94 @@
+# 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/_/.}
+DESCRIPTION="Loaders for glycin clients (glycin crate or libglycin)"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/glycin/"
+SRC_URI="
+ https://download.gnome.org/sources/glycin/$(ver_cut 1-2)/${MY_P}.tar.xz
+"
+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 GPL-3+ ISC LGPL-3+
+ MIT Unicode-3.0
+ || ( LGPL-2.1+ MPL-2.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="heif jpegxl svg test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.60:2
+ >=sys-libs/libseccomp-2.5.0
+ heif? ( >=media-libs/libheif-1.17.0:= )
+ jpegxl? ( >=media-libs/libjxl-0.10.0:= )
+ svg? (
+ >=gnome-base/librsvg-2.52.0:2
+ >=x11-libs/cairo-1.17.0
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=gui-libs/gtk-4.16.0:4
+ >=media-libs/lcms-2.14:2
+ )
+"
+BDEPEND="
+ test? (
+ sys-apps/bubblewrap
+ sys-apps/dbus
+ )
+"
+
+ECARGO_VENDOR=${S}/vendor
+
+QA_FLAGS_IGNORED="usr/libexec/glycin-loaders/.*"
+
+src_prepare() {
+ default
+
+ # https://gitlab.gnome.org/GNOME/glycin/-/issues/81
+ sed -i -e '\|/fonts|d' tests/tests.rs || die
+}
+
+src_configure() {
+ local formats=(
+ $(usev heif glycin-heif)
+ $(usev jpegxl glycin-jxl)
+ $(usev svg glycin-svg)
+ glycin-image-rs
+ )
+ local formats_s=${formats[*]}
+ local emesonargs=(
+ -Dprofile=$(usex debug dev release)
+ -Dglycin-loaders=true
+ -Dloaders="${formats_s// /,}"
+ -Dtests=$(usex test true false)
+ -Dlibglycin=false
+ )
+
+ meson_src_configure
+ ln -s "${CARGO_HOME}" "${BUILD_DIR}/cargo-home" || die
+}
+
+src_test() {
+ # tests write to /proc/*/uid_map
+ # apparently, "addpredict /" in Portage breaks it
+ local -x SANDBOX_ON=0
+ meson_src_test
+}
diff --git a/media-libs/harfbuzz/Manifest b/media-libs/harfbuzz/Manifest
index 37071981700f..c39822291711 100644
--- a/media-libs/harfbuzz/Manifest
+++ b/media-libs/harfbuzz/Manifest
@@ -1,8 +1,10 @@
DIST harfbuzz-10.1.0.tar.xz 17922136 BLAKE2B 7d78e31d045b984d8d1a8b1d1f8f282ff9b7dc748ffd65355266266e75064b14eb94ec6b1418e208ebb0fffb99ef174d1978ab14f0c318c1112c2d8005285979 SHA512 14b0e8fd417af9c78f36e532e3737c163902b85837be1028a8fd569508639b87afeb56f70a2313ba2f0f6d4b72bb6cee0bf50fb333dfc503c713e4d9cd86e9c3
DIST harfbuzz-10.2.0.tar.xz 17957608 BLAKE2B 6711eed94c4cbc7b4d37ec17c3bd4512110f873d0f179bc213773ad89af99cd349f92ea8ce957ddeb5084ad3719e2436cb712a880b02668954c69e0b1c3ceb98 SHA512 522028a5de91a042832b1634fc4b7636b1b42c5ee258882d155bc33fca7b30de19ca714b4f9ea8dc3d3f537142ca2305fcf5af04bec4edbf608f557c12742e54
DIST harfbuzz-10.3.0.tar.xz 18148276 BLAKE2B 0e941f08e499148c210af8f250b3d5304912956e66a203b901bbb1bb7244a9d1505df6ad63328c25a4abc60bdf99611b99c2464ad2cd8ea83d401599753fc1cb SHA512 ae476cd3409d7acd37a78146b05aa741c38e7bc8c54ff6c78b3c5f945e93523f9ce8f9e46776a25b3f92b7e613f96c34df6295f69dc479a4823a071adae78355
+DIST harfbuzz-10.4.0.tar.xz 18120656 BLAKE2B 21a2ed81ead5f06658c6153ad756631aacf5522bf58cdc5a54585cc03b0562c634ecabcd686fa76d2dda3497eb1a7d9e10c771e29da62c5946438d9ed8c46075 SHA512 73e202225aeef6174ebd3b8b226ad9d5afb48c40ecdc1bc26d1bc5f0cf1d832a8ffc2fe5b7ae3b7c8f848552dd57116d407f44120c6813b59dbe9faed0c346dc
EBUILD harfbuzz-10.1.0.ebuild 2389 BLAKE2B 14dfefb842168446682edbd996827c0b32c163fd7997de89d7c43182bd90c0b80bf8ad799170ed0e948bea13ec301859d592712a66d8f97e1645b57507f782c0 SHA512 33ee38ac532f32abe13b45ce708137b09801fa16043e9e51ac64993df503de3e50a2e4f3f6e76295b09492a8f7ef41df3c9a8fec826bc9659d31a3a06fc8a9a0
EBUILD harfbuzz-10.2.0.ebuild 2397 BLAKE2B 626bd3c11e350eb8fe8344dc1e940e9a67d02da902368e4b0ab97cf24c072391b06dd54d97ee8bfc4ba1a9f67a95cf5e37a3b48a694632dd9702215dec6f52d2 SHA512 95d951c443a4f323d27f8dcd210ab0afb4c9ec477ca0da39737429145f09c417722979c828c56d2f88da8ebf31f6df47bf009801effc615523f501f5025dcbe8
EBUILD harfbuzz-10.3.0.ebuild 2397 BLAKE2B 626bd3c11e350eb8fe8344dc1e940e9a67d02da902368e4b0ab97cf24c072391b06dd54d97ee8bfc4ba1a9f67a95cf5e37a3b48a694632dd9702215dec6f52d2 SHA512 95d951c443a4f323d27f8dcd210ab0afb4c9ec477ca0da39737429145f09c417722979c828c56d2f88da8ebf31f6df47bf009801effc615523f501f5025dcbe8
+EBUILD harfbuzz-10.4.0.ebuild 2397 BLAKE2B 626bd3c11e350eb8fe8344dc1e940e9a67d02da902368e4b0ab97cf24c072391b06dd54d97ee8bfc4ba1a9f67a95cf5e37a3b48a694632dd9702215dec6f52d2 SHA512 95d951c443a4f323d27f8dcd210ab0afb4c9ec477ca0da39737429145f09c417722979c828c56d2f88da8ebf31f6df47bf009801effc615523f501f5025dcbe8
EBUILD harfbuzz-9999.ebuild 2397 BLAKE2B 55943323290a4ac4a01d5b76dcf69a931d9aac34dbc97a14843d506946ef71dc3895957d4171ab51e4cb24471e0ac8573bdb32ea5ee2898c19f8654e75bea2fa SHA512 1eef336030e753372c8369d2943a9fb393d414621f39bfa4f9b7d556673dac5b369c80d8108cb4655dd5207cd00e0076dc51e4cd36fb6cba4a7f408d7402a3a2
MISC metadata.xml 649 BLAKE2B a03eb9e2b09fab01af900957a9f5d0a43836a77ce770bc2327bc8da299139d1175b59cc413d0a02d74d4fc4169ff3c9180a5c1cf8d6ff570b054bbceb55e89ba SHA512 94c0c007157e240abc17056e2efe877770ee0267bf9d710fdbac796110f4507d2bc628c3b22f74652a9c568e7c60fa513e680aeeb8895831aafede268c14be70
diff --git a/media-libs/harfbuzz/harfbuzz-10.4.0.ebuild b/media-libs/harfbuzz/harfbuzz-10.4.0.ebuild
new file mode 100644
index 000000000000..05db84d3684c
--- /dev/null
+++ b/media-libs/harfbuzz/harfbuzz-10.4.0.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2025 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://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"
+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/tiff/Manifest b/media-libs/tiff/Manifest
index 87dd6604f381..e8242baf0c5a 100644
--- a/media-libs/tiff/Manifest
+++ b/media-libs/tiff/Manifest
@@ -1,18 +1,11 @@
-AUX tiff-4.5.0-CVE-2022-48281.patch 496 BLAKE2B 08d90ff28e2e4338db3aa65b6fc0ee2e3f624edcc84c1a1190bed0444805b639060751808672df08070f285c6ae841299066747eb8b1a48e2a773b949916c534 SHA512 a6f30ed1179a4fa8c598833e16a60ed80bac96ef8f76048a430250aec9cdc30aa4652457f2ef4cb5dc23d167034b16f2d70856efe70d6210801f69830ca2a6a0
-AUX tiff-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch 13741 BLAKE2B 0e95d28944143fd3dd315dd8f6dca16baf9819cd920802feae5bdba791976f758a890364e9d3b4dc5387220090589406135b6692f1e4b0a4a92c2ef6d7a5c17f SHA512 a3ee53a95b64989a2d2917c94b0fb9923f3308b9b670d712296733eeb06240231b3e419f70438f717199eb7c3e406ae0c1872f25767d7635a846b916e067b5ee
-AUX tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch 5925 BLAKE2B 82e499f28330cbf00f01b495485fc689e6f7eed26b2b16505857fb23c58ad62fee7020c48fc07d1e44b747ca8c7286e7f927b2c1a5520c79ba61d3029d28001f SHA512 097631e05e40f573880fe79623fbd3292641ee9f3431ef2fdb7285e3b8583e6e0d0a1bfff36dc1901ad6e4c34dff97da59904797f8f71ed4b965b2ae258daaa6
-AUX tiff-4.5.0_rc1-skip-tools-tests-multilib.patch 1477 BLAKE2B d6daf36a65fcd2afbec2fd5e5f3b75fa4547f32079c0709e98a48b0ba28d993346dfc597ef46b37db5242f2e28c7dd87a1616fe9324ca2d9659a97040bcd23db SHA512 0c7b69ddd772d73fde800e610ed533804392d0ea4ddefa409f52abcf174cc77cd1f4160a03076043d654533e98812d642d5166030d97b273ec80f5288bf3eda3
AUX tiff-4.7.0-fix-test-race.patch 1108 BLAKE2B 2a974a70fca5acd51f888429cc44ebc1e6104364720826cbede6763bdf22fc250a08b2348fc108dfc81ea54826ada3e8c45ace09572ff128638f1663da49aa8c SHA512 741c5d5394e8ecca09130d2884f4f883785c0d3aca9915cc746587a784105be0f97474ce620f5018297f7dd2644d10b9870c93161ddf3af3fe3325b60538892a
AUX tiff-4.7.0-test-directory-big-endian.patch 14212 BLAKE2B d9be5513727114824b8bcbc2b5e42a57d71093996162742cda5dfe34fb051583f6b9451abb3b85a73c134f19b3a64b9ce820182cebf4d4e9129f9e1d20f47941 SHA512 375c912da1d86173fa9d60ff9486a05313ed9dc94ddb1200c4b0d85d67b4375644e05c3a8e679008e7572efbeaf10f7488d55d5d868629ca584db38f0d31438a
-DIST tiff-4.5.0.tar.xz 2320900 BLAKE2B c69801ba9d55b1ed27a92d31d8cd16937fe69299fbf5450efb4a6caa60245b72ddade110daae78f2198613640383623f76ec2265ba785375d0a85c7909b73fe9 SHA512 c6c866064c2dd5d1711c6ece7bafe5f011f5ce26c0aeaecbff79c05b5671f44150324bea95a0665cc43331883114de855ee1cd87ed733bff0f4d0814515b9f10
-DIST tiff-4.5.0.tar.xz.sig 310 BLAKE2B bbe7f9600061416227276424eb220714a1375d3e295cb0c5b7f76074324c1a2698a5029dde3e734331e9caf02d8a086273ded2ab09285857dbbfe3ad83506912 SHA512 8cef09755f4efe68db69591967e495852cf63c2d8113a877a2254f536d38c60b6dc864c07089249cd8109a8408672a297ae9e59d8233687bc2796dc158ccfb32
DIST tiff-4.5.1.tar.xz 2228040 BLAKE2B 793c03593c46d6f804f622f5ff7e799751ee79e87ec1575801d2238fbcd2e89ed657a5081d3651e337f1bb14603ff94a15aad878e7fdf2cf75ada38eed64d9d2 SHA512 fc6af93d36598527480c517ddc4f19fe72e9f07ef4997e5731604253c8db0b9bae816ba7a56985bf22fbbb48db1fab5ed4c2b32a5145bc9477ef24b221a61179
DIST tiff-4.5.1.tar.xz.sig 310 BLAKE2B fd5e3ff9c55790777b9d2587910cfb47953a27925bdf8610fc5b9db05a5662b534df542e3658db7b897c8de510479d0a7f0773092ac2f71e3c7bcb4beb14594f SHA512 10e434de0140bbd7e3830860bb611796b65fff5e718a2d5fb2857959ff63149d73b4e1f3f7c4be2c27f8ca863b0e4b7731332544eba948ce10097552e1779aee
DIST tiff-4.6.0.tar.xz 2124388 BLAKE2B 3b508b02b0a536c5bc8e67fe4c1b09ae9c830252786ef4764202c14d673d1ef9634694de7a5893a3551dec684d00bad9d0442c7fea7bcd09238b9960d443cf62 SHA512 4cd9bb485bcac9c5efdd0c4814f2a38a762a3b69e70d909c05a24e2e9d2bd27357b9814e0cb1cee3898355d6ccfcf1615f715125c8ab8c651db474073734ab03
DIST tiff-4.6.0.tar.xz.sig 310 BLAKE2B 9f159a5839dd41bda34eceeed6e451455fbcfec5d51ebb097038e3977a391a751e91a9f683375593f45af0f9c8f0dbe55a0cc437fe4512537b30d513adfdb2c0 SHA512 da87b4294e17d49cf60e81ec5285f503291532423330552e41dddfb672c0636e95b8a80d603c3095abbee469cb7dce63c2df0c22b751a3bf8541550f97f78b49
DIST tiff-4.7.0.tar.xz 2286220 BLAKE2B a5df7f3ae71821a13ff5a31db012191dd1b022b1c87fe81f90fd4b4a1349b7aa15d7b336d5fa8ac9e84edcfac5fe46214d9ea54790cb037438c6a5334980c11e SHA512 4234bc3d1a4de38587e21eb7d5785d6e11bc5f73c3d412dd44b9f7bcc42122d940ad017450a949dce5c3b270018829593202bff815a02d23268d9b9723266fe0
DIST tiff-4.7.0.tar.xz.sig 310 BLAKE2B d0959eda87e6a7e5a9048474ac6ade89e1f1ff65337d2e0c6c16090d84f1f16881a8ac960df3c768de219ff68f02c3818c2e8f54d289ba8e7ee6167c23993a2e SHA512 ab4e1b415b4e1a23d3c7873b9c5a69f40c40fadb20a91db3e4400eeae596011ad01ccd9ec270befd14263716b938242dbb9bd3c8998ea37cf87870eb0217268a
-EBUILD tiff-4.5.0-r2.ebuild 2858 BLAKE2B 3b1fb10b0b37f4a7ea7a19e9c7efa97ca736c7f8e37b0de04f34c489dc3e392cb5d4234f3a286f3345139deb1c4e13cdc07e6245b46fc54d0ec1af0183415e4d SHA512 aee67c876d5940d1a987e228bcf725623678eb7576074811eb0442bd3869511cad9fdd372bd1910dd847ee09a286d95b9412056b3d766a2acb68c2c3cd89c4cf
EBUILD tiff-4.5.1.ebuild 2475 BLAKE2B ef048936037c7e6d152d463441c17e2c4a226076f22a90c031777eb3f08e1593e1a7c1a559907f8f40b7669b24547ec9cbe09f4e1286aceaa34ae1dcb80f75d7 SHA512 2a1f0f1998a41b825bdb2d5076b59b6ec4830e35d0973a7a272f53642ce29ea7f6c76d3b65af1db00d18fa9f2d3dead14bf82bd6c0b303c7288130aea8519438
EBUILD tiff-4.6.0-r1.ebuild 2459 BLAKE2B 1747a8a7d4587ad7fb98859eb194d4773b1363bfd05e214174aec71b9ad2dede65c0ef5b1a41e72dc28878dad2f68745c85cce3266e245680cc62d39c070ff13 SHA512 0f3066293cb56d4bf87704f20dda0c6f6dae6f30dd78a3386704a872908579fe743309e6bf7b0c79f04dafa24a7bb73f3eaa9c2e92f1774007a125c0210f5598
EBUILD tiff-4.6.0.ebuild 2422 BLAKE2B acff03408569324c3f48c18284e03b183e77b2c31bad2056a2ab72254ad9afe358331fd59aaa922bf96e14fe028df1b6dbbbbc50971ea5bd50100beacb3ff495 SHA512 e8ee04b2333164669167d81e38993bfbf7dfd76e7b0456dbd08b8ed84a5115bc2eb2a748022c83c97325b5932839e901f4851bb995e194b85daeaa4063187dee
diff --git a/media-libs/tiff/files/tiff-4.5.0-CVE-2022-48281.patch b/media-libs/tiff/files/tiff-4.5.0-CVE-2022-48281.patch
deleted file mode 100644
index e38d17df9cc2..000000000000
--- a/media-libs/tiff/files/tiff-4.5.0-CVE-2022-48281.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://gitlab.com/libtiff/libtiff/-/issues/488
-https://bugs.gentoo.org/891839
---- a/tools/tiffcrop.c
-+++ b/tools/tiffcrop.c
-@@ -8591,7 +8591,7 @@ static int processCropSelections(struct
- cropsize + NUM_BUFF_OVERSIZE_BYTES);
- else
- {
-- prev_cropsize = seg_buffs[0].size;
-+ prev_cropsize = seg_buffs[i].size;
- if (prev_cropsize < cropsize)
- {
- next_buff = _TIFFrealloc(
-
diff --git a/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch b/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch
deleted file mode 100644
index 70a9b8269ec5..000000000000
--- a/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-Index: tiff-4.5.0/tools/tiffcrop.c
-===================================================================
-Upstream commits:
-https://gitlab.com/libtiff/libtiff/-/commit/afaabc3e50d4e5d80a94143f7e3c997e7e410f68
-https://gitlab.com/libtiff/libtiff/-/commit/9c22495e5eeeae9e00a1596720c969656bb8d678
-From 9c22495e5eeeae9e00a1596720c969656bb8d678 Mon Sep 17 00:00:00 2001
-From: Su_Laus <sulau@freenet.de>
-Date: Fri, 3 Feb 2023 15:31:31 +0100
-Subject: [PATCH] tiffcrop correctly update buffersize after rotateImage()
- fix#520 rotateImage() set up a new buffer and calculates its size
- individually. Therefore, seg_buffs[] size needs to be updated accordingly.
- Before this fix, the seg_buffs buffer size was calculated with a different
- formula than within rotateImage().
-
-Closes #520.
----
- tools/tiffcrop.c | 36 ++++++++++++++++++++----------------
- 1 file changed, 20 insertions(+), 16 deletions(-)
-
-diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
-index 7db69883..f8b66188 100644
---- a/tools/tiffcrop.c
-+++ b/tools/tiffcrop.c
-@@ -577,7 +577,7 @@ static int rotateContigSamples24bits(uint16_t, uint16_t, uint16_t, uint32_t,
- static int rotateContigSamples32bits(uint16_t, uint16_t, uint16_t, uint32_t,
- uint32_t, uint32_t, uint8_t *, uint8_t *);
- static int rotateImage(uint16_t, struct image_data *, uint32_t *, uint32_t *,
-- unsigned char **);
-+ unsigned char **, size_t *);
- static int mirrorImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
- unsigned char *);
- static int invertImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
-@@ -7243,7 +7243,7 @@ static int correct_orientation(struct image_data *image,
- }
-
- if (rotateImage(rotation, image, &image->width, &image->length,
-- work_buff_ptr))
-+ work_buff_ptr, NULL))
- {
- TIFFError("correct_orientation", "Unable to rotate image");
- return (-1);
-@@ -8563,8 +8563,12 @@ static int processCropSelections(struct image_data *image,
- if (crop->crop_mode & CROP_ROTATE) /* rotate should be last as it can
- reallocate the buffer */
- {
-+ /* rotateImage() set up a new buffer and calculates its size
-+ * individually. Therefore, seg_buffs size needs to be updated
-+ * accordingly. */
-+ size_t rot_buf_size = 0;
- if (rotateImage(crop->rotation, image, &crop->combined_width,
-- &crop->combined_length, &crop_buff))
-+ &crop->combined_length, &crop_buff, &rot_buf_size))
- {
- TIFFError("processCropSelections",
- "Failed to rotate composite regions by %" PRIu32
-@@ -8573,9 +8577,7 @@ static int processCropSelections(struct image_data *image,
- return (-1);
- }
- seg_buffs[0].buffer = crop_buff;
-- seg_buffs[0].size =
-- (((crop->combined_width * image->bps + 7) / 8) * image->spp) *
-- crop->combined_length;
-+ seg_buffs[0].size = rot_buf_size;
- }
- }
- else /* Separated Images */
-@@ -8686,10 +8688,13 @@ static int processCropSelections(struct image_data *image,
- * ->yres, what it schouldn't do here, when more than one
- * section is processed. ToDo: Therefore rotateImage() and its
- * usage has to be reworked (e.g. like mirrorImage()) !!
-- */
-- if (rotateImage(crop->rotation, image,
-- &crop->regionlist[i].width,
-- &crop->regionlist[i].length, &crop_buff))
-+ * Furthermore, rotateImage() set up a new buffer and calculates
-+ * its size individually. Therefore, seg_buffs size needs to be
-+ * updated accordingly. */
-+ size_t rot_buf_size = 0;
-+ if (rotateImage(
-+ crop->rotation, image, &crop->regionlist[i].width,
-+ &crop->regionlist[i].length, &crop_buff, &rot_buf_size))
- {
- TIFFError("processCropSelections",
- "Failed to rotate crop region by %" PRIu16
-@@ -8702,10 +8707,7 @@ static int processCropSelections(struct image_data *image,
- crop->combined_width = total_width;
- crop->combined_length = total_length;
- seg_buffs[i].buffer = crop_buff;
-- seg_buffs[i].size =
-- (((crop->regionlist[i].width * image->bps + 7) / 8) *
-- image->spp) *
-- crop->regionlist[i].length;
-+ seg_buffs[i].size = rot_buf_size;
- }
- } /* for crop->selections loop */
- } /* Separated Images (else case) */
-@@ -8836,7 +8838,7 @@ static int createCroppedImage(struct image_data *image, struct crop_mask *crop,
- CROP_ROTATE) /* rotate should be last as it can reallocate the buffer */
- {
- if (rotateImage(crop->rotation, image, &crop->combined_width,
-- &crop->combined_length, crop_buff_ptr))
-+ &crop->combined_length, crop_buff_ptr, NULL))
- {
- TIFFError("createCroppedImage",
- "Failed to rotate image or cropped selection by %" PRIu16
-@@ -9552,7 +9554,7 @@ static int rotateContigSamples32bits(uint16_t rotation, uint16_t spp,
- /* Rotate an image by a multiple of 90 degrees clockwise */
- static int rotateImage(uint16_t rotation, struct image_data *image,
- uint32_t *img_width, uint32_t *img_length,
-- unsigned char **ibuff_ptr)
-+ unsigned char **ibuff_ptr, size_t *rot_buf_size)
- {
- int shift_width;
- uint32_t bytes_per_pixel, bytes_per_sample;
-@@ -9610,6 +9612,8 @@ static int rotateImage(uint16_t rotation, struct image_data *image,
- return (-1);
- }
- _TIFFmemset(rbuff, '\0', buffsize + NUM_BUFF_OVERSIZE_BYTES);
-+ if (rot_buf_size != NULL)
-+ *rot_buf_size = buffsize;
-
- ibuff = *ibuff_ptr;
- switch (rotation)
---
-GitLab
-
-From 69818e2f2d246e6631ac2a2da692c3706b849c38 Mon Sep 17 00:00:00 2001
-From: Su_Laus <sulau@freenet.de>
-Date: Sun, 29 Jan 2023 11:09:26 +0100
-Subject: [PATCH] tiffcrop: Amend rotateImage() not to toggle the input (main)
- image width and length parameters when only cropped image sections are
- rotated. Remove buffptr from region structure because never used.
-
-Closes #492 #493 #494 #495 #499 #518 #519
----
- tools/tiffcrop.c | 59 ++++++++++++++++++++++++++++--------------------
- 1 file changed, 35 insertions(+), 24 deletions(-)
-
-diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
-index ebea7475..519871ec 100644
---- a/tools/tiffcrop.c
-+++ b/tools/tiffcrop.c
-@@ -296,7 +296,6 @@ struct region
- uint32_t width; /* width in pixels */
- uint32_t length; /* length in pixels */
- uint32_t buffsize; /* size of buffer needed to hold the cropped region */
-- unsigned char *buffptr; /* address of start of the region */
- };
-
- /* Cropping parameters from command line and image data
-@@ -577,7 +576,7 @@ static int rotateContigSamples24bits(uint16_t, uint16_t, uint16_t, uint32_t,
- static int rotateContigSamples32bits(uint16_t, uint16_t, uint16_t, uint32_t,
- uint32_t, uint32_t, uint8_t *, uint8_t *);
- static int rotateImage(uint16_t, struct image_data *, uint32_t *, uint32_t *,
-- unsigned char **, size_t *);
-+ unsigned char **, size_t *, int);
- static int mirrorImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
- unsigned char *);
- static int invertImage(uint16_t, uint16_t, uint16_t, uint32_t, uint32_t,
-@@ -5782,7 +5781,6 @@ static void initCropMasks(struct crop_mask *cps)
- cps->regionlist[i].width = 0;
- cps->regionlist[i].length = 0;
- cps->regionlist[i].buffsize = 0;
-- cps->regionlist[i].buffptr = NULL;
- cps->zonelist[i].position = 0;
- cps->zonelist[i].total = 0;
- }
-@@ -7266,9 +7264,13 @@ static int correct_orientation(struct image_data *image,
- (uint16_t)(image->adjustments & ROTATE_ANY));
- return (-1);
- }
--
-- if (rotateImage(rotation, image, &image->width, &image->length,
-- work_buff_ptr, NULL))
-+ /* Dummy variable in order not to switch two times the
-+ * image->width,->length within rotateImage(),
-+ * but switch xres, yres there. */
-+ uint32_t width = image->width;
-+ uint32_t length = image->length;
-+ if (rotateImage(rotation, image, &width, &length, work_buff_ptr, NULL,
-+ TRUE))
- {
- TIFFError("correct_orientation", "Unable to rotate image");
- return (-1);
-@@ -7377,7 +7379,6 @@ static int extractCompositeRegions(struct image_data *image,
- /* These should not be needed for composite images */
- crop->regionlist[i].width = crop_width;
- crop->regionlist[i].length = crop_length;
-- crop->regionlist[i].buffptr = crop_buff;
-
- src_rowsize = ((img_width * bps * spp) + 7) / 8;
- dst_rowsize = (((crop_width * bps * count) + 7) / 8);
-@@ -7640,7 +7641,6 @@ static int extractSeparateRegion(struct image_data *image,
-
- crop->regionlist[region].width = crop_width;
- crop->regionlist[region].length = crop_length;
-- crop->regionlist[region].buffptr = crop_buff;
-
- src = read_buff;
- dst = crop_buff;
-@@ -8635,7 +8635,8 @@ static int processCropSelections(struct image_data *image,
- * accordingly. */
- size_t rot_buf_size = 0;
- if (rotateImage(crop->rotation, image, &crop->combined_width,
-- &crop->combined_length, &crop_buff, &rot_buf_size))
-+ &crop->combined_length, &crop_buff, &rot_buf_size,
-+ FALSE))
- {
- TIFFError("processCropSelections",
- "Failed to rotate composite regions by %" PRIu32
-@@ -8759,9 +8760,10 @@ static int processCropSelections(struct image_data *image,
- * its size individually. Therefore, seg_buffs size needs to be
- * updated accordingly. */
- size_t rot_buf_size = 0;
-- if (rotateImage(
-- crop->rotation, image, &crop->regionlist[i].width,
-- &crop->regionlist[i].length, &crop_buff, &rot_buf_size))
-+ if (rotateImage(crop->rotation, image,
-+ &crop->regionlist[i].width,
-+ &crop->regionlist[i].length, &crop_buff,
-+ &rot_buf_size, FALSE))
- {
- TIFFError("processCropSelections",
- "Failed to rotate crop region by %" PRIu16
-@@ -8905,7 +8907,7 @@ static int createCroppedImage(struct image_data *image, struct crop_mask *crop,
- CROP_ROTATE) /* rotate should be last as it can reallocate the buffer */
- {
- if (rotateImage(crop->rotation, image, &crop->combined_width,
-- &crop->combined_length, crop_buff_ptr, NULL))
-+ &crop->combined_length, crop_buff_ptr, NULL, TRUE))
- {
- TIFFError("createCroppedImage",
- "Failed to rotate image or cropped selection by %" PRIu16
-@@ -9621,7 +9623,8 @@ static int rotateContigSamples32bits(uint16_t rotation, uint16_t spp,
- /* Rotate an image by a multiple of 90 degrees clockwise */
- static int rotateImage(uint16_t rotation, struct image_data *image,
- uint32_t *img_width, uint32_t *img_length,
-- unsigned char **ibuff_ptr, size_t *rot_buf_size)
-+ unsigned char **ibuff_ptr, size_t *rot_buf_size,
-+ int rot_image_params)
- {
- int shift_width;
- uint32_t bytes_per_pixel, bytes_per_sample;
-@@ -9869,11 +9872,15 @@ static int rotateImage(uint16_t rotation, struct image_data *image,
-
- *img_width = length;
- *img_length = width;
-- image->width = length;
-- image->length = width;
-- res_temp = image->xres;
-- image->xres = image->yres;
-- image->yres = res_temp;
-+ /* Only toggle image parameters if whole input image is rotated. */
-+ if (rot_image_params)
-+ {
-+ image->width = length;
-+ image->length = width;
-+ res_temp = image->xres;
-+ image->xres = image->yres;
-+ image->yres = res_temp;
-+ }
- break;
-
- case 270:
-@@ -9956,11 +9963,15 @@ static int rotateImage(uint16_t rotation, struct image_data *image,
-
- *img_width = length;
- *img_length = width;
-- image->width = length;
-- image->length = width;
-- res_temp = image->xres;
-- image->xres = image->yres;
-- image->yres = res_temp;
-+ /* Only toggle image parameters if whole input image is rotated. */
-+ if (rot_image_params)
-+ {
-+ image->width = length;
-+ image->length = width;
-+ res_temp = image->xres;
-+ image->xres = image->yres;
-+ image->yres = res_temp;
-+ }
- break;
- default:
- break;
---
-GitLab
diff --git a/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch b/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch
deleted file mode 100644
index 41fe439f9159..000000000000
--- a/media-libs/tiff/files/tiff-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-Index: tiff-4.5.0/tools/tiffcrop.c
-===================================================================
-Upstream commit:
-https://gitlab.com/libtiff/libtiff/-/commit/33aee1275d9d1384791d2206776eb8152d397f00
-From 82a7fbb1fa7228499ffeb3a57a1d106a9626d57c Mon Sep 17 00:00:00 2001
-From: Su Laus <sulau@freenet.de>
-Date: Sun, 5 Feb 2023 15:53:15 +0000
-Subject: [PATCH] tiffcrop: added check for assumption on composite images
- (fixes #496)
-
-tiffcrop: For composite images with more than one region, the combined_length or combined_width always needs to be equal, respectively. Otherwise, even the first section/region copy action might cause buffer overrun. This is now checked before the first copy action.
-
-Closes #496, #497, #498, #500, #501.
----
- tools/tiffcrop.c | 68 ++++++++++++++++++++++++++++++++++++++++++++++--
- 1 file changed, 66 insertions(+), 2 deletions(-)
-
-diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
-index 84e26ac6..480b927c 100644
---- a/tools/tiffcrop.c
-+++ b/tools/tiffcrop.c
-@@ -5935,18 +5935,40 @@ static int computeInputPixelOffsets(struct crop_mask *crop,
-
- crop->regionlist[i].buffsize = buffsize;
- crop->bufftotal += buffsize;
-+
-+ /* For composite images with more than one region, the
-+ * combined_length or combined_width always needs to be equal,
-+ * respectively.
-+ * Otherwise, even the first section/region copy
-+ * action might cause buffer overrun. */
- if (crop->img_mode == COMPOSITE_IMAGES)
- {
- switch (crop->edge_ref)
- {
- case EDGE_LEFT:
- case EDGE_RIGHT:
-+ if (i > 0 && zlength != crop->combined_length)
-+ {
-+ TIFFError(
-+ "computeInputPixelOffsets",
-+ "Only equal length regions can be combined for "
-+ "-E left or right");
-+ return (-1);
-+ }
- crop->combined_length = zlength;
- crop->combined_width += zwidth;
- break;
- case EDGE_BOTTOM:
- case EDGE_TOP: /* width from left, length from top */
- default:
-+ if (i > 0 && zwidth != crop->combined_width)
-+ {
-+ TIFFError("computeInputPixelOffsets",
-+ "Only equal width regions can be "
-+ "combined for -E "
-+ "top or bottom");
-+ return (-1);
-+ }
- crop->combined_width = zwidth;
- crop->combined_length += zlength;
- break;
-@@ -7301,6 +7323,46 @@ static int extractCompositeRegions(struct image_data *image,
- crop->combined_width = 0;
- crop->combined_length = 0;
-
-+ /* If there is more than one region, check beforehand whether all the width
-+ * and length values of the regions are the same, respectively. */
-+ switch (crop->edge_ref)
-+ {
-+ default:
-+ case EDGE_TOP:
-+ case EDGE_BOTTOM:
-+ for (i = 1; i < crop->selections; i++)
-+ {
-+ uint32_t crop_width0 =
-+ crop->regionlist[i - 1].x2 - crop->regionlist[i - 1].x1 + 1;
-+ uint32_t crop_width1 =
-+ crop->regionlist[i].x2 - crop->regionlist[i].x1 + 1;
-+ if (crop_width0 != crop_width1)
-+ {
-+ TIFFError("extractCompositeRegions",
-+ "Only equal width regions can be combined for -E "
-+ "top or bottom");
-+ return (1);
-+ }
-+ }
-+ break;
-+ case EDGE_LEFT:
-+ case EDGE_RIGHT:
-+ for (i = 1; i < crop->selections; i++)
-+ {
-+ uint32_t crop_length0 =
-+ crop->regionlist[i - 1].y2 - crop->regionlist[i - 1].y1 + 1;
-+ uint32_t crop_length1 =
-+ crop->regionlist[i].y2 - crop->regionlist[i].y1 + 1;
-+ if (crop_length0 != crop_length1)
-+ {
-+ TIFFError("extractCompositeRegions",
-+ "Only equal length regions can be combined for "
-+ "-E left or right");
-+ return (1);
-+ }
-+ }
-+ }
-+
- for (i = 0; i < crop->selections; i++)
- {
- /* rows, columns, width, length are expressed in pixels */
-@@ -7325,7 +7387,8 @@ static int extractCompositeRegions(struct image_data *image,
- default:
- case EDGE_TOP:
- case EDGE_BOTTOM:
-- if ((i > 0) && (crop_width != crop->regionlist[i - 1].width))
-+ if ((crop->selections > i + 1) &&
-+ (crop_width != crop->regionlist[i + 1].width))
- {
- TIFFError("extractCompositeRegions",
- "Only equal width regions can be combined for -E "
-@@ -7418,7 +7481,8 @@ static int extractCompositeRegions(struct image_data *image,
- case EDGE_LEFT: /* splice the pieces of each row together, side by
- side */
- case EDGE_RIGHT:
-- if ((i > 0) && (crop_length != crop->regionlist[i - 1].length))
-+ if ((crop->selections > i + 1) &&
-+ (crop_length != crop->regionlist[i + 1].length))
- {
- TIFFError("extractCompositeRegions",
- "Only equal length regions can be combined for "
---
-GitLab
diff --git a/media-libs/tiff/files/tiff-4.5.0_rc1-skip-tools-tests-multilib.patch b/media-libs/tiff/files/tiff-4.5.0_rc1-skip-tools-tests-multilib.patch
deleted file mode 100644
index 831afd287226..000000000000
--- a/media-libs/tiff/files/tiff-4.5.0_rc1-skip-tools-tests-multilib.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-https://gitlab.com/libtiff/libtiff/-/merge_requests/334
-
-From e7605b93b12c2bf3c864910c23ac976045b5a05a Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Sat, 21 May 2022 01:01:35 +0100
-Subject: [PATCH 1/2] test (autotools): skip script tests if tools aren't built
-
-In Gentoo, we avoid building the tools for multilib (32-bit, x86) builds on
-amd64/x86_64 because we only need the library to keep binary applications working.
-
-This causes a test failure in e.g. tiffcp-thumbnail.sh as the 'thumbnail'
-binary isn't built. Skip it if unavailable.
-
-Fixes: https://gitlab.com/libtiff/libtiff/-/issues/421
---- a/test/Makefile.am
-+++ b/test/Makefile.am
-@@ -55,13 +55,14 @@ XFAIL_TESTS =
- CLEANFILES = test_packbits.tif o-*
-
- if HAVE_JPEG
-+if TIFF_TOOLS
- JPEG_DEPENDENT_CHECK_PROG=raw_decode
- JPEG_DEPENDENT_TESTSCRIPTS=\
- tiff2rgba-quad-tile.jpg.sh \
- tiff2rgba-ojpeg_zackthecat_subsamp22_single_strip.sh \
- tiff2rgba-ojpeg_chewey_subsamp21_multi_strip.sh \
- tiff2rgba-ojpeg_single_strip_no_rowsperstrip.sh
--
-+endif
- else
- JPEG_DEPENDENT_CHECK_PROG=
- JPEG_DEPENDENT_TESTSCRIPTS=
-@@ -76,6 +77,7 @@ check_PROGRAMS = \
- endif
-
- # Test scripts to execute
-+if TIFF_TOOLS
- TESTSCRIPTS = \
- ppm2tiff_pbm.sh \
- ppm2tiff_pgm.sh \
-@@ -156,6 +158,9 @@ TESTSCRIPTS = \
- testfax4.sh \
- testdeflatelaststripextradata.sh \
- $(JPEG_DEPENDENT_TESTSCRIPTS)
-+else
-+TESTSCRIPTS=
-+endif
-
- # This list should contain the references files
- # from the 'refs' subdirectory
---
-GitLab
diff --git a/media-libs/tiff/tiff-4.5.0-r2.ebuild b/media-libs/tiff/tiff-4.5.0-r2.ebuild
deleted file mode 100644
index ddb1a04fda89..000000000000
--- a/media-libs/tiff/tiff-4.5.0-r2.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2023 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 autotools multilib-minimal verify-sig flag-o-matic
-
-MY_P="${P/_rc/rc}"
-DESCRIPTION="Tag Image File Format (TIFF) library"
-HOMEPAGE="http://libtiff.maptools.org"
-SRC_URI="https://download.osgeo.org/libtiff/${MY_P}.tar.xz"
-SRC_URI+=" verify-sig? ( https://download.osgeo.org/libtiff/${MY_P}.tar.xz.sig )"
-S="${WORKDIR}/${PN}-$(ver_cut 1-3)"
-
-LICENSE="libtiff"
-SLOT="0/6"
-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="+cxx jbig jpeg lzma static-libs test webp zlib zstd"
-RESTRICT="!test? ( test )"
-
-# bug #483132
-REQUIRED_USE="test? ( jpeg )"
-
-RDEPEND="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 )"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/tiffconf.h
-)
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.5.0_rc1-skip-tools-tests-multilib.patch
- "${FILESDIR}"/${PN}-4.5.0-CVE-2022-48281.patch
- "${FILESDIR}"/${PN}-4.5.0-CVE-2023-0795-CVE-2023-0796-CVE-2023-0797-CVE-2023-0798-CVE-2023-0799.patch
- "${FILESDIR}"/${PN}-4.5.0-CVE-2023-0800-CVE-2023-0801-CVE-2023-0802-CVE-2023-0803-CVE-2023-0804.patch
-)
-
-src_prepare() {
- default
-
- # Added to fix cross-compilation
- #elibtoolize
-
- # For skip-tools-tests-multilib.patch
- eautoreconf
-}
-
-multilib_src_configure() {
- append-lfs-flags
-
- local myeconfargs=(
- --disable-sphinx
- --without-x
- --with-docdir="${EPREFIX}"/usr/share/doc/${PF}
- $(use_enable cxx)
- $(use_enable jbig)
- $(use_enable jpeg)
- $(use_enable lzma)
- $(use_enable static-libs static)
- $(use_enable test tests)
- $(use_enable webp)
- $(use_enable zlib)
- $(use_enable zstd)
-
- $(multilib_native_enable docs)
- $(multilib_native_enable contrib)
- $(multilib_native_enable tools)
- )
-
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name '*.la' -delete || die
- rm "${ED}"/usr/share/doc/${PF}/{README*,RELEASE-DATE,TODO,VERSION} || die
-}
diff --git a/media-libs/zxing-cpp/Manifest b/media-libs/zxing-cpp/Manifest
index dcd845997df3..35b44d6d4eca 100644
--- a/media-libs/zxing-cpp/Manifest
+++ b/media-libs/zxing-cpp/Manifest
@@ -1,10 +1,11 @@
AUX zxing-cpp-2.2.1-cmake.patch 842 BLAKE2B edcda3cda092597c54cdb1873ccd5b5187817f08d58a78a18415943756e7f432b54bf012e009626ceb7873d459b51970d9bd2c75a08424ab2ca17e169aa973cd SHA512 fb37b4ee81538f4ea524bfe274440c43c06365cbe8e6db2284ef4bb1f005b6ff61cc357d19b049c7ebba6e9afd363585932ae462680648aab6c1ed96d6d0e6b7
AUX zxing-cpp-2.2.1-cxx20.patch 1033 BLAKE2B 47866787c62a18fa7424a70775ccf184432aa3cf49f8cd3db83b6974eadd498fa6b2831c6aa4d3f12134f9e8dd84010faee45943dfdccff8e88535034b9aab6a SHA512 90d2f6e41607f016e95e7e7f66251507c909e58dc3f589115244253276d8dd7607989c60f80ea7441f0b91e47fca383ba851922d96300a322feb3163fbac2e4c
+AUX zxing-cpp-2.3.0-reverse-NDEBUG.patch 3178 BLAKE2B 0eef893b3e4f5bb7783ae795e7aaf4b72fc2d66a39c3268ca9680e9383ec5278964a28b3e26239c24784ace1df75f8a9a9d56cc8ac01f9a26aa6b87075733a42 SHA512 215fe8af5c6dead7759f38adfe8bb8d8f9911261549a89b6fc4c727d02325e211507f8f75ba6fa87562b42aac9e5cc03a4a207950e80a1458be3f9b4b94050c2
DIST zxing-cpp-2.2.1-test-samples.tar.gz 97082308 BLAKE2B bcea839f766e5696bcaab58d1483e43ef3d4b504979ea4db3114236853db92c64f7079ed91977a158cda745d8a08c0c249bf1b10382daf5a9816bf4280b95092 SHA512 4de268d36a337d233a60eed477e8421294d42f357534f21aba9574ec929809a4666fe7a55e3b3ac1518460aedfbb0d615659cc0a170e3685790745066339b064
DIST zxing-cpp-2.2.1.tar.gz 891055 BLAKE2B c6a3343cd0389d930e83dd9db4d6aeca6d4dda715c22c0b10dd76460e9d55bdd8e994c2ac24ba5d5a4f5e2069fcb035b2e4651a380b6b39bcce4b90d0c754df8 SHA512 f1de8df783061a152a18cd9102ac0c579c40c76ab4a5ba9f30bcb8ddb532f3fac08736840a631adbf7c30a7fa00ce8d65625c8cd695288620601708e8f256a53
DIST zxing-cpp-2.3.0-test-samples.tar.gz 97053504 BLAKE2B f8b3ca418885731bbd0c551b7c061e9ff8d7ac20cb4464abb0c2496f1235fed78826420f139666e73af53612ab87dc551f228e1e05c934b4a08a22c3da069def SHA512 6c2bbad7a6229075f9cb0ccaa4f2bcddbf586baf15a2fb71a10fbddc6e591a33d08c737149c0688dd64c5b0fff1328bbd4975eba0e6ffd56b12d61f47469ae4a
DIST zxing-cpp-2.3.0.tar.gz 1008541 BLAKE2B a0c94e1c276759e032695918f1d177e32b3ac4d1c60085872210ef9c97f2cc0c95a54972d18ec971bc6733ea9531be15d5155011ff8893e39706acd8d5c9a7bd SHA512 be1c60a6b433c18f8dab56619553023370bfd3eddf49b0e16548466e1ebc2f1f37b48e0b36c2e74296a7274c4f0117d7052f1ffd7d1223d23e493451a11b4a80
EBUILD zxing-cpp-2.2.1-r1.ebuild 1113 BLAKE2B 44bac8b78b5fec4fed499578a0e1cc622abe94ab4b1ddcd026db18530757c2edafa9eb2f01096c37bc16f340a64daa1d942fcfa768935c735d87968f45f607a4 SHA512 5b8a1c1318545e9e8b6a1432ca67a4aa0dd3da60697abce5b52854fdbc4051d9958f5a287a9f5be819c4561458447ed941b265c8db1e3b48bcb97fc0586525d7
EBUILD zxing-cpp-2.2.1.ebuild 765 BLAKE2B 6d4754e55c03051d507b124d36a52adfbce81d7aa0d1c477ad4a5ed0a5694d0b43a4fcc6c932bd6086a3080a4cbf1114b4743996f48925861ea688934b919fcf SHA512 31218574b93f51eb72d471b312a1b321d632a0d2de1d38094e314d1d4e65f0ce8ba92cbdd56e0a5334a209242091c3a790f29b10b233f7d296e117325f3676e2
-EBUILD zxing-cpp-2.3.0.ebuild 1317 BLAKE2B cfe3dae95157d86f5656d9eac2fc65c470e3d32dc136d5b7c4d5d843f7b534a01e3a59b321b0073146bbc6b5488ab8617fddb5a0fadf00452f3c394a685d21e6 SHA512 75ff0de603147e5510f9fac9d10060bfd21eb260bfcb0ced77820213087b2e9fa4b74d65a32051bf20b77d2611297248a614a9d909c9a9d9821ec5fbf6266567
+EBUILD zxing-cpp-2.3.0-r1.ebuild 1382 BLAKE2B 531c111c8adde2b232ddd6305869c291adf1828b004973348f868987c3c217f4e0ed9ff41550ac23bb973b91adb456e1ef3d6f11c306c7d781521cb666cf39af SHA512 a3b482b7ef52b4b111884a1ff3f60197f4e949873dcede448f29e054f5d9d89c58094435a7a048df50f51fb676bbe7fafb448035cc0dccd5116eea4ae78869cd
MISC metadata.xml 444 BLAKE2B 8279b511be23858c1a6fe42181d63e6430986f0df5e27701444acdf6fbfefa6541143ade57079c3255ad3b2e99edf7a5905f3f71a66e642248c5a1fb0440153d SHA512 d4b24b56f9a01bcc2dabe5efe03323f09f7fe5f0eb2c28331958a63cea036282958f91bee0463530bccfea1d092eb541109245443019dd6d6b13e4bcba05c1f5
diff --git a/media-libs/zxing-cpp/files/zxing-cpp-2.3.0-reverse-NDEBUG.patch b/media-libs/zxing-cpp/files/zxing-cpp-2.3.0-reverse-NDEBUG.patch
new file mode 100644
index 000000000000..e9ffa0d041e1
--- /dev/null
+++ b/media-libs/zxing-cpp/files/zxing-cpp-2.3.0-reverse-NDEBUG.patch
@@ -0,0 +1,88 @@
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1095196
+https://bugs.kde.org/show_bug.cgi?id=498240
+https://github.com/zxing-cpp/zxing-cpp/issues/900
+
+From 82806f5f92173b8cb4e1e9bee13a2d07a33fb69f Mon Sep 17 00:00:00 2001
+From: axxel <awagger@gmail.com>
+Date: Sun, 5 Jan 2025 23:41:29 +0100
+Subject: [PATCH] c++: fix improper use of NDEBUG
+
+Thanks to Antonio Rojas for pointing it out to me.
+--- a/core/src/HybridBinarizer.cpp
++++ b/core/src/HybridBinarizer.cpp
+@@ -143,7 +143,7 @@ static std::shared_ptr<BitMatrix> CalculateMatrix(const uint8_t* __restrict lumi
+ {
+ auto matrix = std::make_shared<BitMatrix>(width, height);
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ Matrix<uint8_t> out(width, height);
+ Matrix<uint8_t> out2(width, height);
+ #endif
+@@ -163,7 +163,7 @@ static std::shared_ptr<BitMatrix> CalculateMatrix(const uint8_t* __restrict lumi
+ int average = sum / 25;
+ ThresholdBlock(luminances, xoffset, yoffset, average, rowStride, *matrix);
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ for (int yy = 0; yy < 8; ++yy)
+ for (int xx = 0; xx < 8; ++xx) {
+ out.set(xoffset + xx, yoffset + yy, blackPoints(x, y));
+@@ -173,7 +173,7 @@ static std::shared_ptr<BitMatrix> CalculateMatrix(const uint8_t* __restrict lumi
+ }
+ }
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ std::ofstream file("thresholds.pnm");
+ file << "P5\n" << out.width() << ' ' << out.height() << "\n255\n";
+ file.write(reinterpret_cast<const char*>(out.data()), out.size());
+@@ -260,7 +260,7 @@ static std::shared_ptr<BitMatrix> ThresholdImage(const ImageView iv, const Matri
+ {
+ auto matrix = std::make_shared<BitMatrix>(iv.width(), iv.height());
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ Matrix<uint8_t> out(iv.width(), iv.height());
+ #endif
+
+@@ -270,7 +270,7 @@ static std::shared_ptr<BitMatrix> ThresholdImage(const ImageView iv, const Matri
+ int xoffset = std::min(x * BLOCK_SIZE, iv.width() - BLOCK_SIZE);
+ ThresholdBlock(iv.data(), xoffset, yoffset, thresholds(x, y), iv.rowStride(), *matrix);
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ for (int yy = 0; yy < 8; ++yy)
+ for (int xx = 0; xx < 8; ++xx)
+ out.set(xoffset + xx, yoffset + yy, thresholds(x, y));
+@@ -278,7 +278,7 @@ static std::shared_ptr<BitMatrix> ThresholdImage(const ImageView iv, const Matri
+ }
+ }
+
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ std::ofstream file("thresholds_new.pnm");
+ file << "P5\n" << out.width() << ' ' << out.height() << "\n255\n";
+ file.write(reinterpret_cast<const char*>(out.data()), out.size());
+--- a/core/src/oned/ODDataBarCommon.h
++++ b/core/src/oned/ODDataBarCommon.h
+@@ -37,7 +37,7 @@ inline bool IsFinder(int a, int b, int c, int d, int e)
+ // (c < 5 + 10 * e) &&
+ (a < 2 + 4 * e) &&
+ (4 * a > n);
+-#if !defined(NDEBUG) && 0
++#if defined(PRINT_DEBUG) && 0
+ printf("[");
+ for (bool v :
+ {w + 5 > 9 * n,
+--- a/test/unit/datamatrix/DMEncodeDecodeTest.cpp
++++ b/test/unit/datamatrix/DMEncodeDecodeTest.cpp
+@@ -21,7 +21,7 @@ namespace {
+ ASSERT_EQ(matrix.empty(), false);
+
+ DecoderResult res = DataMatrix::Decode(matrix);
+-#ifndef NDEBUG
++#ifdef PRINT_DEBUG
+ if (!res.isValid() || data != res.text())
+ SaveAsPBM(matrix, "failed-datamatrix.pbm", 4);
+ #endif
diff --git a/media-libs/zxing-cpp/zxing-cpp-2.3.0.ebuild b/media-libs/zxing-cpp/zxing-cpp-2.3.0-r1.ebuild
index 8ba734404437..01d12af67225 100644
--- a/media-libs/zxing-cpp/zxing-cpp-2.3.0.ebuild
+++ b/media-libs/zxing-cpp/zxing-cpp-2.3.0-r1.ebuild
@@ -35,6 +35,10 @@ DEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}"/zxing-cpp-2.3.0-reverse-NDEBUG.patch
+)
+
src_prepare() {
if use test ; then
ln -s "${WORKDIR}"/test/samples "${S}"/test/samples || die