From 4418da21bd05d610a3450f4aa75481785ca372a0 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 27 Feb 2025 19:26:40 +0000 Subject: gentoo auto-resync : 27:02:2025 - 19:26:39 --- media-libs/Manifest.gz | Bin 69953 -> 69793 bytes media-libs/lerc/Manifest | 2 +- media-libs/lerc/lerc-4.0.0.ebuild | 2 +- media-libs/libva-intel-media-driver/Manifest | 2 + .../libva-intel-media-driver-25.1.2.ebuild | 57 ++++ media-libs/mesa/Manifest | 2 +- media-libs/mesa/mesa-9999.ebuild | 2 +- media-libs/taglib-extras/Manifest | 6 - .../files/taglib-extras-1.0.1-taglib110.patch | 28 -- .../files/taglib-extras-1.0.1-taglib2.patch | 283 ------------------ media-libs/taglib-extras/metadata.xml | 11 - .../taglib-extras/taglib-extras-1.0.1-r1.ebuild | 20 -- .../taglib-extras/taglib-extras-1.0.1-r2.ebuild | 23 -- media-libs/tiff/Manifest | 6 +- .../tiff/files/tiff-4.7.0-fix-test-race.patch | 30 ++ .../tiff-4.7.0-test-directory-big-endian.patch | 328 +++++++++++++++++++++ media-libs/tiff/tiff-4.7.0-r1.ebuild | 7 +- media-libs/tiff/tiff-4.7.0.ebuild | 4 +- 18 files changed, 434 insertions(+), 379 deletions(-) create mode 100644 media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.2.ebuild delete mode 100644 media-libs/taglib-extras/Manifest delete mode 100644 media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib110.patch delete mode 100644 media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib2.patch delete mode 100644 media-libs/taglib-extras/metadata.xml delete mode 100644 media-libs/taglib-extras/taglib-extras-1.0.1-r1.ebuild delete mode 100644 media-libs/taglib-extras/taglib-extras-1.0.1-r2.ebuild create mode 100644 media-libs/tiff/files/tiff-4.7.0-fix-test-race.patch create mode 100644 media-libs/tiff/files/tiff-4.7.0-test-directory-big-endian.patch (limited to 'media-libs') diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz index aecf1808477d..f9efb3737ac6 100644 Binary files a/media-libs/Manifest.gz and b/media-libs/Manifest.gz differ diff --git a/media-libs/lerc/Manifest b/media-libs/lerc/Manifest index af4915ae2fba..c5b7bd2ad91b 100644 --- a/media-libs/lerc/Manifest +++ b/media-libs/lerc/Manifest @@ -1,3 +1,3 @@ DIST lerc-4.0.0.tar.gz 4710408 BLAKE2B b4c593ab2d28ad4c03149267db7d181462bc2977f6c908c88e7f769fed720be900936550e27cecfe32ee16b410c8a7885c1e509ae26717b5719e602922de305a SHA512 36fe453b6e732f6bed554d1c1c5cd4668aec63593d6de11f12b659c7b9cbc059ac9aaacc6cea483b3257d522f1b07e13c299914d08b1f8aeb0bb2cde42ba47cf -EBUILD lerc-4.0.0.ebuild 369 BLAKE2B d76e622b583ab2bccbe58944a17c79406165bce7978267fbae7e576c30a43b2acde30dc98db9c4de54ec0d74edb1269d0214dee6dcaf63f36760b037e6d9dc01 SHA512 5a62acd731a084a792f232c59c088dae1986700c572fce1c6221d5e6d5a110389c742128d507216445aa1a268c4f82aee766ef5f380f3d898d63cce8efeeaef0 +EBUILD lerc-4.0.0.ebuild 373 BLAKE2B cc4436b455527018a02b66ad8d70195a690201db7d4aea66093b81b3025f34d2c239f9658e99ca660f5d12e4900d3f900622dd4dad6cc7e017cbbafdd8e7b258 SHA512 f2e9aa3166106fcc1f8b5e6f4b74e755df246ebc52dbeb831834903d4a6300ef99480cbf101f737c570ac5db13bec17f27ca23cde3e32efc7500191f75965481 MISC metadata.xml 1013 BLAKE2B 7801443f012e1eaaedf3a7208ffb151dac6ca5226fb7872ade15a04c2d0290c0dbad36b74e566ad54772c0252d2f2472626db5d749a33d4f90350787e9dd8e98 SHA512 7b8c3516fe2000ed9965d5382d2eca90ac8247cd4bd44754a05574ae86c6da4c7fb4581cb08aa1d0b344d6624c45a81a42de7e8e8a468f3d4db07aac553739da diff --git a/media-libs/lerc/lerc-4.0.0.ebuild b/media-libs/lerc/lerc-4.0.0.ebuild index be7782337811..070a9bda6209 100644 --- a/media-libs/lerc/lerc-4.0.0.ebuild +++ b/media-libs/lerc/lerc-4.0.0.ebuild @@ -11,4 +11,4 @@ SRC_URI="https://github.com/Esri/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.t LICENSE="Apache-2.0" SLOT="0/4" -KEYWORDS="amd64" +KEYWORDS="amd64 x86" diff --git a/media-libs/libva-intel-media-driver/Manifest b/media-libs/libva-intel-media-driver/Manifest index 54ca8394fb98..f3a69b329537 100644 --- a/media-libs/libva-intel-media-driver/Manifest +++ b/media-libs/libva-intel-media-driver/Manifest @@ -4,8 +4,10 @@ AUX libva-intel-media-driver-24.4.4-c23-fix.patch 529 BLAKE2B d900912b2239c57ec1 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 +DIST intel-media-25.1.2.tar.gz 28258215 BLAKE2B a3ca71d049f3a56d2e11f45009cfccc6fab7530449a4890b4082c2f4e1263e980b6d0717a2f2703290977886343b33122f88689e33814bb59405d21b09fedbe0 SHA512 ef8516c5a90ffc10199214d79a4725825ddd0e9050255c7ec6a7f118256a62b1faab28c301c8d64ee25cde137ed48500010c1b78a4aee105d5aa59b6ba6f346b EBUILD libva-intel-media-driver-24.4.4-r1.ebuild 1553 BLAKE2B 8a00e4f58d7a1b69ed18c191a03d1342bbd330af9fd76c66953ea7d5d343e3c56be2732390fa4598dfcbc271bda5709b0d0df20af478f76ebba5672af311c49f SHA512 9d2241aab18bcab1430901a8bbfa501bdd5e28a31df264579108382e309589e961d66beb29f0a1d60ef0f4905b8019ed4d5bce558a45d94fdbe42b777a8b9a87 EBUILD libva-intel-media-driver-25.1.0.ebuild 1512 BLAKE2B 761266db69786809a3d777d5ef5c8698a5da93f5639b53227446a1ac5fc9f63a20a21ba4fe6e03495e05796b3f9cd768f68907f123a7a7fa49f6aa5ee1d3c01a SHA512 e1c28b94142609cf8b4eb29e18ba461ccb5fdf9b6a0b141a406b2ec0457d699faf06592d3d2eca4459c48b575e62b5bc0fc8387570bd7adf8902c635aa89ee0b EBUILD libva-intel-media-driver-25.1.1.ebuild 1512 BLAKE2B 761266db69786809a3d777d5ef5c8698a5da93f5639b53227446a1ac5fc9f63a20a21ba4fe6e03495e05796b3f9cd768f68907f123a7a7fa49f6aa5ee1d3c01a SHA512 e1c28b94142609cf8b4eb29e18ba461ccb5fdf9b6a0b141a406b2ec0457d699faf06592d3d2eca4459c48b575e62b5bc0fc8387570bd7adf8902c635aa89ee0b +EBUILD libva-intel-media-driver-25.1.2.ebuild 1512 BLAKE2B 761266db69786809a3d777d5ef5c8698a5da93f5639b53227446a1ac5fc9f63a20a21ba4fe6e03495e05796b3f9cd768f68907f123a7a7fa49f6aa5ee1d3c01a SHA512 e1c28b94142609cf8b4eb29e18ba461ccb5fdf9b6a0b141a406b2ec0457d699faf06592d3d2eca4459c48b575e62b5bc0fc8387570bd7adf8902c635aa89ee0b EBUILD libva-intel-media-driver-9999.ebuild 1512 BLAKE2B 761266db69786809a3d777d5ef5c8698a5da93f5639b53227446a1ac5fc9f63a20a21ba4fe6e03495e05796b3f9cd768f68907f123a7a7fa49f6aa5ee1d3c01a SHA512 e1c28b94142609cf8b4eb29e18ba461ccb5fdf9b6a0b141a406b2ec0457d699faf06592d3d2eca4459c48b575e62b5bc0fc8387570bd7adf8902c635aa89ee0b MISC metadata.xml 565 BLAKE2B e630d474342839898d53aef1849b002ef651c9f4fe3bfcfe72e809012e6c65153b1a6c14db922a45440ffd5717b90dddd6973185f8a625906e9d5571e50728d9 SHA512 22227f8a9cc39fff74f0bf2cdc8953f110e94ce0ab107076269d604c3cf8ae46c8496c9bcf47598e351cb9714e427f213ade5e446a5e8c67acfc87db5530b370 diff --git a/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.2.ebuild b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.2.ebuild new file mode 100644 index 000000000000..a27f472ef10b --- /dev/null +++ b/media-libs/libva-intel-media-driver/libva-intel-media-driver-25.1.2.ebuild @@ -0,0 +1,57 @@ +# 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.6.0:=[${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 +) + +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/mesa/Manifest b/media-libs/mesa/Manifest index f23262a01983..7dd5e8362767 100644 --- a/media-libs/mesa/Manifest +++ b/media-libs/mesa/Manifest @@ -11,5 +11,5 @@ DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542d EBUILD mesa-24.1.7-r1.ebuild 13769 BLAKE2B cbdd0130cb55c039d1d81d67eeb2b0b8493fe25db50f938f08e2e437b3e0b0a9d50d2c6250bee66f081b7a3577da3ffab810ba636e8ebfe450a7e7c7b8dc8a7b SHA512 dd1de43ecd26536b96d753a479d509667382243ed536edd3c181207bd4b7fc1528d7ab53a3d491659a0866d4b9d4c90f06e5c5a61f4e3353a0f3fbb4ec81d90e EBUILD mesa-24.3.4-r1.ebuild 13759 BLAKE2B 3b331a6b0b6533d1ed32678445bbe5faa88e8d2dc029f00884c2f4e5fb93d35a52075dd70cd9ab69766585322375f67c686a6adb19e05684ef5bd23945155cda SHA512 f957cc0aa810a306e6a292583d38de41bdaee5107a3bd982fb85eed0413c32fd5853601e393276b52b1f215a1b622e41acf8fa5657ff989257b84316d476e0f4 EBUILD mesa-25.0.0.ebuild 13758 BLAKE2B f590cfc8e5a3ca7403e2fa10f2598b9ddc73673e0df6ebf74add31eba52de2518932711eb4ead43fcf62857ec4812594544dee33935e76d8820ab0a41eb74909 SHA512 5e5afed4ab3e90bac5ae6b30aa0132ccff2e3f972d751a4b4a034217e569102192a1d20b69586ec0ee89e7ccac131e75e7b8025e7714cc21e2a42c6042f5feba -EBUILD mesa-9999.ebuild 13783 BLAKE2B 4814e40fcc71ecba6abb88531bedb71691dec5081a976886aa6ef098eeb70f399c1394882d896160693893252db669c43cbe6ebc76e08c2601bd2ce040a0480e SHA512 3236a27fedc49f63087ebe1ea524d73eb75b9367a28a2b94754036928a3240d5a5e4d8f593891fc21f5503b0143fa38fa235178209f82cac5132f333fd23bdd1 +EBUILD mesa-9999.ebuild 13783 BLAKE2B c343920d7fd7b8518e27ea06a67c4be0dbcce192a491daf6401f20f2062dbc4bab74dae780264318a07b0f9fb83557435ecb85d87614f86583275c41b53e191d SHA512 de7d748dccfb0d4274f47d6e92ea3378c83edb1bdfb55ab0a36bfbbba12985d20cf51df4ca9efcea8ba1c1edd76df5d5ceb9d3a5b9bb1b0a8c82b4135507d30f MISC metadata.xml 1303 BLAKE2B 348e84a15156bd8ae4634c1866f83f1b283b77f8478e66e57dd3f047a6346d1cc67a7c808ce159b82d292dfab62e8b6c4d17cefcae7aea6fa38739667947258b SHA512 448c3d73ded90117f38cec7c80eead4bdac1599c563798c91c96bca8543b9db2e5c2a06f26f9b7496af085a964aff51ed8b0882aa88f18404b64447de2f65598 diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild index 004565b3e787..7eece800ac5c 100644 --- a/media-libs/mesa/mesa-9999.ebuild +++ b/media-libs/mesa/mesa-9999.ebuild @@ -151,7 +151,7 @@ RDEPEND="${RDEPEND} 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 ) + wayland? ( >=dev-libs/wayland-protocols-1.41 ) X? ( x11-libs/libXrandr[${MULTILIB_USEDEP}] x11-base/xorg-proto diff --git a/media-libs/taglib-extras/Manifest b/media-libs/taglib-extras/Manifest deleted file mode 100644 index 9e22e22c377f..000000000000 --- a/media-libs/taglib-extras/Manifest +++ /dev/null @@ -1,6 +0,0 @@ -AUX taglib-extras-1.0.1-taglib110.patch 1221 BLAKE2B 9777a4031c09284fa959ced28e356af87de9c7799dea5f01c7674ef7cff0bd86320db694d27d5327692414fbc85ffb8bc8f898a4d1a1d900f6411e02ac25f2de SHA512 1099cd225ed9b248b71d10d4526272e2cc4df8a3f86f0bf464e21b10ff1166576f7e06763fe19a1b1caedc3711f5832dd0270d27d25d793437dba8c9b6fabbbf -AUX taglib-extras-1.0.1-taglib2.patch 12515 BLAKE2B db7a75c403a0873e90d8ba6925195d030d78ff1bf4044fe074173ee8af9b49ff1d3454ab142c2819ac67a60f3d4e9deb01ca1e2f0c0d6cb27821957d01ae9a5a SHA512 5c6a37cf281e777bafa63ead4cb73cd7695994cb2dcc791917bd23c93af6d342d102f25c350979a2854851b0b74a39a0d83b3b80c01d430c8bba18faee2b4b2e -DIST taglib-extras-1.0.1.tar.gz 31363 BLAKE2B 19150c26d06fad281f172c7f360155ced709d461b26431adf3a02d34cf029237855b21980b0bd2de026420a3f3a45bb0bc9fde3a5f6091f1219eff51a55f9b56 SHA512 282f9c9cde81a250d8d6f4416658167665044d53cd10d8ecfa490df60a1fb95e1309feb17f69963f8dbfccc83ebb76af7275c25339931117435f34a56c4f1a65 -EBUILD taglib-extras-1.0.1-r1.ebuild 500 BLAKE2B 6f35cee36a8b090dd64e6a5f86276cff35940a5b3ff4ce017e267b4c3b8473176c6205bd280b77faf5533b1d26003774a108f7d6cb56b9bfdf7fa442e9992420 SHA512 6e8a23bb57a7a3d5e2d680900b5e55cdbed6c4e81a4aaadfe2847dda32354b9c632f3b12b12462296b4b0f1082d76576ccd59dadeac85d42cc5f96818c84151b -EBUILD taglib-extras-1.0.1-r2.ebuild 540 BLAKE2B 3a95fadf4c4381c2f9d24b26cbcdc165c8edfde59e221f3871149264df9e5ac0708685d42ae1b1c72b4e2f1d61159979f200b09db3f411a74d83f21b4e9dc403 SHA512 314369cc9692fb0189286902af12da9d891f54fbb0984c152c0464dd57880b4016c2cf81e7139e1a8c9aa432be5cb4dc45180fc54009a1488f71aa0f59c79e0f -MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6 diff --git a/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib110.patch b/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib110.patch deleted file mode 100644 index 87f297511413..000000000000 --- a/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib110.patch +++ /dev/null @@ -1,28 +0,0 @@ -Fixes build with taglib-1.10 - -Gentoo-bug: 571072 - ---- a/cmake/modules/FindTaglib.cmake 2015/11/16 18:32:25 1444332 -+++ b/cmake/modules/FindTaglib.cmake 2015/11/16 19:05:39 1444333 -@@ -29,10 +29,10 @@ - - exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION) - -- if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") -+ if("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION) - message(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}") - set(TAGLIB_FOUND FALSE) -- else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") -+ else("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION) - - exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES) - -@@ -42,7 +42,7 @@ - set(TAGLIB_FOUND TRUE) - endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS) - string(REGEX REPLACE " *-I" ";" TAGLIB_INCLUDES "${TAGLIB_CFLAGS}") -- endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}") -+ endif("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION) - mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES) - - else(TAGLIBCONFIG_EXECUTABLE) 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 deleted file mode 100644 index 5a52b84ecca6..000000000000 --- a/media-libs/taglib-extras/files/taglib-extras-1.0.1-taglib2.patch +++ /dev/null @@ -1,283 +0,0 @@ -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/metadata.xml b/media-libs/taglib-extras/metadata.xml deleted file mode 100644 index d925f2439758..000000000000 --- a/media-libs/taglib-extras/metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - kde@gentoo.org - Gentoo KDE Project - - - https://bugs.kde.org/ - - diff --git a/media-libs/taglib-extras/taglib-extras-1.0.1-r1.ebuild b/media-libs/taglib-extras/taglib-extras-1.0.1-r1.ebuild deleted file mode 100644 index 5922b954ae99..000000000000 --- a/media-libs/taglib-extras/taglib-extras-1.0.1-r1.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 1999-2022 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 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 deleted file mode 100644 index 9dc52b5511f7..000000000000 --- a/media-libs/taglib-extras/taglib-extras-1.0.1-r2.ebuild +++ /dev/null @@ -1,23 +0,0 @@ -# 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/tiff/Manifest b/media-libs/tiff/Manifest index d93a3d4ae1a1..87dd6604f381 100644 --- a/media-libs/tiff/Manifest +++ b/media-libs/tiff/Manifest @@ -2,6 +2,8 @@ AUX tiff-4.5.0-CVE-2022-48281.patch 496 BLAKE2B 08d90ff28e2e4338db3aa65b6fc0ee2e 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 @@ -14,6 +16,6 @@ EBUILD tiff-4.5.0-r2.ebuild 2858 BLAKE2B 3b1fb10b0b37f4a7ea7a19e9c7efa97ca736c7f 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 -EBUILD tiff-4.7.0-r1.ebuild 2703 BLAKE2B e57beadb3e5cea57cb129ce5c7b7ed69d5952e7c4b66d59a10ddadacb8f246563d28690f2d11a58a0772702f8467f9239136714c6bb3d0525f81a799a96bd284 SHA512 c74eef4e38222d0454cf7dcc7ca8c130648f6b82e2f8441518721fe4bff5f136308786a0a61a50c51810bc5e537241bcae20e33fd199c6e9b48cbabe3e749485 -EBUILD tiff-4.7.0.ebuild 2546 BLAKE2B e887bc36de86276a6da1250ba9fb47c98ae0a5a3c9019188673930dd62ee047bfa99d0a66da8272f65228a776cfc7aec9e82e7adf951e28bf4c6f35a010e7dde SHA512 9cbe3015a6d90b069cd240474ac22fa31dff392dac6e4fdeea4e5d2d788da676731ff5600a6715336bc454de6031635f8755255d541618a3fcf1414b4f6fa392 +EBUILD tiff-4.7.0-r1.ebuild 2820 BLAKE2B 83076f704afe27b3cab95a786b12993df64a3372562fd23fa463469b3c3b0a04be6a7c7d9f66dad294d304d7af995e87b06ffeb0b10e8d16159cbea3373adf04 SHA512 6a7c372421cf1f30f8da3147a752838ae38018cb82752fe249d900d12609f70da3196d78f9f76080ea6f5de16efdce672b2026c46dda73b6dbb4a4b477d8f315 +EBUILD tiff-4.7.0.ebuild 2611 BLAKE2B d31958355f25260f13671a1ec0efb5ca966d9ebe80c2df7392e78822d186bca95af649cf3ad718db80e9b3380d658f39bee68f259c548e217fce36d088606af1 SHA512 3a3d4963e884dcc0629bd22e81bee44d74b562a1a5744a381198b6623289e97ba921095f010816c4f84c3a13edb0da9bcd7810a683838fc0070a88ae681e6e93 MISC metadata.xml 722 BLAKE2B 0d24bf901d5d89dfa15aff1ae88c5b55defe7e596cc214fa89404b9012ea4e7a0f722e4c7095e5fe1c57d7d18921daf21125853ebc66c34a531f057b96e8a8a5 SHA512 b68eddf4baed5d883038605a8493721bf80ff6a85075e45cc74e972937e88a18aabb6a7e2c661d457bf21a628fa3447bb71ae2da0481c76bc84cf95ee58ae615 diff --git a/media-libs/tiff/files/tiff-4.7.0-fix-test-race.patch b/media-libs/tiff/files/tiff-4.7.0-fix-test-race.patch new file mode 100644 index 000000000000..3c26eb617b1b --- /dev/null +++ b/media-libs/tiff/files/tiff-4.7.0-fix-test-race.patch @@ -0,0 +1,30 @@ +https://gitlab.com/libtiff/libtiff/-/merge_requests/701 +https://bugs.gentoo.org/943020 + +From efadbbd8746d2c6c8129438716e2c1e8aeecafdb Mon Sep 17 00:00:00 2001 +From: Gabi Falk +Date: Wed, 26 Feb 2025 14:00:00 +0000 +Subject: [PATCH] test: Fix race condition in + {tiffcrop,tiffcp}-32bpp-None-jpeg.sh tests + +These tests used the same output path, which could cause failures +when run in parallel. These were the only tests with a conflicting +outfile= parameter. + +Link: https://bugs.gentoo.org/943020 +--- + test/tiffcrop-32bpp-None-jpeg.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/tiffcrop-32bpp-None-jpeg.sh b/test/tiffcrop-32bpp-None-jpeg.sh +index 9b0d1f5f..4a47f6ed 100755 +--- a/test/tiffcrop-32bpp-None-jpeg.sh ++++ b/test/tiffcrop-32bpp-None-jpeg.sh +@@ -2,6 +2,6 @@ + # Generated file, master is Makefile.am + . ${srcdir:-.}/common.sh + infile="$srcdir/images/32bpp-None-jpeg.tiff" +-outfile="o-tiffcp-32bpp-None-jpeg-YCbCr.tiff" ++outfile="o-tiffcrop-32bpp-None-jpeg-YCbCr.tiff" + f_test_convert "${TIFFCROP} -c jpeg" $infile $outfile + f_tiffinfo_validate $outfile diff --git a/media-libs/tiff/files/tiff-4.7.0-test-directory-big-endian.patch b/media-libs/tiff/files/tiff-4.7.0-test-directory-big-endian.patch new file mode 100644 index 000000000000..0eca0b69954f --- /dev/null +++ b/media-libs/tiff/files/tiff-4.7.0-test-directory-big-endian.patch @@ -0,0 +1,328 @@ +https://gitlab.com/libtiff/libtiff/-/issues/652 +https://gitlab.com/libtiff/libtiff/-/issues/656 +https://gitlab.com/libtiff/libtiff/-/merge_requests/673 + +From 388be62f9e2167ea076579e2605ff8eb91117ad6 Mon Sep 17 00:00:00 2001 +From: Su_Laus +Date: Wed, 30 Oct 2024 21:03:17 +0100 +Subject: [PATCH 1/3] Update test/test_directory.c not to fail on big-endian + machines. + +Closes #652 +--- a/test/test_directory.c ++++ b/test/test_directory.c +@@ -1986,9 +1986,12 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + #define TIFFSeekFile_M(tif, off, whence) \ + ((*TIFFGetSeekProc(tif))(TIFFClientdata(tif), (off), (whence))); + +- /* Code below does only handle Classic-TIFF without swapping". */ ++ /* Code below does only handle Classic-TIFF without swapping. */ + if (!(TIFFIsByteSwapped(tif) || TIFFIsBigTIFF(tif))) + { ++ /* Patch nextIFDOffset of IFD2, which is 0, with offset to itself. ++ * This generates an IFD3 without any elements at the end of file. ++ * Reading IFD3 should provoke reading error. */ + uint64_t ss = TIFFSeekFile_M(tif, offsetBase[2], 0); + uint16_t cnt = 0; + uint64_t rr = TIFFReadFile_M(tif, &cnt, 2); +@@ -1998,43 +2001,84 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + (void)rr; + + /* Now there are offsets to four IFDs in the file, where the last one is +- * not existing and has a non-valid dircount and entries behind EOF. */ ++ * not existing and has a non-valid dircount and entries behind EOF. ++ * For LE-machines dircount is 458 (as offset) and for BE-machines ++ * dircount is zero. */ ++#ifdef WORDS_BIGENDIAN ++ fprintf(stderr, "----- Expect error messages about 'Error fetching " ++ "directory count.' -----\n"); ++#else + fprintf(stderr, "----- Expect error messages about 'Error fetching " + "directory link.' -----\n"); ++#endif + /* TIFFNumberOfDirectories() returns 3 */ + lastdir = TIFFNumberOfDirectories(tif); + TIFFSetDirectory(tif, 0); + CHECKCURDIRNUM_M(tif, 0, __LINE__); ++ ++ /* TIFFSetDirectory(3) fails with error messages: ++ * TIFFFetchDirectory: test_current_dirnum_incrementing_wl.tif: ++ * Can not read TIFF directory. ++ * TIFFReadDirectory: Failed to read directory at offset 458. */ + fprintf(stderr, "----- Expect error messages about 'Cannot read TIFF " + "directory.' -----\n"); + if (TIFFSetDirectory(tif, 3)) + { + fprintf(stderr, +- "TIFFSetDirectory(3) for IFD4 was expected to fail but " ++ "TIFFSetDirectory(3) for IFD3 was expected to fail but " + "succeeded for %s " + "at %d\n", + filename, __LINE__); + goto failure; + } ++ + /* Fails in 4.6.0 */ + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); + offsetBase[3] = TIFFCurrentDirOffset(tif); + +- /* Point IFD3 to a location within the file, where it has now a +- * non-valid dircount=0. */ ++ /* Point IFD3 to a location within the file, where it has now: ++ * - for LE-machines a non-valid dircount=0. ++ * - for BE-machines a dircount!=0 and dir is read with errors. */ + ss = TIFFSeekFile_M(tif, offsetBase[2] + cnt * 12 + 2, 0); + wt = (uint32_t)(offsetBase[1] + 8); + rr = TIFFWriteFile_M(tif, &wt, 4); ++ ++#ifdef WORDS_BIGENDIAN ++ fprintf(stderr, "----- Expect error messages about 'Error fetching " ++ "directory count.' -----\n"); ++#else + fprintf(stderr, "----- Expect error messages about 'Error fetching " + "directory link.' -----\n"); ++#endif + /* TIFFNumberOfDirectories() returns now 4 */ + lastdir = TIFFNumberOfDirectories(tif); + TIFFSetDirectory(tif, 0); + CHECKCURDIRNUM_M(tif, 0, __LINE__); ++ ++ /* For LE-machines the next TIFFSetDirectory(3) fails with error ++ * messages: ++ * test_current_dirnum_incrementing_wl.tif: Failed to allocate ++ * memory for to read TIFF directory (0 elements of 12 bytes each). ++ * TIFFReadDirectory: Failed to read directory at offset 178. ++ * ++ * For BE-machines, next TIFFSetDirectory(3) results in an error ++ * but that TIFFSetDirectory(3) sets the IFD active. Warning messages: ++ * TIFFReadDirectory: Warning, Unknown field with tag 1 (0x1) ++ * encountered. ++ * MissingRequired: TIFF directory is missing required ++ * "ImageLength" field. ++ */ ++#ifdef WORDS_BIGENDIAN ++ fprintf(stderr, ++ "----- Expect error messages about ' Unknown field with tag 1 " ++ "(0x1) encountered.' AND 'MissingRequired: TIFF directory is " ++ "missing required ImageLength field.' -----\n"); ++#else + fprintf(stderr, + "----- Expect error messages about 'Failed to allocate " + "memory for to read TIFF directory.' AND 'Failed to read " + "directory ..' -----\n"); ++#endif + if (TIFFSetDirectory(tif, 3)) + { + fprintf(stderr, +@@ -2044,8 +2088,13 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + filename, __LINE__); + goto failure; + } ++ + /* Fails in 4.6.0 */ ++#ifdef WORDS_BIGENDIAN ++ CHECKCURDIRNUM_M(tif, (tdir_t)(3), __LINE__); ++#else + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); ++#endif + } + + unlink(filename); +-- +GitLab + + +From e201cd9d944fb18afdb385668008b0eb9d84cc80 Mon Sep 17 00:00:00 2001 +From: Su_Laus +Date: Sat, 16 Nov 2024 10:33:04 +0100 +Subject: [PATCH 2/3] Replace "#ifdef WORDS_BIGENDIAN" by restricting test on + little-endian TIFF files with swapping of patch data for BE-machines. + +--- a/test/test_directory.c ++++ b/test/test_directory.c +@@ -1977,8 +1977,8 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + TIFFSetSubDirectory(tif, 0); + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); + +-/*-- Patch offset of IFD2 to not existing IFD3 without entries. +- * Thus TIFFFetchDirectory() will fail. --*/ ++ /*-- Patch offset of IFD2 to not existing IFD3 without entries. ++ * Thus TIFFFetchDirectory() will fail. --*/ + #define TIFFReadFile_M(tif, buf, size) \ + ((*TIFFGetReadProc(tif))(TIFFClientdata(tif), (buf), (size))); + #define TIFFWriteFile_M(tif, buf, size) \ +@@ -1986,8 +1986,15 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + #define TIFFSeekFile_M(tif, off, whence) \ + ((*TIFFGetSeekProc(tif))(TIFFClientdata(tif), (off), (whence))); + +- /* Code below does only handle Classic-TIFF without swapping. */ +- if (!(TIFFIsByteSwapped(tif) || TIFFIsBigTIFF(tif))) ++ /* --------------------------------------------------------------------- ++ * Test IFD index incrementing in case the functions return with certain ++ * errors. To provoke that errors, the file is patched by writing bytes ++ * directly into the file. Therefore, code below does only handle ++ * Classic-TIFF and little-endian files. ++ * The code works also on big endian machines, which have to swap some ++ * directly read/written values. ++ * --------------------------------------------------------------------- */ ++ if (!(TIFFIsBigEndian(tif) || TIFFIsBigTIFF(tif))) + { + /* Patch nextIFDOffset of IFD2, which is 0, with offset to itself. + * This generates an IFD3 without any elements at the end of file. +@@ -1995,23 +2002,22 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + uint64_t ss = TIFFSeekFile_M(tif, offsetBase[2], 0); + uint16_t cnt = 0; + uint64_t rr = TIFFReadFile_M(tif, &cnt, 2); ++ if (TIFFIsByteSwapped(tif)) ++ TIFFSwabShort(&cnt); + ss = TIFFSeekFile_M(tif, offsetBase[2] + cnt * 12 + 2, 0); + uint32_t wt = (uint32_t)ss; ++ if (TIFFIsByteSwapped(tif)) ++ TIFFSwabLong(&wt); + rr = TIFFWriteFile_M(tif, &wt, 4); + (void)rr; + + /* Now there are offsets to four IFDs in the file, where the last one is + * not existing and has a non-valid dircount and entries behind EOF. +- * For LE-machines dircount is 458 (as offset) and for BE-machines +- * dircount is zero. */ +-#ifdef WORDS_BIGENDIAN +- fprintf(stderr, "----- Expect error messages about 'Error fetching " +- "directory count.' -----\n"); +-#else ++ * (dircount is 458 (as offset) */ + fprintf(stderr, "----- Expect error messages about 'Error fetching " + "directory link.' -----\n"); +-#endif +- /* TIFFNumberOfDirectories() returns 3 */ ++ /* TIFFNumberOfDirectories() returns 3 and omits the invalid fourth IFD. ++ */ + lastdir = TIFFNumberOfDirectories(tif); + TIFFSetDirectory(tif, 0); + CHECKCURDIRNUM_M(tif, 0, __LINE__); +@@ -2033,52 +2039,41 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + } + + /* Fails in 4.6.0 */ ++ /* Reading invalid IFD 3 leads to an error and was not read in. ++ * Therefore, curdir shall be 65535 (non-existing directory) */ + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); + offsetBase[3] = TIFFCurrentDirOffset(tif); + +- /* Point IFD3 to a location within the file, where it has now: +- * - for LE-machines a non-valid dircount=0. +- * - for BE-machines a dircount!=0 and dir is read with errors. */ ++ /* Point IFD3 to a location within the file, where it has now for ++ * little-endian TIFF files a non-valid dircount=0, which leads also to ++ * an error and the IFD is not read in. */ + ss = TIFFSeekFile_M(tif, offsetBase[2] + cnt * 12 + 2, 0); + wt = (uint32_t)(offsetBase[1] + 8); ++ // wt = (uint32_t)(ss + 400); ++ if (TIFFIsByteSwapped(tif)) ++ TIFFSwabLong(&wt); + rr = TIFFWriteFile_M(tif, &wt, 4); + +-#ifdef WORDS_BIGENDIAN +- fprintf(stderr, "----- Expect error messages about 'Error fetching " +- "directory count.' -----\n"); +-#else + fprintf(stderr, "----- Expect error messages about 'Error fetching " + "directory link.' -----\n"); +-#endif +- /* TIFFNumberOfDirectories() returns now 4 */ ++ /* TIFFNumberOfDirectories() returns now 4, because for an IFD linked ++ * list dircount=0 is not treated as an error and there is an offset ++ * (=1) to a next IFD. Then, at the fifth IFD a link error occurs. */ + lastdir = TIFFNumberOfDirectories(tif); + TIFFSetDirectory(tif, 0); + CHECKCURDIRNUM_M(tif, 0, __LINE__); + +- /* For LE-machines the next TIFFSetDirectory(3) fails with error +- * messages: ++ /* TIFFSetDirectory(3) fails with error messages: + * test_current_dirnum_incrementing_wl.tif: Failed to allocate + * memory for to read TIFF directory (0 elements of 12 bytes each). + * TIFFReadDirectory: Failed to read directory at offset 178. +- * +- * For BE-machines, next TIFFSetDirectory(3) results in an error +- * but that TIFFSetDirectory(3) sets the IFD active. Warning messages: +- * TIFFReadDirectory: Warning, Unknown field with tag 1 (0x1) +- * encountered. +- * MissingRequired: TIFF directory is missing required +- * "ImageLength" field. ++ * The IFD 3 is not read in and curdir is set to 65535 (non-existing ++ * directory). + */ +-#ifdef WORDS_BIGENDIAN +- fprintf(stderr, +- "----- Expect error messages about ' Unknown field with tag 1 " +- "(0x1) encountered.' AND 'MissingRequired: TIFF directory is " +- "missing required ImageLength field.' -----\n"); +-#else + fprintf(stderr, + "----- Expect error messages about 'Failed to allocate " + "memory for to read TIFF directory.' AND 'Failed to read " + "directory ..' -----\n"); +-#endif + if (TIFFSetDirectory(tif, 3)) + { + fprintf(stderr, +@@ -2090,11 +2085,7 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + } + + /* Fails in 4.6.0 */ +-#ifdef WORDS_BIGENDIAN +- CHECKCURDIRNUM_M(tif, (tdir_t)(3), __LINE__); +-#else + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); +-#endif + } + + unlink(filename); +-- +GitLab + + +From b470af83d549e890e4ace55620405d06cff20ae5 Mon Sep 17 00:00:00 2001 +From: Su_Laus +Date: Mon, 18 Nov 2024 19:52:26 +0100 +Subject: [PATCH 3/3] Add two missing TIFFClose() in order to avoid memory + leaks. Closes #656 + +--- a/test/test_directory.c ++++ b/test/test_directory.c +@@ -1365,6 +1365,7 @@ int test_rewrite_lastdir_offset(unsigned int openMode) + filename, N_DIRECTORIES, count); + goto failure; + } ++ /* hint: file was closed by count_directories() */ + unlink(filename); + return 0; + +@@ -1511,6 +1512,8 @@ int test_lastdir_offset(unsigned int openMode) + } + } + } ++ /* hint: files are always closed by count_directories() and ++ * get_dir_offsets() */ + unlink(filename_optimized); + unlink(filename_non_optimized); + return 0; +@@ -2088,6 +2091,7 @@ int test_current_dirnum_incrementing(int testcase, unsigned int openMode) + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); + } + ++ TIFFClose(tif); + unlink(filename); + return 0; + +@@ -2176,6 +2180,7 @@ int test_curdircount_setting(unsigned int openMode) + CHECKCURDIRNUM_M(tif, (tdir_t)(-1), __LINE__); + } + ++ TIFFClose(tif); + unlink(filename); + return 0; + +-- +GitLab diff --git a/media-libs/tiff/tiff-4.7.0-r1.ebuild b/media-libs/tiff/tiff-4.7.0-r1.ebuild index 838fe7bab110..7ae0f0d5a033 100644 --- a/media-libs/tiff/tiff-4.7.0-r1.ebuild +++ b/media-libs/tiff/tiff-4.7.0-r1.ebuild @@ -21,7 +21,7 @@ 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" + 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 lerc libdeflate lzma opengl static-libs test webp zlib zstd" RESTRICT="!test? ( test )" @@ -50,6 +50,11 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/tiffconf.h ) +PATCHES=( + "${FILESDIR}"/${P}-fix-test-race.patch # bug#943020 + "${FILESDIR}"/${P}-test-directory-big-endian.patch +) + src_prepare() { default diff --git a/media-libs/tiff/tiff-4.7.0.ebuild b/media-libs/tiff/tiff-4.7.0.ebuild index e1c35e00870a..84d12692c130 100644 --- a/media-libs/tiff/tiff-4.7.0.ebuild +++ b/media-libs/tiff/tiff-4.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 @@ -45,6 +45,8 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/tiffconf.h ) +PATCHES=( "${FILESDIR}"/${P}-fix-test-race.patch ) # bug#943020 + src_prepare() { default -- cgit v1.2.3