diff options
author | V3n3RiX <venerix@koprulu.sector> | 2021-11-03 06:47:15 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2021-11-03 06:47:15 +0000 |
commit | fc2f1018fc323ef2c6572734a9b130427cba76a6 (patch) | |
tree | f834bdc9a67923ce75297c09d00d1e7b90791d26 /media-libs/openimageio | |
parent | 162945d2a91899b637bbb9e163b406350de12906 (diff) |
gentoo resync : 03.11.2021
Diffstat (limited to 'media-libs/openimageio')
-rw-r--r-- | media-libs/openimageio/Manifest | 8 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.2.19.0.ebuild | 159 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.3.8.0-r1.ebuild | 185 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.3.9.1.ebuild | 183 |
4 files changed, 535 insertions, 0 deletions
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest index b0105deb3736..102bd8105212 100644 --- a/media-libs/openimageio/Manifest +++ b/media-libs/openimageio/Manifest @@ -4,10 +4,18 @@ DIST openimageio-2.2.14.0.tar.gz 29226972 BLAKE2B 29daaf4fb987b77dffdd8cb29c5f67 DIST openimageio-2.2.15.0.tar.gz 29238071 BLAKE2B f74f779635b7ff068f87ab6231756cb22acb80185c717c556750d964025aa343f8b3a30b9e73acf6237328b8bdd3fcb6588321d37a3752a6f1d0dd1e3a976363 SHA512 7ade071ae8a78427fb51d75f81e6fcc2d9a3632f0854aea70b985794a53a386072fb171dc8179fa762de19067d402c7ab9f2ea1a44bd3196d3a201ea2cb9ec22 DIST openimageio-2.2.15.1.tar.gz 29237852 BLAKE2B 0f5050e888e82721aa7012cc5c5eb229b5ac314b067406ef003369431241228d91904fbe455da8423ff978411052b2c960b0688a6b943a0e2bfdb47c489d26a5 SHA512 c06df310f91938b25f1f66cd98d995dcaba51c6a0041b47882c52f5ad4a098a9016fc99f41de250dd1b1b7af3ad22f6ed63d5e76f95f1f1cf0f45c80eee9c8e0 DIST openimageio-2.2.18.0.tar.gz 29246567 BLAKE2B cb7297028b39b1616962b94aff61f0240b88beeae216c6e39f450cb860660b2c844393a759302dfd325ba95336e06944ad72acfb0e87aa2b1cadfe658bd6bdaa SHA512 22a61e8b1ca098c2293e972372d02f0ac8ce54b46eb957b1ffcacb9e0ca4ff13f560d67804e0db0a898d8bec2fdb73f3cdcd1ee1867f92f97f84c1c111e535be +DIST openimageio-2.2.19.0.tar.gz 29252399 BLAKE2B f90b330944885271e117a01235a48f11e88960f5825d0c84e6e2c994479e76a26bf90e66afec4aae6a5c7164510963027bef79fe0265676ce0993235824d461d SHA512 63951d958daaa4bc62fc210efaeced51affd207be21c938ecd5da70217060bb9c8197bf95813e2fddb728a641e69d2889f9445b7d16653a110e45adf3cb86541 +DIST openimageio-2.3.8.0.tar.gz 29233320 BLAKE2B 3ad92641a336588941ff18637d6c72bc4765068438ea14b12e067ed7c104f26068c037fe2b38c58806143ff703c894bb97cbc78c3138e9798f063a93ec6626b3 SHA512 3ee9755f1dac6fdb63f582abe71e14e1abc50ebd3f8b9ffa66dc356dfb9905575385cb22c47386c0c0ec303db3e8897b4c8cf88a0f7cdc802408916db4b101e0 +DIST openimageio-2.3.9.1.tar.gz 29248072 BLAKE2B 22cd31dc51670a388f232874d2f3831fb87df09de3fe8d2492a34f2c9d96f2e3ae13426e30c1b9627926a3ec3150ca9b37377642ea6621a184e14d7358e9d0e5 SHA512 0522d22eca5c9858ef2b6407053f8a74872b9b05214efe01d88f0abee6b21c48cf23444987a21364261e4addcc5cddef38d7f87deda8bc5167a1cd40770327bb +DIST openimageio-oexr-test-image-f17e353fbfcde3406fe02675f4d92aeae422a560.tar.gz 252226183 BLAKE2B b94fb08515e18821e5b88c10031ca53675c56f96397e00b4e186d8dfb9f8557bc935ff102d61835590dca6deeef90dba03b81fd76a7958ab4d0592c042c2130a SHA512 26b9b2cda9d48554b8a53f06bc20301f8ff77dc5e1d7caf9ec45aaaefd8578d3d4d4b2e0a1d1b0f697805fdc0c5d4bae4948cea21821df3006ac0f8b9020f85f +DIST openimageio-oiio-test-image-b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb.tar.gz 137513393 BLAKE2B ebde02d57daaa58c08c7aab2251c39eefd5b736e1cc4a6d28603d8ee52b7828fa7529c9616207b8b0bcb04d88cd4c60c6325e6f09b4f3410dd6e61c5532b04ad SHA512 840a6785779d85f5da052cb635a92c27451e464414fefd2faaf5fc7a6b78936ff05a6a960c07bb968d7c18e753053ff0f425505de54577d30620fbff9be043fb EBUILD openimageio-2.2.12.0-r1.ebuild 3711 BLAKE2B c25183cfd5c4ede55c0fc76dfc14b0dde0e8983fd44fe5ca24271d6238ab6b89dd93180d7727c557d65f7c2d4e277a9d267a56be4063c4f67de36709ec0fc0f9 SHA512 acf73c45c5504e980633ad6233325b08410a8760bba3b857b3c1b1ac5f75b3e025befc3c59c1b6767adadc96a04f9be65d6ecdc7f8ed0977b24704c4c37deb68 EBUILD openimageio-2.2.13.1-r1.ebuild 3711 BLAKE2B c25183cfd5c4ede55c0fc76dfc14b0dde0e8983fd44fe5ca24271d6238ab6b89dd93180d7727c557d65f7c2d4e277a9d267a56be4063c4f67de36709ec0fc0f9 SHA512 acf73c45c5504e980633ad6233325b08410a8760bba3b857b3c1b1ac5f75b3e025befc3c59c1b6767adadc96a04f9be65d6ecdc7f8ed0977b24704c4c37deb68 EBUILD openimageio-2.2.14.0-r1.ebuild 3797 BLAKE2B 5fde669b95b7a8f8fa093e067696afa986d0d84ddbef9eabca38db24c9b2044956e39c8f1131bae03217fe2245349cded4314b560ea5f608264f27c6c1c4f261 SHA512 f227f29510c50890f0ff2fa398151d17bca8bc83c701d89b53a09e38c0b25cb52e3be59b08f1490cc32d42942dec2a460ff4ce6b8b8eccb06e5208ce9080ac67 EBUILD openimageio-2.2.15.0-r1.ebuild 3797 BLAKE2B 5fde669b95b7a8f8fa093e067696afa986d0d84ddbef9eabca38db24c9b2044956e39c8f1131bae03217fe2245349cded4314b560ea5f608264f27c6c1c4f261 SHA512 f227f29510c50890f0ff2fa398151d17bca8bc83c701d89b53a09e38c0b25cb52e3be59b08f1490cc32d42942dec2a460ff4ce6b8b8eccb06e5208ce9080ac67 EBUILD openimageio-2.2.15.1-r1.ebuild 3795 BLAKE2B 9e5ba0ab65d1bcf48cf46b63685841ea355faa3313d7576e3a5549db892fd13eac327ac4d958384e0ed9f13a8886127a7faed8a6468a19b03e91ea8353bfeeae SHA512 9e603a5a65562d867c2770d5d7fd7b7240a65411170b18f7aca0cd58703274e839e5d3fc31345737a8c096f55994ad908aecbf94dd6ec019936c5e1d17653d1d EBUILD openimageio-2.2.18.0-r1.ebuild 3798 BLAKE2B a66def4bb9a88887c0d9c4b790ec0d76a459a2fd1b50ec94ca2b255c1cd91f941a6656e1261f3e000f4e69042b2924c4fbf8871de39933b7a0b7b6dd3eda2697 SHA512 fc2d4e270892b6f20936922664213ec59ec285a4ebdd6d1af1ed83b1d1e28c133518e595709addfb2322d2ba8e5e299238a8a1cea623b1724111b658fce1c3cc +EBUILD openimageio-2.2.19.0.ebuild 3798 BLAKE2B a66def4bb9a88887c0d9c4b790ec0d76a459a2fd1b50ec94ca2b255c1cd91f941a6656e1261f3e000f4e69042b2924c4fbf8871de39933b7a0b7b6dd3eda2697 SHA512 fc2d4e270892b6f20936922664213ec59ec285a4ebdd6d1af1ed83b1d1e28c133518e595709addfb2322d2ba8e5e299238a8a1cea623b1724111b658fce1c3cc +EBUILD openimageio-2.3.8.0-r1.ebuild 5038 BLAKE2B ef78c98b0d518f3413f991507d132202a34cf5b3e914fdca258371b7b402fbd9a444e7e53071013e560740127b246c93d74115969d8d18c51564d8cd419e37d6 SHA512 09a80048febae0e1c5358577e2bf0eddd810f782e8aad945d8688671456de0febcd07446f1147aac45c8526a23542851b9448b6a330d76326f5ee23189c68b6b +EBUILD openimageio-2.3.9.1.ebuild 4963 BLAKE2B e6b4094430e888bb0c8327a59fab806467f38a837d98db97891dd21976801a35c5fc53095bf0025ed95ed88d533e8af27238cb7b8e488fe8b09c573e46aa7592 SHA512 8b281a675dcaa05c6a9465edee46568efe8f39cac73c17875b0568aa1f9be928bc32bad8cfc92f4fb2e7f854e9612bd0616816ca7a3c373cbe5dc73dc37cf1b4 MISC metadata.xml 937 BLAKE2B f49461cd8f78f3206eb9016c01850a27017ac6964531769105804140d5d8363b46679d71eadb503221f6e3d03107228a6e66efc16187505cb4560e32bd42e3c1 SHA512 05cc82838184e93ed4064f8fc6519c89a512e6f1fe7abb94dcd624ed52eb004203f201745ec26f2ffd6aac3fb5cd4013917591164a18b0d56a097d6d4d81ae2d diff --git a/media-libs/openimageio/openimageio-2.2.19.0.ebuild b/media-libs/openimageio/openimageio-2.2.19.0.ebuild new file mode 100644 index 000000000000..5966a9f7ebd0 --- /dev/null +++ b/media-libs/openimageio/openimageio-2.2.19.0.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +FONT_PN=OpenImageIO +PYTHON_COMPAT=( python3_{8..10} ) +inherit cmake font python-single-r1 + +DESCRIPTION="A library for reading and writing images" +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO" +SRC_URI="https://github.com/OpenImageIO/oiio/archive/Release-${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/oiio-Release-${PV}" + +LICENSE="BSD" +SLOT="0/2.2" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +X86_CPU_FEATURES=( + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c +) +CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} ) + +IUSE="dicom doc ffmpeg field3d gif jpeg2k opencv opengl openvdb ptex python qt5 raw +truetype ${CPU_FEATURES[@]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +# test data in separate repo +# second repo has no structure whatsoever +RESTRICT="test" + +BDEPEND=" + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) +" +RDEPEND=" + >=dev-libs/boost-1.62:= + dev-cpp/robin-map + dev-libs/libfmt:= + dev-libs/pugixml:= + >=media-libs/ilmbase-2.2.0-r1:= + >=media-libs/libheif-1.7.0:= + media-libs/libpng:0= + >=media-libs/libwebp-0.2.1:= + media-libs/opencolorio:= + >=media-libs/openexr-2.2.0-r2:0= + media-libs/tiff:0= + sys-libs/zlib:= + virtual/jpeg:0 + dicom? ( sci-libs/dcmtk ) + ffmpeg? ( media-video/ffmpeg:= ) + field3d? ( media-libs/Field3D:= ) + gif? ( media-libs/giflib:0= ) + jpeg2k? ( >=media-libs/openjpeg-2.0:2= ) + opencv? ( media-libs/opencv:= ) + opengl? ( + media-libs/glew:= + virtual/glu + virtual/opengl + ) + openvdb? ( + dev-cpp/tbb:= + media-gfx/openvdb:= + ) + ptex? ( media-libs/ptex:= ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + opengl? ( dev-qt/qtopengl:5 ) + ) + raw? ( media-libs/libraw:= ) + truetype? ( media-libs/freetype:2= ) +" +DEPEND="${RDEPEND}" + +DOCS=( CHANGES.md CREDITS.md README.md ) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + cmake_comment_add_subdirectory src/fonts +} + +src_configure() { + # Build with SIMD support + local cpufeature + local mysimd=() + for cpufeature in "${CPU_FEATURES[@]}"; do + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}") + done + + # If no CPU SIMDs were used, completely disable them + [[ -z ${mysimd} ]] && mysimd=("0") + + local mycmakeargs=( + -DVERBOSE=ON + -DOIIO_BUILD_TESTS=OFF + -DINSTALL_FONTS=OFF + -DBUILD_DOCS=$(usex doc) + -DINSTALL_DOCS=$(usex doc) + -DSTOP_ON_WARNING=OFF + -DUSE_CCACHE=OFF + -DUSE_DCMTK=$(usex dicom) + -DUSE_EXTERNAL_PUGIXML=ON + -DUSE_JPEGTURBO=ON + -DUSE_NUKE=OFF # not in Gentoo + -DUSE_FFMPEG=$(usex ffmpeg) + -DUSE_FIELD3D=$(usex field3d) + -DUSE_GIF=$(usex gif) + -DUSE_OPENJPEG=$(usex jpeg2k) + -DUSE_OPENCV=$(usex opencv) + -DUSE_OPENGL=$(usex opengl) + -DUSE_OPENVDB=$(usex openvdb) + -DUSE_PTEX=$(usex ptex) + -DUSE_PYTHON=$(usex python) + -DUSE_QT=$(usex qt5) + -DUSE_LIBRAW=$(usex raw) + -DUSE_FREETYPE=$(usex truetype) + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}") + ) + if use python; then + mycmakeargs+=( -DPYTHON_SITE_DIR=$(python_get_sitedir) ) + fi + + cmake_src_configure +} + +src_install() { + cmake_src_install + # can't use font_src_install + # it does directory hierarchy recreation + FONT_S=( + "${S}/src/fonts/Droid_Sans" + "${S}/src/fonts/Droid_Sans_Mono" + "${S}/src/fonts/Droid_Serif" + ) + insinto ${FONTDIR} + for dir in "${FONT_S[@]}"; do + doins "${dir}"/*.ttf + done +} diff --git a/media-libs/openimageio/openimageio-2.3.8.0-r1.ebuild b/media-libs/openimageio/openimageio-2.3.8.0-r1.ebuild new file mode 100644 index 000000000000..77b43ff2ec14 --- /dev/null +++ b/media-libs/openimageio/openimageio-2.3.8.0-r1.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +FONT_PN=OpenImageIO +PYTHON_COMPAT=( python3_{8..10} ) + +TEST_OIIO_IMAGE_COMMIT="b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb" +TEST_OEXR_IMAGE_COMMIT="f17e353fbfcde3406fe02675f4d92aeae422a560" +inherit cmake font python-single-r1 + +DESCRIPTION="A library for reading and writing images" +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO" +SRC_URI="https://github.com/OpenImageIO/oiio/archive/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" test? ( + https://github.com/OpenImageIO/oiio-images/archive/${TEST_OIIO_IMAGE_COMMIT}.tar.gz -> ${PN}-oiio-test-image-${TEST_OIIO_IMAGE_COMMIT}.tar.gz + https://github.com/AcademySoftwareFoundation/openexr-images/archive/${TEST_OEXR_IMAGE_COMMIT}.tar.gz -> ${PN}-oexr-test-image-${TEST_OEXR_IMAGE_COMMIT}.tar.gz + )" +S="${WORKDIR}/oiio-${PV}" + +LICENSE="BSD" +SLOT="0/2.3" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +X86_CPU_FEATURES=( + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c +) +CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} ) + +IUSE="dicom doc ffmpeg field3d gif jpeg2k opencv opengl openvdb ptex python qt5 raw test +truetype ${CPU_FEATURES[@]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +# Not quite working yet +RESTRICT="!test? ( test ) test" + +BDEPEND=" + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) +" +# 2.3.8.0 should support OpenEXR 3 but it seems to prefer OpenEXR 2 +# when installed, so let's stick with that for now. +RDEPEND=" + >=dev-libs/boost-1.62:= + dev-cpp/robin-map + dev-libs/libfmt:= + dev-libs/pugixml:= + >=media-libs/libheif-1.7.0:= + media-libs/libpng:0= + >=media-libs/libwebp-0.2.1:= + media-libs/ilmbase:= + media-libs/opencolorio:= + media-libs/openexr:0= + media-libs/tiff:0= + sys-libs/zlib:= + virtual/jpeg:0 + dicom? ( sci-libs/dcmtk ) + ffmpeg? ( media-video/ffmpeg:= ) + field3d? ( media-libs/Field3D:= ) + gif? ( media-libs/giflib:0= ) + jpeg2k? ( >=media-libs/openjpeg-2.0:2= ) + opencv? ( media-libs/opencv:= ) + opengl? ( + media-libs/glew:= + virtual/glu + virtual/opengl + ) + openvdb? ( + dev-cpp/tbb:= + media-gfx/openvdb:= + ) + ptex? ( media-libs/ptex:= ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + opengl? ( dev-qt/qtopengl:5 ) + ) + raw? ( media-libs/libraw:= ) + truetype? ( media-libs/freetype:2= ) +" +DEPEND="${RDEPEND}" + +DOCS=( CHANGES.md CREDITS.md README.md ) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + # Note: on bumps, please try again with OpenEXR 3 + ilmmath! + # Sabotage finding OpenEXR 3 for now to force usage of OpenEXR 2 + # (because it mix and matches which version it uses; sed this to + # make sure it'll use OpenEXR 3 if it can, but it won't.) + # bug #821193 + sed -i \ + -e 's/find_package(OpenEXR CONFIG)/find_package(OpenEXR-3 CONFIG)/' \ + src/cmake/modules/FindOpenEXR.cmake || die + + cmake_src_prepare + cmake_comment_add_subdirectory src/fonts + + if use test ; then + mkdir -p "${BUILD_DIR}"/testsuite || die + mv "${WORKDIR}"/oiio-images-${TEST_OIIO_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/oiio-images || die + mv "${WORKDIR}"/openexr-images-${TEST_OEXR_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/openexr-images || die + fi +} + +src_configure() { + # Build with SIMD support + local cpufeature + local mysimd=() + for cpufeature in "${CPU_FEATURES[@]}"; do + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}") + done + + # If no CPU SIMDs were used, completely disable them + [[ -z ${mysimd} ]] && mysimd=("0") + + local mycmakeargs=( + -DVERBOSE=ON + -DOIIO_BUILD_TESTS=$(usex test) + -DINSTALL_FONTS=OFF + -DBUILD_DOCS=$(usex doc) + -DINSTALL_DOCS=$(usex doc) + -DSTOP_ON_WARNING=OFF + -DUSE_CCACHE=OFF + -DUSE_DCMTK=$(usex dicom) + -DUSE_EXTERNAL_PUGIXML=ON + -DUSE_JPEGTURBO=ON + -DUSE_NUKE=OFF # not in Gentoo + -DUSE_FFMPEG=$(usex ffmpeg) + -DUSE_FIELD3D=$(usex field3d) + -DUSE_GIF=$(usex gif) + -DUSE_OPENJPEG=$(usex jpeg2k) + -DUSE_OPENCV=$(usex opencv) + -DUSE_OPENGL=$(usex opengl) + -DUSE_OPENVDB=$(usex openvdb) + -DUSE_PTEX=$(usex ptex) + -DUSE_PYTHON=$(usex python) + -DUSE_QT=$(usex qt5) + -DUSE_LIBRAW=$(usex raw) + -DUSE_FREETYPE=$(usex truetype) + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}") + ) + if use python; then + mycmakeargs+=( + -DPYTHON_VERSION=${EPYTHON#python} + -DPYTHON_SITE_DIR=$(python_get_sitedir) + ) + fi + + cmake_src_configure +} + +src_install() { + cmake_src_install + # can't use font_src_install + # it does directory hierarchy recreation + FONT_S=( + "${S}/src/fonts/Droid_Sans" + "${S}/src/fonts/Droid_Sans_Mono" + "${S}/src/fonts/Droid_Serif" + ) + insinto ${FONTDIR} + for dir in "${FONT_S[@]}"; do + doins "${dir}"/*.ttf + done +} diff --git a/media-libs/openimageio/openimageio-2.3.9.1.ebuild b/media-libs/openimageio/openimageio-2.3.9.1.ebuild new file mode 100644 index 000000000000..88f1d6b8b497 --- /dev/null +++ b/media-libs/openimageio/openimageio-2.3.9.1.ebuild @@ -0,0 +1,183 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +FONT_PN=OpenImageIO +PYTHON_COMPAT=( python3_{8..10} ) + +TEST_OIIO_IMAGE_COMMIT="b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb" +TEST_OEXR_IMAGE_COMMIT="f17e353fbfcde3406fe02675f4d92aeae422a560" +inherit cmake font python-single-r1 + +DESCRIPTION="A library for reading and writing images" +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO" +SRC_URI="https://github.com/OpenImageIO/oiio/archive/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" test? ( + https://github.com/OpenImageIO/oiio-images/archive/${TEST_OIIO_IMAGE_COMMIT}.tar.gz -> ${PN}-oiio-test-image-${TEST_OIIO_IMAGE_COMMIT}.tar.gz + https://github.com/AcademySoftwareFoundation/openexr-images/archive/${TEST_OEXR_IMAGE_COMMIT}.tar.gz -> ${PN}-oexr-test-image-${TEST_OEXR_IMAGE_COMMIT}.tar.gz + )" +S="${WORKDIR}/oiio-${PV}" + +LICENSE="BSD" +SLOT="0/2.3" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +X86_CPU_FEATURES=( + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c +) +CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} ) + +IUSE="dicom doc ffmpeg gif jpeg2k opencv opengl openvdb ptex python qt5 raw test +truetype ${CPU_FEATURES[@]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +# Not quite working yet +RESTRICT="!test? ( test ) test" + +BDEPEND=" + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) +" +# 2.3.8.0 should support OpenEXR 3 but it seems to prefer OpenEXR 2 +# when installed, so let's stick with that for now. +RDEPEND=" + >=dev-libs/boost-1.62:= + dev-cpp/robin-map + dev-libs/libfmt:= + dev-libs/pugixml:= + >=media-libs/libheif-1.7.0:= + media-libs/libpng:0= + >=media-libs/libwebp-0.2.1:= + media-libs/ilmbase:= + media-libs/opencolorio:= + media-libs/openexr:0= + media-libs/tiff:0= + sys-libs/zlib:= + virtual/jpeg:0 + dicom? ( sci-libs/dcmtk ) + ffmpeg? ( media-video/ffmpeg:= ) + gif? ( media-libs/giflib:0= ) + jpeg2k? ( >=media-libs/openjpeg-2.0:2= ) + opencv? ( media-libs/opencv:= ) + opengl? ( + media-libs/glew:= + virtual/glu + virtual/opengl + ) + openvdb? ( + dev-cpp/tbb:= + media-gfx/openvdb:= + ) + ptex? ( media-libs/ptex:= ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + opengl? ( dev-qt/qtopengl:5 ) + ) + raw? ( media-libs/libraw:= ) + truetype? ( media-libs/freetype:2= ) +" +DEPEND="${RDEPEND}" + +DOCS=( CHANGES.md CREDITS.md README.md ) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + # Note: on bumps, please try again with OpenEXR 3 + ilmmath! + # Sabotage finding OpenEXR 3 for now to force usage of OpenEXR 2 + # (because it mix and matches which version it uses; sed this to + # make sure it'll use OpenEXR 3 if it can, but it won't.) + # bug #821193 + sed -i \ + -e 's/find_package(OpenEXR CONFIG)/find_package(OpenEXR-3 CONFIG)/' \ + src/cmake/modules/FindOpenEXR.cmake || die + + cmake_src_prepare + cmake_comment_add_subdirectory src/fonts + + if use test ; then + mkdir -p "${BUILD_DIR}"/testsuite || die + mv "${WORKDIR}"/oiio-images-${TEST_OIIO_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/oiio-images || die + mv "${WORKDIR}"/openexr-images-${TEST_OEXR_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/openexr-images || die + fi +} + +src_configure() { + # Build with SIMD support + local cpufeature + local mysimd=() + for cpufeature in "${CPU_FEATURES[@]}"; do + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}") + done + + # If no CPU SIMDs were used, completely disable them + [[ -z ${mysimd} ]] && mysimd=("0") + + local mycmakeargs=( + -DVERBOSE=ON + -DOIIO_BUILD_TESTS=$(usex test) + -DINSTALL_FONTS=OFF + -DBUILD_DOCS=$(usex doc) + -DINSTALL_DOCS=$(usex doc) + -DSTOP_ON_WARNING=OFF + -DUSE_CCACHE=OFF + -DUSE_DCMTK=$(usex dicom) + -DUSE_EXTERNAL_PUGIXML=ON + -DUSE_JPEGTURBO=ON + -DUSE_NUKE=OFF # not in Gentoo + -DUSE_FFMPEG=$(usex ffmpeg) + -DUSE_GIF=$(usex gif) + -DUSE_OPENJPEG=$(usex jpeg2k) + -DUSE_OPENCV=$(usex opencv) + -DUSE_OPENGL=$(usex opengl) + -DUSE_OPENVDB=$(usex openvdb) + -DUSE_PTEX=$(usex ptex) + -DUSE_PYTHON=$(usex python) + -DUSE_QT=$(usex qt5) + -DUSE_LIBRAW=$(usex raw) + -DUSE_FREETYPE=$(usex truetype) + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}") + ) + if use python; then + mycmakeargs+=( + -DPYTHON_VERSION=${EPYTHON#python} + -DPYTHON_SITE_DIR=$(python_get_sitedir) + ) + fi + + cmake_src_configure +} + +src_install() { + cmake_src_install + # can't use font_src_install + # it does directory hierarchy recreation + FONT_S=( + "${S}/src/fonts/Droid_Sans" + "${S}/src/fonts/Droid_Sans_Mono" + "${S}/src/fonts/Droid_Serif" + ) + insinto ${FONTDIR} + for dir in "${FONT_S[@]}"; do + doins "${dir}"/*.ttf + done +} |