commit:     b98534f3604d967cd45877e8c1752cd7116563ca
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Thu Oct 26 08:07:14 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 21 01:44:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b98534f3

media-libs/openexr: add 3.1.12, 3.2.2

Closes: https://bugs.gentoo.org/920528
Closes: https://bugs.gentoo.org/916514
Closes: https://bugs.gentoo.org/908257
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/34218
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/openexr/Manifest                        |   3 +
 .../files/openexr-3.2.1-bintests-iff-utils.patch   |  14 +++
 media-libs/openexr/openexr-3.1.12.ebuild           |  69 +++++++++++
 media-libs/openexr/openexr-3.2.2.ebuild            | 130 +++++++++++++++++++++
 4 files changed, 216 insertions(+)

diff --git a/media-libs/openexr/Manifest b/media-libs/openexr/Manifest
index ea41489d2b92..56482c59e738 100644
--- a/media-libs/openexr/Manifest
+++ b/media-libs/openexr/Manifest
@@ -1,3 +1,6 @@
 DIST openexr-3.1.11.tar.gz 20539852 BLAKE2B 
9d57362c656a646a5b909063ff57eccfacbc70929a802561c2be71b050e97e7087221f78110f2686fcc1ea960d87880ccdbcb57b474f635a3392f3fa169ef3c5
 SHA512 
ebbad4b22315522f43cafefca77cf92ce38cac87f024c8dc6429aed04a6dad1f0a3d717faaab39c4c3605e440442952acc4630c5393754ea138929be4ad8a0d4
 DIST openexr-3.1.5.tar.gz 20327926 BLAKE2B 
77ece3c62b34292d4714873149a5a54a47fe811e96f992f1082e7dca99ad7717649f937c2dd7b18011c4201f15056526fc4b706c4d2f1b7fa593b9f1ed6314bd
 SHA512 
01ef16eacd2dde83c67b81522bae87f47ba272a41ce7d4e35d865dbdcaa03093e7ac504b95d2c1b3a19535f2364a4f937b0e0570c74243bb1c6e021fce7b620c
 DIST openexr-3.1.7.tar.gz 20494812 BLAKE2B 
2cc03ed8da77f4a9523b7a0f55c78e78ab55f8f6de67cb68f1b2b4ad4b512448d80f39d60a0cc9eab451da35539027a573a0c6d6900e7f81b39f90703909b5af
 SHA512 
f72f5e728f10c06fca0172c9b4c1df752225c3aed7384b4eaa502f92f8547bb1df93fe96d4d132a81eb32b729cb9fd615be825aa6c5de78481d3038c0d47c4d5
+DIST openexr-3.1.12.tar.gz 20540857 BLAKE2B 
94a78e4e45f892b56f9a05cabad5cea999ff1844ff8569995f1f301e8599e0be1c214477f501f351c248eea141db22508eb764c1c91508399e69932026361c04
 SHA512 
0fce6a1322d74354a29ece9f9afeca1c4874c4d55079ec720f3ef21ab2ab950ec333f793f1ffad6634f57b40c4276af578b31ac8bc3e11856d7b903d5475e5eb
+DIST openexr-3.2.2.tar.gz 18825996 BLAKE2B 
535d7798263ee63cbb79981bfd5b8edf4805acd672b7f98457876b7017840263bd6f1491dc63afcd3a66751a73fbb8463764c85ba06c18d59839d9f25a6769db
 SHA512 
b6537a8218686bfad7e6d29ae087d0548624cce81308d31581d99b4b741de3223b22fb8748fe9223e4e3609761815bef5e1bcc55e06302aeaf25d9d9a6134bab
+DIST openexr-images-1.0.tar.gz 252222962 BLAKE2B 
d57c458dfbd1b08c964429022b6e08a3309bf11cbd43c64e271ebc620dae6dbe70636e5221f47dabd7fe2aa0806f2cf3f3c9b3f55fd7f45b0a34f3e62b6029e7
 SHA512 
c1c83a26cd326d0fcda824daccb0044abad46f29e1bd2ceb1c38bc62b3e71f0aeef126dddc4517eb1cb9f7c9d0fe234276a48a754bdb7c7823e9aee459d8670a

