commit:     d770dfc52418ece702bbc35f007633341a6edc4a
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Tue Dec 17 13:03:48 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan  5 20:33:27 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d770dfc5

media-libs/openexr: add 3.3.2

Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/openexr/Manifest             |   1 +
 media-libs/openexr/openexr-3.3.2.ebuild | 146 ++++++++++++++++++++++++++++++++
 2 files changed, 147 insertions(+)

diff --git a/media-libs/openexr/Manifest b/media-libs/openexr/Manifest
index a8416e9c9951..d12a5a4deed2 100644
--- a/media-libs/openexr/Manifest
+++ b/media-libs/openexr/Manifest
@@ -1,2 +1,3 @@
 DIST openexr-3.2.4.tar.gz 18856440 BLAKE2B 
f29910b2e36808b741860bf603571f607ca929672b3c5b9de7c7c16242f2a38d02627614c10e7b01a8cfd8804923636eb0dfe2c798ec3ff63252dd20e3f8e535
 SHA512 
ecc3d8b206bda5e5897ac9cd797a8432b76981de10d49cbb107af2b4108c22186de0dda25a9a43b07e18d641ef71508445d95f659a4ca932e029d48ee029a492
+DIST openexr-3.3.2.tar.gz 21324765 BLAKE2B 
82e67953b75da0d27347260099ccae249f5b1946b78eccc383e9278f57565ed5cb9f0fa17385f0c5cdb3815d647197be3661372f9896e10596a8723ea3d8414b
 SHA512 
0c43337fda2979b328202488a43711afb5d680781c933aa0d74970a3dcda1135fbd01228cb10e81e4628c0d19da2d3e5b781e147d609cdc8a796d2a51a90932f
 DIST openexr-images-1.0.tar.gz 252222962 BLAKE2B 
d57c458dfbd1b08c964429022b6e08a3309bf11cbd43c64e271ebc620dae6dbe70636e5221f47dabd7fe2aa0806f2cf3f3c9b3f55fd7f45b0a34f3e62b6029e7
 SHA512 
c1c83a26cd326d0fcda824daccb0044abad46f29e1bd2ceb1c38bc62b3e71f0aeef126dddc4517eb1cb9f7c9d0fe234276a48a754bdb7c7823e9aee459d8670a

diff --git a/media-libs/openexr/openexr-3.3.2.ebuild 
b/media-libs/openexr/openexr-3.3.2.ebuild
new file mode 100644
index 000000000000..d6ecc839d9a0
--- /dev/null
+++ b/media-libs/openexr/openexr-3.3.2.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+MY_PN=OpenEXR
+
+DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries"
+HOMEPAGE="https://openexr.com/";
+SRC_URI="
+       
https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz
+       test? (
+               utils? (
+                       
https://github.com/AcademySoftwareFoundation/openexr-images/archive/refs/tags/v1.0.tar.gz
+                               -> openexr-images-1.0.tar.gz
+               )
+       )
+"
+
+LICENSE="BSD"
+SLOT="0/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"
+REQUIRED_USE="doc? ( utils )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       app-arch/libdeflate:=[zlib(+)]
+       >=dev-libs/imath-3.1.6:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       virtual/pkgconfig
+       doc? ( sys-apps/help2man )
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.2.1-bintests-iff-utils.patch"
+)
+
+DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md )
+
+src_prepare() {
+       # Fix path for testsuite
+       sed -e "s:/var/tmp/:${T}:" \
+               -i "${S}"/src/test/${MY_PN}Test/tmpDir.h || die "failed to set 
temp path for tests"
+
+       sed -e "s:if(INSTALL_DOCS):if(OPENEXR_INSTALL_DOCS):" \
+               -i docs/CMakeLists.txt || die
+
+       cmake_src_prepare
+
+       if use test && use utils; then
+               IMAGES=(
+                       Beachball/multipart.0001.exr
+                       Beachball/singlepart.0001.exr
+                       Chromaticities/Rec709.exr
+                       Chromaticities/Rec709_YC.exr
+                       Chromaticities/XYZ.exr
+                       Chromaticities/XYZ_YC.exr
+                       LuminanceChroma/Flowers.exr
+                       LuminanceChroma/Garden.exr
+                       MultiResolution/ColorCodedLevels.exr
+                       MultiResolution/WavyLinesCube.exr
+                       MultiResolution/WavyLinesLatLong.exr
+                       MultiView/Adjuster.exr
+                       TestImages/GammaChart.exr
+                       TestImages/GrayRampsHorizontal.exr
+                       v2/LeftView/Balls.exr
+                       v2/Stereo/Trunks.exr
+               )
+
+               mkdir -p "${BUILD_DIR}/src/test/bin" || die
+
+               for image in "${IMAGES[@]}"; do
+                       mkdir -p "${BUILD_DIR}/src/test/bin/$(dirname 
"${image}")" || die
+                       cp -a "${WORKDIR}/openexr-images-1.0/${image}" 
"${BUILD_DIR}/src/test/bin/${image}" || die
+               done
+       fi
+
+}
+
+src_configure() {
+       if use x86; then
+               replace-cpu-flags native i686
+       fi
+
+       local mycmakeargs=(
+               -DOPENEXR_CXX_STANDARD="17"
+
+               -DBUILD_SHARED_LIBS="yes"
+               -DBUILD_TESTING="$(usex test)"
+               -DBUILD_WEBSITE="no"
+
+               -DOPENEXR_BUILD_EXAMPLES="$(usex examples)"
+               -DOPENEXR_BUILD_PYTHON="no"
+               -DOPENEXR_BUILD_TOOLS="$(usex utils)"
+               -DOPENEXR_ENABLE_LARGE_STACK="$(usex large-stack)"
+               -DOPENEXR_ENABLE_THREADING="$(usex threads)"
+
+               -DOPENEXR_INSTALL="yes"
+               -DOPENEXR_INSTALL_DOCS="$(usex doc)"
+               -DOPENEXR_INSTALL_PKG_CONFIG="yes"
+               -DOPENEXR_INSTALL_TOOLS="$(usex utils)"
+
+               -DOPENEXR_USE_CLANG_TIDY="no" # don't look for clang-tidy
+
+               -DOPENEXR_FORCE_INTERNAL_DEFLATE="no"
+               -DOPENEXR_FORCE_INTERNAL_IMATH="no"
+       )
+       if use test; then
+               # OPENEXR_RUN_FUZZ_TESTS depends on BUILD_TESTING, see
+               #   - https://bugs.gentoo.org/925128
+               #   - 
https://openexr.com/en/latest/install.html#component-options
+
+               # NOTE: the fuzz tests are very slow
+               mycmakeargs+=( -DOPENEXR_RUN_FUZZ_TESTS="ON" )
+       fi
+
+       cmake_src_configure
+}
+
+src_test() {
+       local CMAKE_SKIP_TESTS=()
+
+       use arm64 && CMAKE_SKIP_TESTS+=(
+               # bug #922247
+               'OpenEXRCore.testDWAACompression'
+               'OpenEXRCore.testDWABCompression'
+       )
+       use x86 && CMAKE_SKIP_TESTS+=(
+               '^OpenEXR.testDwaLookups$'
+       )
+
+       cmake_src_test
+}
+
+src_install() {
+       use examples && docompress -x "/usr/share/doc/${PF}/examples"
+
+       cmake_src_install
+}

Reply via email to