summaryrefslogtreecommitdiff
path: root/media-libs/openexr/openexr-3.1.1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/openexr/openexr-3.1.1.ebuild')
-rw-r--r--media-libs/openexr/openexr-3.1.1.ebuild77
1 files changed, 77 insertions, 0 deletions
diff --git a/media-libs/openexr/openexr-3.1.1.ebuild b/media-libs/openexr/openexr-3.1.1.ebuild
new file mode 100644
index 000000000000..572fb41e9506
--- /dev/null
+++ b/media-libs/openexr/openexr-3.1.1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake flag-o-matic toolchain-funcs
+
+MY_PN=OpenEXR
+MY_PV=$(ver_cut 1)
+MY_P=${MY_PN}-${MY_PV}
+
+DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries"
+HOMEPAGE="https://www.openexr.com/"
+SRC_URI="https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="3/30" # based on SONAME
+# imath needs keywording: x64-macos, x86-solaris
+KEYWORDS="~amd64 ~ia64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
+IUSE="cpu_flags_x86_avx doc examples large-stack static-libs utils test threads"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/imath-3.1.0:=
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-0001-changes-needed-for-proper-slotting.patch
+ "${FILESDIR}"/${P}-0002-add-version-to-binaries-for-slotting.patch
+ "${FILESDIR}"/${P}-0003-disable-failing-test.patch
+)
+
+DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md docs/SymbolVisibility.md )
+
+src_prepare() {
+ # Fix path for testsuite
+ sed -e "s:/var/tmp/:${T}:" \
+ -i "${S}"/src/test/${MY_PN}{,Fuzz,Util}Test/tmpDir.h || die "failed to set temp path for tests"
+
+ cmake_src_prepare
+
+ mv "${S}"/cmake/${MY_PN}.pc.in "${S}"/cmake/${MY_P}.pc.in || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=$(usex !static-libs)
+ -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_OUTPUT_SUBDIR="${MY_P}"
+ -DOPENEXR_USE_CLANG_TIDY=OFF # don't look for clang-tidy
+ )
+
+ use test && mycmakeargs+=( -DOPENEXR_RUN_FUZZ_TESTS=ON )
+
+ cmake_src_configure
+}
+
+src_install() {
+ if use doc; then
+ DOCS+=( docs/*.pdf )
+ fi
+ use examples && docompress -x /usr/share/doc/${PF}/examples
+ cmake_src_install
+
+ newenvd - 99${PN}3 <<-EOF
+ LDPATH=/usr/$(get_libdir)/${MY_P}
+ EOF
+}