diff --git a/media-libs/openexr/files/openexr-3.2.1-bintests-iff-utils.patch 
b/media-libs/openexr/files/openexr-3.2.1-bintests-iff-utils.patch
new file mode 100644
index 000000000000..c5c699b489fe
--- /dev/null
+++ b/media-libs/openexr/files/openexr-3.2.1-bintests-iff-utils.patch
@@ -0,0 +1,14 @@
+diff --git a/src/test/bin/CMakeLists.txt b/src/test/bin/CMakeLists.txt
+index e53b879..ad0190d 100644
+--- a/src/test/bin/CMakeLists.txt
++++ b/src/test/bin/CMakeLists.txt
+@@ -3,6 +3,9 @@
+ 
+ if(BUILD_TESTING)
+ 
++  if(NOT OPENEXR_BUILD_TOOLS)
++    return()
++  endif()
+   find_package(Python3 COMPONENTS Interpreter)
+   if (NOT Python3_FOUND)
+     message(STATUS "Python3 not found: skipping bin tests")

diff --git a/media-libs/openexr/openexr-3.1.12.ebuild 
b/media-libs/openexr/openexr-3.1.12.ebuild
new file mode 100644
index 000000000000..71969a113652
--- /dev/null
+++ b/media-libs/openexr/openexr-3.1.12.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+MY_PN=OpenEXR
+
+DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries"
+HOMEPAGE="https://openexr.com/";
+SRC_URI="https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/30" # based on SONAME
+# -ppc -sparc because broken on big endian, bug #818424
+KEYWORDS="amd64 ~arm ~arm64 ~loong -ppc ~ppc64 ~riscv -sparc x86 ~amd64-linux 
~x86-linux ~x64-macos"
+IUSE="cpu_flags_x86_avx examples large-stack utils test threads"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       >=dev-libs/imath-3.1.6:=
+       sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/${PN}-3.1.1-0003-disable-failing-test.patch )
+DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md )
+
+src_prepare() {
+       # Fix path for testsuite
+       sed -e "s:/var/tmp/:${T}:" \
+               -i "${S}"/src/test/${MY_PN}Test/tmpDir.h || die "failed to set 
temp path for tests"
+
+       if use x86; then
+               eapply 
"${FILESDIR}"/${PN}-3.1.5-drop-failing-testDwaLookups.patch
+       fi
+
+       cmake_src_prepare
+}
+
+src_configure() {
+       if use x86; then
+               replace-cpu-flags native i686
+       fi
+
+       local mycmakeargs=(
+               -DBUILD_DOCS=OFF # needs sphinx_press_theme which we don't have 
in ::gentoo
+               -DBUILD_TESTING=$(usex test)
+               -DOPENEXR_BUILD_TOOLS=$(usex utils)
+               -DOPENEXR_ENABLE_LARGE_STACK=$(usex large-stack)
+               -DOPENEXR_ENABLE_THREADING=$(usex threads)
+               -DOPENEXR_INSTALL_EXAMPLES=$(usex examples)
+               -DOPENEXR_INSTALL_PKG_CONFIG=ON
+               -DOPENEXR_INSTALL_TOOLS=$(usex utils)
+               -DOPENEXR_USE_CLANG_TIDY=OFF # don't look for clang-tidy
+       )
+
+       use test && mycmakeargs+=( -DOPENEXR_RUN_FUZZ_TESTS=ON )
+
+       cmake_src_configure
+}
+
+src_install() {
+       use examples && docompress -x /usr/share/doc/${PF}/examples
+
+       cmake_src_install
+}

