diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
commit | d69399c7befdd98cda62d6a1788ae2aa7f104c5e (patch) | |
tree | eac7184f4cfe7d67580c1d0a0d9942a91e6cb4ee /media-libs/openimageio | |
parent | e4d9d6796d5018e338f0b27a3bc97716195bf0b8 (diff) |
gentoo auto-resync : 07:01:2025 - 06:41:06
Diffstat (limited to 'media-libs/openimageio')
-rw-r--r-- | media-libs/openimageio/Manifest | 5 | ||||
-rw-r--r-- | media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch | 31 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.5.18.0.ebuild | 302 |
3 files changed, 338 insertions, 0 deletions
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest index 58d6928ac2a8..c95dabf0dd07 100644 --- a/media-libs/openimageio/Manifest +++ b/media-libs/openimageio/Manifest @@ -1,6 +1,7 @@ AUX openimageio-2.5.12.0-heif-find-fix.patch 802 BLAKE2B bdf3e77c396d7e39935a3afb6fcb5140d4db83cc7bc3385d71adad7f3d27d53f300244f986be788e0ac51e26a59edc67c819ed57c5affc514f7d72088fa34e38 SHA512 c1d02001703ee17af4192d7a8ada592d9e03e2af2822393eb1d1db1de26777dd1715dfe68af36d1070dd29bf33b3f8db6b2d9d7a6dde989c90fc89b4cfff24cb AUX openimageio-2.5.12.0-tests-optional.patch 1310 BLAKE2B 563d3ede3ea10439e130d96647918387455ae8fb1fbb75220a064ce98322f8d87f113c04b6e215db6d6e95bf1e96f9c922f144a46af1674726f5b87918a4ae3a SHA512 95b6921b4dadc6535d978178141b62916121e27540f8e578d93347bfab59506f49ded7584b03b8dac04af44e14a74701437fa0f6faacca9d12657352fc0d3f06 AUX openimageio-2.5.12.0_heif_test.patch 839 BLAKE2B e7309fde786053afc3c373bfd5d6affa8d86d7524ff44b52a61b3c4cf3bb18cd2a987699e788eb7d6a910a1bd8b813deb2497475799593a6c780442d6cc31963 SHA512 f32a5b46bc4fb678322b0f9d930e1bdaae370087084ffce4dcf61de6a3d56059a384924fd718ed5cfbaff0ab76c6a1f8bdaf8c4e3961b9defaadb04e1d402b90 +AUX openimageio-2.5.18.0-tests-optional.patch 1324 BLAKE2B 8a311b25f132c811ae2448cae356576a6a471ac21ca0f1fa3b96dbb00a3b0be7ca577176c43b8958cb9242e7cab069089bb20d688365bf30df0ee3042ead39e6 SHA512 bd9f2b19f23ba258d6d0f8daca9cf113fd4582cb776898acd1e7a056e57f57d71917c6e0fad187a345fc2c660a650a2c815e6355fdc12ff10bcbe871c0abd592 AUX openimageio-2.5.8.0-fix-tests.patch 10084 BLAKE2B d6cc1e35cb31df4d42a4a4b14283c81fb4b9157be480688102f912052a51ad5d56d22573a3b9c4c9fc80465c12b3c085b07cf8745ac86b1c83985af30942f4c8 SHA512 39e55ad64fc644420a2305abb616f6ca409fc345bc363557c176c2e88b32fd96d52fbacaf2c002d159341bf6401d19407c50781af2b39c638e738047d86d3903 AUX openimageio-2.5.8.0-fix-unit_simd.patch 1028 BLAKE2B 2d9c9a61f44a8e1cf11429d9f32ffd047368ee9d42c5ab25bfafc3bdd3d856afb49aef8c46c850f9739de8db634dcadccdf83cc86fc9d7c078d5b96b7f300a6b SHA512 a96074ee5db257f0317677f8e67e1b634504fa0a608dddd089f1683fe6f77ca586bd6ebf54c35017eaf51c9025fb7c48697a340c74fd4c29976287009a805729 DIST J2KP4files.zip 52204801 BLAKE2B 9e1c9afc11dc9e9be9987d458c274902f4205a5838a22bccd990699cfe1612139703d0ecc10fa77eacf5d246739025ddf57a02d91b80d3acfa1bae8377044b24 SHA512 71822f8b2518c4a7a5e195700d0e960a4b900e5b36ddfd2498e5a1e4e149ae3ea0262c51a24a7081119aa5d00772d45d1b0bab836bbca0557c2e9bb9a88b89f4 @@ -10,8 +11,11 @@ DIST file003.fits 581760 BLAKE2B 35d77c64ff9e25f34593ea41839a4f7712dc344d12ab2c0 DIST file009.fits 25920 BLAKE2B 594061eba4d48da8cbfee58ab592a0adb5a22d681228330e84f60304e5146a8856e9c65b763d6d8e2136217ebe85d92128318cccfcf6358c7bc767232c6382c9 SHA512 57d53622854399aed96efbeff78e700990b2fc63c4dbd1bc9ac58c7670af98d528db2f1a3e9de4e74b977f8318109b465b46423bbac36bf2bf34a1e33e7dcdb8 DIST file012.fits 1019520 BLAKE2B e86d9e0004ca159d9a5ae0585776db65c7dd49162cb5dbd8b511686244950e33746d8a41f60b5ba8fcea220194fa87e16235adb7ccc0b4fb4b0a61e6c5c376a8 SHA512 45439544da478b24ccbcf14dc9a651aa8ecbce29b9992204d85c1eee42bc88b68802ec57bc148510da1e062de95ee53dd5c64c9bfa2e0b6cdfd945a78d1fc76a DIST openimageio-2.5.13.1.tar.gz 52538869 BLAKE2B ceba0bde73cbf2b5b7b243fa1dc4806aece881c37775418c3305d5e5665e1c249219cad2c7b0d9d4acd5955897dc13dfb94e4627e9ae866e6400559b99e7021a SHA512 3c9eb9a361464e73fae518b704438bbf409c846031f05026d8b9ace91431819ac80674130ccd2300deb9756ae26e150bf5c0a866be3f3fb65bdfba0ba60395ab +DIST openimageio-2.5.18.0.tar.gz 52549475 BLAKE2B 8a3f61f6089b304202e829a28946ec8c0bc84e05e61b84dd39f1e036614faab005619962c0217248208e133595f55fa8ffea1d931710a88eff8208b8c36fa2ae SHA512 ab6ef20fe099c19ec8cce1308890e76ec82c4bcdc1d5a2ead8c44f04593c060e819fededb958b7f36ccd0118b1aae9b1c5e12b442f7e066e940b4e32d378f7d9 +DIST openimageio-oexr-test-image-d45a2d5a890d6963b94479c7a644440068c37dd2.tar.gz 263237088 BLAKE2B 9445464b6d75d4800b843bd4a4f88404f587ca4ed384a0c1d428d5a249c04af0c610a95660aac5edff22c003c067e3a907d4a0896d7cfb20731cb486e436f17d SHA512 bbfd8e40eedd26955bc97789bfdfd556ee9ed652babc1c9c60c3cda6e5cab05a0a813323f25bc536132498a2bf3185a07020cd1170c047b72973e2be3e10fe19 DIST openimageio-oexr-test-image-df16e765fee28a947244657cae3251959ae63c00.tar.gz 252131865 BLAKE2B f5f2477897f84148574cdd02b673c7bdff49d8f45026375095bb6f184230466e2e60020be7583e5a5aa0aa9c971e7251979d3eeb2ee620d47342b1e4435427e0 SHA512 e89c2935496c5fec2ebe1175e9b9bd3aecb23374ec3947057195ee6d31a883c1a67c4dc754bf0a5b68859093b5e169b70ffabd4736cf67f9e3dc09f3299fc54f DIST openimageio-oiio-test-image-7d821f02c848022b2ee703d6bee48ca2acbfae70.tar.gz 141224552 BLAKE2B e185f6b2bd345ca0740d1ac7bc48e5a283a80db0d2fa88566367e1179e96d048ac371708db29a6591d0c4eb7f9c171af22bac30fd68bc223e2c373db3b99077d SHA512 a3c9e4151c946b79e2eb37cd53fd2865d6117431ad06e4e35d42c10d9ff8415224e2f20e14af8dd869ec2a6c6faf4f9d8ef28e5b6556c88a54398de4a8843b59 +DIST openimageio-oiio-test-image-7e6d875542b5bc1b2974b7cbecee115365a36527.tar.gz 143496336 BLAKE2B b08d42834f60abd14a64b442e30ec4f80f4bb8095177ffd1ba94240a4c9a3947cdd36f98cd967667e8a5d52fe490a214ad4cd58a836a4acd39bbe1a744eacb8b SHA512 f4f0612b4b3600fbb1ef30b4f196139a300f36e6a8290ee6a49fe0fa86072e2becf3d9e5f32c060b2ed04c0946848976bead62b352996fb8286f9969daf764d1 DIST tst0001.fits 43200 BLAKE2B 7d9d82fde64c3b21f8f86be6feaf9187d48c2c504c9afc0e652015512fb3d9e04c0f78596cdc9d7cc54815175549bfdf01d2d80f894cd36f4e6284aaf065dcc8 SHA512 b401accd51b56a493e2ec52fe4441e05cbefa3d03fe0e1c6834327094ab9f8e0c69a0f2cff26007ed7c7f8686a78a3a7e043d945f3a93c1b68e03668b8cbdc5c DIST tst0003.fits 152640 BLAKE2B 74c38c9f6cd65a46eff865589bd319111187d123c90bedc80f934caf6625f20120ecb30e8f5210c7d5d6609964e63fc2c2fc59f60bf609a07f2440421f44356e SHA512 4cd9c9a96fd3a5b8daae7d6b34af4c68c965abc4cc825aaaf9f3587a43328f468595ff1cd210e9fbca365bd52bf31a70abf39b2b3966d3087dd3af40ba0781a4 DIST tst0005.fits 48960 BLAKE2B ef8bb62702f579c8500721835100e150b2ca73272866a88457589d6f14b407efb41d106be2d454089dae00c04b903bb874132d5b44852245e6d4372ed20c7b6f SHA512 515a4dbca51e5b7fa0139b369066c02fcfa96eeffb471c6f5073343ab50da527ee610d9b677e6fabdaad1b7f9f9c68bd65eb71c5b944e5ffacf429d01fe14a39 @@ -20,4 +24,5 @@ DIST tst0007.fits 8640 BLAKE2B cf6eaff174e88bbd27f642964e6b3e5502cb08742d465a7ca DIST tst0008.fits 8640 BLAKE2B 7b4213cef2106cf0e298fce1ba3b28e74ba6ed26a2441650af297384b46c22910af8a36c2693c1c0e5aed6196561a8e4b4c75cde54541ea7a1a9d684a41f2f40 SHA512 c2dc77eb54cfc48bc97228a06e25cc5b4b2a8f32f417d5a34bb6794b020b277e144b1d5c71f09a44c94e05797c99f318de3f8705eabd22b44ac1b47fe601f918 DIST tst0013.fits 72000 BLAKE2B 6ca11cd033782adc8f359217e30752b47623c317aa155dc1bae43a0a019f7d5f9d4ba9c7349e99ee14f2d6498d5d166597606721b251b1b2dc039fbe400d00a3 SHA512 c816642e89e3bfdce38a4f755e84a12af35c9da48916abb66bcabf2f899201dfba3c988f929395092921a53a6d94922d84d325334e9bd8d348cdb305878ccb6a EBUILD openimageio-2.5.13.1.ebuild 7975 BLAKE2B c345d6ec84a5be80facf3f659e781e262349d5f72bc21f36a527e625954de6a810b1cec328bd14076c11cd6b94149c69342a8937961d2b830500ec5e83a93708 SHA512 02394f5a5e9f81a8513ff1f6a4d70df64255183f5d27251206e8fc3b9fed1954f62d87dc03ba7827603c513396e3f0ebbe798d1d8a00b45aaf9a859440d9cf95 +EBUILD openimageio-2.5.18.0.ebuild 8146 BLAKE2B 1373fbd551dbffb0fd046d553dd111d322d9f591dfa29f1deebad43dd92f650bdc741780955cdaadf521d503c58fcdf6905258445676b5a8f3f539049d694e20 SHA512 3793af09b069f853be97a0f9aa0c4f66c1527df07a2b69086618317a37c084e82e8ab1010d44b3bfa12f3d6a38d1833db979c8d770a3409edd9885b53fd8aeec MISC metadata.xml 956 BLAKE2B 952d23327253a49b38478eac7d1b5f14e63f0b2a25464f6b4eec8196581d1163518acd1b2bc9b9472eaa6ed41f3cc0ed806568e0fba4723697a06c82d77747b3 SHA512 d71ae07afeee0c7ba59ee0034b58150c1097050de9fca491b00b7f7031aef464efda94df9fa86b272f432b30f8d3403999a7478fef1cd47001e607f1faefeae5 diff --git a/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch b/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch new file mode 100644 index 000000000000..e9fb9a4b1911 --- /dev/null +++ b/media-libs/openimageio/files/openimageio-2.5.18.0-tests-optional.patch @@ -0,0 +1,31 @@ +From: Paul Zander <negril.nx+gentoo@gmail.com> +Make fits test images download optional +Make j2k test images download optional + +diff --git a/src/cmake/testing.cmake b/src/cmake/testing.cmake +index b671def..ff84b7d 100644 +--- a/src/cmake/testing.cmake ++++ b/src/cmake/testing.cmake +@@ -271,9 +271,11 @@ macro (oiio_add_all_tests) + IMAGEDIR oiio-images URL "Recent checkout of OpenImageIO-images") + oiio_add_tests (jpeg2000 + FOUNDVAR OPENJPEG_FOUND ++ ENABLEVAR ENABLE_OPENJPEG + IMAGEDIR oiio-images URL "Recent checkout of OpenImageIO-images") + oiio_add_tests (jpeg2000-j2kp4files + FOUNDVAR OPENJPEG_FOUND ++ ENABLEVAR ENABLE_OPENJPEG + IMAGEDIR j2kp4files_v1_5 + URL http://www.itu.int/net/ITU-T/sigdb/speimage/ImageForm-s.aspx?val=10100803) + set (all_openexr_tests +@@ -410,6 +410,10 @@ function (oiio_setup_test_data) + oiio_get_test_data (openexr-images + REPO https://github.com/AcademySoftwareFoundation/openexr-images.git + BRANCH main) ++ if(ENABLE_FITS) + oiio_get_test_data (fits-images) ++ endif() ++ if(ENABLE_OPENJPEG) + oiio_get_test_data (j2kp4files_v1_5) ++ endif() + endfunction () diff --git a/media-libs/openimageio/openimageio-2.5.18.0.ebuild b/media-libs/openimageio/openimageio-2.5.18.0.ebuild new file mode 100644 index 000000000000..a036d8cbe26c --- /dev/null +++ b/media-libs/openimageio/openimageio-2.5.18.0.ebuild @@ -0,0 +1,302 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} ) + +TEST_OIIO_IMAGE_COMMIT="7e6d875542b5bc1b2974b7cbecee115365a36527" +TEST_OEXR_IMAGE_COMMIT="d45a2d5a890d6963b94479c7a644440068c37dd2" +inherit cmake flag-o-matic python-single-r1 virtualx + +DESCRIPTION="A library for reading and writing images" +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO" +SRC_URI=" + https://github.com/AcademySoftwareFoundation/OpenImageIO/archive/v${PV}.tar.gz -> ${P}.tar.gz + test? ( + https://github.com/AcademySoftwareFoundation/OpenImageIO-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 + jpeg2k? ( https://www.itu.int/wftp3/Public/t/testsignal/SpeImage/T803/v2002_11/J2KP4files.zip ) + + fits? ( + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file001.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file002.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file003.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file009.fits + https://www.cv.nrao.edu/fits/data/tests/ftt4b/file012.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0001.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0003.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0005.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0006.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0007.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0008.fits + https://www.cv.nrao.edu/fits/data/tests/pg93/tst0013.fits + ) + ) +" +S="${WORKDIR}/OpenImageIO-${PV}" + +LICENSE="Apache-2.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv" + +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 fits gif gui jpeg2k opencv openvdb ptex python raw test +tools +truetype ${CPU_FEATURES[*]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) gui? ( tools ) test? ( tools truetype )" + +RESTRICT="!test? ( test )" + +BDEPEND=" + jpeg2k? ( app-arch/unzip ) + doc? ( + app-text/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.13.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:= + sys-libs/zlib:= + dicom? ( sci-libs/dcmtk ) + ffmpeg? ( media-video/ffmpeg:= ) + fits? ( sci-libs/cfitsio:= ) + gif? ( media-libs/giflib:0= ) + jpeg2k? ( >=media-libs/openjpeg-2.0:2= ) + opencv? ( media-libs/opencv:= ) + 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}] + ') + ) + gui? ( + media-libs/libglvnd + dev-qt/qtbase:6[gui,widgets,opengl] + ) + raw? ( media-libs/libraw:= ) + truetype? ( media-libs/freetype:2= ) +" +DEPEND=" + ${RDEPEND} +" + +DOCS=( + CHANGES.md + CREDITS.md + README.md +) + +PATCHES=( + "${FILESDIR}/${PN}-2.5.8.0-fix-tests.patch" + "${FILESDIR}/${PN}-2.5.12.0-heif-find-fix.patch" + "${FILESDIR}/${PN}-2.5.18.0-tests-optional.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if ! use dicom; then + rm "src/dicom.imageio" -r || die + fi + + if ! use gif; then + rm src/gif.imageio -r || die + fi + + if ! use jpeg2k; then + rm src/jpeg2000.imageio -r || die + fi + + if ! use raw; then + rm src/raw.imageio -r || die + fi + + cmake_src_prepare + cmake_comment_add_subdirectory src/fonts + + if use test ; then + ln -s "${WORKDIR}/OpenImageIO-images-${TEST_OIIO_IMAGE_COMMIT}" "${WORKDIR}/oiio-images" || die + ln -s "${WORKDIR}/openexr-images-${TEST_OEXR_IMAGE_COMMIT}" "${WORKDIR}/openexr-images" || die + + if use fits; then + mkdir -p "${WORKDIR}/fits-images/"{ftt4b,pg93} || die + for a in ${A}; do + if [[ "${a}" == file*.fits ]]; then + ln -s "${DISTDIR}/${a}" "${WORKDIR}/fits-images/ftt4b/" || die + fi + if [[ "${a}" == tst*.fits ]]; then + ln -s "${DISTDIR}/${a}" "${WORKDIR}/fits-images/pg93/" || die + fi + done + fi + + if use jpeg2k; then + ln -s "${WORKDIR}/J2KP4files" "${WORKDIR}/j2kp4files_v1_5" || die + fi + + cp testsuite/heif/ref/out-libheif1.1{2,5}-orient.txt || die + eapply "${FILESDIR}/${PN}-2.5.12.0_heif_test.patch" + 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") + + # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully + # Even if there are no SIMD features selected, it seems like the code will turn on NEON support if it is available. + use arm64 && append-flags -flax-vector-conversions + + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118077 + if tc-is-gcc && [[ $(gcc-major-version) -eq 15 ]]; then + append-flags -fno-early-inlining + fi + + local mycmakeargs=( + -DVERBOSE="yes" + -DINTERNALIZE_FMT="no" + # -DALWAYS_PREFER_CONFIG="yes" + # -DGLIBCXX_USE_CXX11_ABI="yes" + # -DTEX_BATCH_SIZE="8" # TODO AVX512 -> 16 + -DSTOP_ON_WARNING="OFF" + + -DCMAKE_CXX_STANDARD="17" + -DDOWNSTREAM_CXX_STANDARD="17" + + -DCMAKE_UNITY_BUILD_MODE="BATCH" + -DUNITY_SMALL_BATCH_SIZE="$(nproc)" + + -DBUILD_DOCS="$(usex doc)" + # -DBUILD_OIIOUTIL_ONLY="no" + -DBUILD_TESTING="$(usex test)" + + -DINSTALL_FONTS="OFF" + -DINSTALL_DOCS="$(usex doc)" + + -DENABLE_DCMTK="$(usex dicom)" + -DENABLE_FFmpeg="$(usex ffmpeg)" + -DENABLE_FITS="$(usex fits)" + -DENABLE_FREETYPE="$(usex truetype)" + -DENABLE_GIF="$(usex gif)" + -DENABLE_LibRaw="$(usex raw)" + -DENABLE_Nuke="no" # not in Gentoo + -DENABLE_OpenCV="$(usex opencv)" + -DENABLE_OpenJPEG="$(usex jpeg2k)" + -DENABLE_OpenVDB="$(usex openvdb)" + -DENABLE_TBB="$(usex openvdb)" + -DENABLE_Ptex="$(usex ptex)" + + -DENABLE_GIF="$(usex gif)" + -DENABLE_LIBRAW="$(usex raw)" + -DENABLE_PTEX="$(usex ptex)" + -DENABLE_OPENJPEG="$(usex jpeg2k)" + + -DOIIO_BUILD_TOOLS="$(usex tools)" + -DOIIO_BUILD_TESTS="$(usex test)" + -DOIIO_DOWNLOAD_MISSING_TESTDATA="no" + + -DUSE_CCACHE="no" + -DUSE_EXTERNAL_PUGIXML="yes" + # -DUSE_LIBCPLUSPLUS="yes" + -DUSE_R3DSDK="no" # not in Gentoo + -DUSE_PYTHON="$(usex python)" + -DUSE_SIMD="$(local IFS=','; echo "${mysimd[*]}")" +) + + if use gui; then + mycmakeargs+=( + -DUSE_IV="yes" + -DUSE_OPENGL="yes" + -DUSE_QT="yes" + ) + else + mycmakeargs+=( + -DUSE_QT="no" + ) + fi + + if use python; then + mycmakeargs+=( + "-DPYTHON_VERSION=${EPYTHON#python}" + "-DPYTHON_SITE_DIR=$(python_get_sitedir)" + ) + fi + + cmake_src_configure +} + +src_test() { + # A lot of tests needs to have access to the installed data files. + # So install them into the image directory now. + DESTDIR="${T}" cmake_build install + + CMAKE_SKIP_TESTS=( + "-broken$" + "texture-levels-stochaniso.batch" + "unit_simd" + ) + + sed -e "s#../../../testsuite#../../../OpenImageIO-${PV}/testsuite#g" \ + -i "${CMAKE_USE_DIR}/testsuite/python-imagebufalgo/ref/out.txt" || die + + local -x CI CMAKE_PREFIX_PATH LD_LIBRARY_PATH OPENIMAGEIO_FONTS PYTHONPATH + CI=true + CMAKE_PREFIX_PATH="${T}/usr" + LD_LIBRARY_PATH="${T}/usr/$(get_libdir)" + OPENIMAGEIO_FONTS="${CMAKE_USE_DIR}/src/fonts" + + if use python; then + PYTHONPATH="${T}$(python_get_sitedir)" + fi + + virtx cmake_src_test + + # Clean up the image directory for src_install + rm -fr "${T:?}"/usr || die +} + +src_install() { + cmake_src_install + + # remove Windows loader file + if use python; then + rm "${D}$(python_get_sitedir)/__init__.py" || die + fi +} |