diff options
Diffstat (limited to 'media-libs/openimageio')
-rw-r--r-- | media-libs/openimageio/Manifest | 2 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.3.20.0.ebuild | 185 |
2 files changed, 187 insertions, 0 deletions
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest index 0a428a5854d4..1ef918b8eab3 100644 --- a/media-libs/openimageio/Manifest +++ b/media-libs/openimageio/Manifest @@ -4,5 +4,7 @@ DIST openimageio-2.3.15.0.tar.gz 32626322 BLAKE2B 1367e40dbed3d43b53db1b7117c563 DIST openimageio-2.3.16.0.tar.gz 32632560 BLAKE2B bde9d46b74135f03215cc3741c0378580dc34381da041b3d06ff50154627edd69b93e1a714bc99c7800fe952300f752cb9d8ca62b042ec91569dbbc9bc10950f SHA512 2249dfc7f9c4ede563d5ed05ed76557e0b81c35054832b4de2a7820c8619886afa3f260cd26b5f4291f74c9d9c16b9a2ac3772e23b5b70bc87c2c7a0d0c10726 DIST openimageio-2.3.17.0.tar.gz 32640557 BLAKE2B 6e3df687e51615687b2e1f445b9a241fa703fec14f0f93e80c50ce6c2e035489be751656e62dd685bac59f983942615fe8a33eeae7e83fd93b037e58d86a248b SHA512 25cb1a671e7cd5154e363eef178ab091fd7d55868746a4394340567a794f6c6f0295e58721a5b4ee8bf66b4cc0e6a01c3e82f9cc9de9953ae349d45738a04700 DIST openimageio-2.3.19.0.tar.gz 32641108 BLAKE2B f4fd3ca79beecd839b2510a03856d47a59312b33885e8561e60650c896de05738bf757805bea7f2fb659581bb19ffbd6894513dc925e0af80235da4a5c31c9ce SHA512 f59068d9935ea43e07532e24c45752dc206054034ac79a8ae3ce698343695a4faac7b71ea39bc856946eb084b4287413d75fc5700c59c8d6b409722f47f53072 +DIST openimageio-2.3.20.0.tar.gz 32641238 BLAKE2B a2e266b9c982026370b9472fa7e1875d4c653a20182024bfa886ff0dda982081897241234a6bdff9a764ac0dda0c42a4c4565ca5bbefe44318b1a882870a6291 SHA512 2dbbfa43b2072c8016102b131207f25738a96834373739b004e9dfb76f4630de8badd3b0104f9f6a3e6778899d13c0da4036faad3fdf6c5b12d51340eb2080b8 DIST openimageio-oexr-test-image-f17e353fbfcde3406fe02675f4d92aeae422a560.tar.gz 252226183 BLAKE2B b94fb08515e18821e5b88c10031ca53675c56f96397e00b4e186d8dfb9f8557bc935ff102d61835590dca6deeef90dba03b81fd76a7958ab4d0592c042c2130a SHA512 26b9b2cda9d48554b8a53f06bc20301f8ff77dc5e1d7caf9ec45aaaefd8578d3d4d4b2e0a1d1b0f697805fdc0c5d4bae4948cea21821df3006ac0f8b9020f85f +DIST openimageio-oiio-test-image-245e50edede2792205080eadc1dedce33ff5c1e4.tar.gz 137901071 BLAKE2B 1e260eeba062026c719499425a3f7e3c2ccc7bd662725b6cceab4332d2d026bacc7df4c904cb776637ea60f9e2ba854d6e5010ffdc2a1621ad943b166d8402d3 SHA512 e7f7741d1cfadb3ea9ec5bab0b2556c58424c2dd89f938d5e93aeb99bff55479b11faa19cda4a481339be60de73317faa95e190d34d493c7825f706f4e57e73c DIST openimageio-oiio-test-image-b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb.tar.gz 137513393 BLAKE2B ebde02d57daaa58c08c7aab2251c39eefd5b736e1cc4a6d28603d8ee52b7828fa7529c9616207b8b0bcb04d88cd4c60c6325e6f09b4f3410dd6e61c5532b04ad SHA512 840a6785779d85f5da052cb635a92c27451e464414fefd2faaf5fc7a6b78936ff05a6a960c07bb968d7c18e753053ff0f425505de54577d30620fbff9be043fb diff --git a/media-libs/openimageio/openimageio-2.3.20.0.ebuild b/media-libs/openimageio/openimageio-2.3.20.0.ebuild new file mode 100644 index 000000000000..b63857d89012 --- /dev/null +++ b/media-libs/openimageio/openimageio-2.3.20.0.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FONT_PN=OpenImageIO +PYTHON_COMPAT=( python3_{8..10} ) + +TEST_OIIO_IMAGE_COMMIT="245e50edede2792205080eadc1dedce33ff5c1e4" +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" +# TODO: drop .1 on next SONAME change (2.3 -> 2.4?) as we needed to nudge it +# for changing to openexr 3 which broke ABI. +SLOT="0/$(ver_cut 1-2).1" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~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 + ) +" +RDEPEND=" + dev-libs/boost:= + dev-cpp/robin-map + dev-libs/libfmt:= + dev-libs/pugixml:= + >=media-libs/libheif-1.7.0:= + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + >=media-libs/libwebp-0.2.1:= + >=dev-libs/imath-3.1.2-r4:= + >=media-libs/opencolorio-2.1.1-r4:= + >=media-libs/openexr-3:0= + media-libs/tiff:0= + sys-libs/zlib:= + 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() { + 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 + -DBUILD_TESTING=$(usex test) + -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_test() { + # TODO: investigate failures + local myctestargs=( + -E "(openexr-damaged|openvdb-broken|texture-texture3d-broken|texture-texture3d-broken.batch|psd|ptex-broken|raw-broken|rla|targa|tiff-depths|zfile|unit_simd)" + ) + + cmake_src_test +} + +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 +} |