diff --git a/media-libs/openexr/openexr-3.2.2.ebuild 
b/media-libs/openexr/openexr-3.2.2.ebuild
new file mode 100644
index 000000000000..71b9a4937dcb
--- /dev/null
+++ b/media-libs/openexr/openexr-3.2.2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+MY_PN=OpenEXR
+
+DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries"
+HOMEPAGE="https://openexr.com/";
+SRC_URI="
+       
https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz
+       test? (
+               utils? (
+                       
https://github.com/AcademySoftwareFoundation/openexr-images/archive/refs/tags/v1.0.tar.gz
+                         -> openexr-images-1.0.tar.gz
+               )
+       )
+"
+
+LICENSE="BSD"
+SLOT="0/31" # based on SONAME
+# -ppc -sparc because broken on big endian, bug #818424
+KEYWORDS="~amd64 ~arm ~arm64 ~loong -ppc ~ppc64 ~riscv -sparc ~x86 
~amd64-linux ~x86-linux ~x64-macos"
+
+IUSE="cpu_flags_x86_avx doc examples large-stack utils test threads"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       app-arch/libdeflate
+       >=dev-libs/imath-3.1.6:=
+       doc? (
+               sys-apps/help2man
+               dev-python/sphinx-press-theme
+       )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.2.1-bintests-iff-utils.patch"
+)
+
+DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md )
+
+src_prepare() {
+       # Fix path for testsuite
+       sed -e "s:/var/tmp/:${T}:" \
+               -i "${S}"/src/test/${MY_PN}Test/tmpDir.h || die "failed to set 
temp path for tests"
+
+       sed -e "s:if(INSTALL_DOCS):if(OPENEXR_INSTALL_DOCS):" \
+               -i docs/CMakeLists.txt || die
+
+       if use x86; then
+               eapply 
"${FILESDIR}/${PN}-3.1.5-drop-failing-testDwaLookups.patch"
+       fi
+
+       cmake_src_prepare
+
+       if use test; then
+               if use utils; then
+                       IMAGES=(
+                               Beachball/multipart.0001.exr
+                               Beachball/singlepart.0001.exr
+                               Chromaticities/Rec709.exr
+                               Chromaticities/Rec709_YC.exr
+                               Chromaticities/XYZ.exr
+                               Chromaticities/XYZ_YC.exr
+                               LuminanceChroma/Flowers.exr
+                               LuminanceChroma/Garden.exr
+                               MultiResolution/ColorCodedLevels.exr
+                               MultiResolution/WavyLinesCube.exr
+                               MultiResolution/WavyLinesLatLong.exr
+                               MultiView/Adjuster.exr
+                               TestImages/GammaChart.exr
+                               TestImages/GrayRampsHorizontal.exr
+                               v2/LeftView/Balls.exr
+                               v2/Stereo/Trunks.exr
+                       )
+
+                       mkdir -p "${BUILD_DIR}/src/test/bin" || die
+
+                       for image in "${IMAGES[@]}"; do
+                               mkdir -p "${BUILD_DIR}/src/test/bin/$(dirname 
"${image}")" || die
+                               cp -a "${WORKDIR}/openexr-images-1.0/${image}" 
"${BUILD_DIR}/src/test/bin/$(dirname "${image}")/" || die
+                       done
+               fi
+       fi
+
+}
+
+src_configure() {
+       if use x86; then
+               replace-cpu-flags native i686
+       fi
+
+       local mycmakeargs=(
+               -DOPENEXR_CXX_STANDARD="17"
+
+               -DBUILD_SHARED_LIBS="yes"
+               -DBUILD_TESTING="$(usex test)"
+               -DBUILD_WEBSITE="no"
+
+               -DOPENEXR_BUILD_PYTHON="no"
+               -DOPENEXR_BUILD_TOOLS="$(usex utils)"
+               -DOPENEXR_ENABLE_LARGE_STACK="$(usex large-stack)"
+               -DOPENEXR_ENABLE_THREADING="$(usex threads)"
+
+               -DOPENEXR_INSTALL="yes"
+               -DOPENEXR_INSTALL_DOCS="$(usex doc "$(usex utils)")"
+               -DOPENEXR_INSTALL_EXAMPLES="$(usex examples)"
+               -DOPENEXR_INSTALL_PKG_CONFIG="yes"
+               -DOPENEXR_INSTALL_TOOLS="$(usex utils)"
+
+               -DOPENEXR_USE_CLANG_TIDY="no" # don't look for clang-tidy
+
+               -DOPENEXR_FORCE_INTERNAL_DEFLATE="no"
+               -DOPENEXR_FORCE_INTERNAL_IMATH="no"
+               -DOPENEXR_RUN_FUZZ_TESTS="$(usex test)" # NOTE expensive
+       )
+
+       cmake_src_configure
+}
+
+src_install() {
+       use examples && docompress -x "/usr/share/doc/${PF}/examples"
+
+       cmake_src_install
+}

Reply via email to