diff options
Diffstat (limited to 'media-libs/openimageio')
-rw-r--r-- | media-libs/openimageio/Manifest | 6 | ||||
-rw-r--r-- | media-libs/openimageio/metadata.xml | 3 | ||||
-rw-r--r-- | media-libs/openimageio/openimageio-2.4.12.0.ebuild | 202 |
3 files changed, 210 insertions, 1 deletions
diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest index cf4de7a9cb87..c1102acebbf7 100644 --- a/media-libs/openimageio/Manifest +++ b/media-libs/openimageio/Manifest @@ -1,5 +1,9 @@ +DIST openimageio-2.4.12.0.tar.gz 32157785 BLAKE2B b2578165b389029dc6ad295b50d008790f9690c03ca17fda7c1d1ede84039ab4065cb1c88402e2b20913736d669a72781bb523d391af2403a10ddae148ae07a6 SHA512 bf8fa84c6732cabd2810a5cfbdd3ea41b273d82e51762426c8a2b60a31e114ff672c18ce433eb5cf27eb250996da18b7f9ece1b34093a0cb4c7305328174e74e DIST openimageio-2.4.6.0.tar.gz 31951691 BLAKE2B c21caf6784f366200127ba17a296e2134fa0d494e2cbf9cf592d020fdb820f62db0269545ac37c3969d64ddd8352d06a4f002fa9a7b3f05503ca9ec7d4a15415 SHA512 6e4e5294209c533eb9cf7c8df89b531bc77547df28af0d7964e255ce78142c201d5aa92a1f5f3b17348fdfc7d2a7aa9f2121acdf22fa98a6a872f0d31936bdf5 +DIST openimageio-oexr-test-image-df16e765fee28a947244657cae3251959ae63c00.tar.gz 252131865 BLAKE2B f5f2477897f84148574cdd02b673c7bdff49d8f45026375095bb6f184230466e2e60020be7583e5a5aa0aa9c971e7251979d3eeb2ee620d47342b1e4435427e0 SHA512 e89c2935496c5fec2ebe1175e9b9bd3aecb23374ec3947057195ee6d31a883c1a67c4dc754bf0a5b68859093b5e169b70ffabd4736cf67f9e3dc09f3299fc54f 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-aae37a54e31c0e719edcec852994d052ecf6541e.tar.gz 137910860 BLAKE2B 1dfc1a87ae895e62f223d915583378581cc1be12489d46155009ae10c8f63ab0fa93bfc06b67afe85f6e8a313779b9fed4e32cc6d9b92cd7d53d3c4b6e51bcce SHA512 7a46681a22145e96da5dc6ba4e6432ef38c6c352a607db348dcd194d86caa45b4f76ecb10c28cd50e3ee597404fbb3ede4acf071b4ebabc2de4e7b3cd204dade +EBUILD openimageio-2.4.12.0.ebuild 6127 BLAKE2B faa419f638fd05bf1f3ce80e680197fdffaaab932973b3b5d74f51f94b3dff5ea880d7dfceea1993666ea96824b459fe1b911e197dc62f72b1f505b42337386f SHA512 ca1289b7208234c52adc4c2770bcf625b429a9f6c1aa4937da503218ec8958d192d2a3b73a67113fbf0ac01d560291689b53529341483fbc63d7748a2c6a8df0 EBUILD openimageio-2.4.6.0-r1.ebuild 5601 BLAKE2B b32f93d31b28d27735e63823f5b8b81770df031d79b53a3b493ff0d38ca254c3c1c33109fee56be96bfc70498de207e75df27122355c7a0be84be3ebc12c84f5 SHA512 658fddac9f1a55902fbec335d154251d337634113ab42e67221511dd14f18353e59629cd2eefe8e467a7ef514e6f2167e11f8906016b56c7e64ebd3508b133db -MISC metadata.xml 724 BLAKE2B 057b0c63428b1860a3b11442b9687b136a749935e3d0bb2e27eca00245d1d9e6f3e40aa796b723664b9b320d8c958a345812199ed04f8d1a476364a80c76e355 SHA512 5243cd4cac10b569e1488226b61c98012af13f50e32c023176e6a2ba29f7804e164b4774957b35f212bad62f496bb466b242d6bc1be44ca3ea0909371b9d5415 +MISC metadata.xml 869 BLAKE2B bfb9e5ed79810feaffb28bae0e974b3771e549e2d994b25e88ef842e37824870b61433594477ffc884e6e02e3d30af526deb5f16f2198cc855070f67cab50ac3 SHA512 8406f4f9cd7e74efb9f9f7f92e7a1ef764f6f03b1ce22095aa3c20a5bae239c6accae090716c5c39f349d92cdeb945dc99a62dfba91bb61e45837ef57f750eff diff --git a/media-libs/openimageio/metadata.xml b/media-libs/openimageio/metadata.xml index d3e2ace8309b..cdd067175302 100644 --- a/media-libs/openimageio/metadata.xml +++ b/media-libs/openimageio/metadata.xml @@ -10,6 +10,9 @@ <flag name="opencv">Enable OpenCV support via <pkg>media-libs/opencv</pkg></flag> <flag name="openvdb">Enable OpenVDB support via <pkg>media-gfx/openvdb</pkg></flag> <flag name="ptex">Enable Ptex texture mapping system file support via <pkg>media-libs/ptex</pkg></flag> + <flag name="qt5">Build iv with Qt5</flag> + <flag name="qt6">Build iv with Qt6</flag> + <flag name="tools">Build the command-line tools</flag> </use> <upstream> <remote-id type="github">OpenImageIO/oiio</remote-id> diff --git a/media-libs/openimageio/openimageio-2.4.12.0.ebuild b/media-libs/openimageio/openimageio-2.4.12.0.ebuild new file mode 100644 index 000000000000..8520aeeffd4e --- /dev/null +++ b/media-libs/openimageio/openimageio-2.4.12.0.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FONT_PN=OpenImageIO +PYTHON_COMPAT=( python3_{9..11} ) + +TEST_OIIO_IMAGE_COMMIT="aae37a54e31c0e719edcec852994d052ecf6541e" +TEST_OEXR_IMAGE_COMMIT="df16e765fee28a947244657cae3251959ae63c00" +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/$(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 gif jpeg2k opencv openvdb ptex python qt5 qt6 raw test +tools +truetype ${CPU_FEATURES[@]%:*}" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) qt5? ( tools ) qt6? ( tools )" + +# 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:= + 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:= ) + 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? ( + media-libs/glew:= + virtual/glu + virtual/opengl + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + ) + qt6? ( + media-libs/glew:= + virtual/glu + virtual/opengl + 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 ) + +pkg_pretend() { + use qt5 && use qt6 && einfo "The \"qt5\" USE flag has no effect when the \"qt6\" USE flag is also enabled." +} + +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 + -DOIIO_BUILD_TOOLS=$(usex tools) + -DBUILD_TESTING=$(usex test) + -DOIIO_BUILD_TESTS=$(usex test) + -DOIIO_DOWNLOAD_MISSING_TESTDATA=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_GIF=$(usex gif) + -DUSE_OPENJPEG=$(usex jpeg2k) + -DUSE_OPENCV=$(usex opencv) + -DUSE_OPENVDB=$(usex openvdb) + -DUSE_PTEX=$(usex ptex) + -DUSE_PYTHON=$(usex python) + -DUSE_LIBRAW=$(usex raw) + -DUSE_FREETYPE=$(usex truetype) + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}") + ) + + if use qt5 || use qt6; then + mycmakeargs+=( -DENABLE_IV=ON -DUSE_OPENGL=ON -DUSE_QT=ON ) + if use qt6; then + mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt5=ON ) + else + mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt6=ON ) + fi + else + mycmakeargs+=( -DENABLE_IV=OFF -DUSE_OPENGL=OFF -DUSE_QT=OFF ) + fi + + 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 "(oiiotool|maketx|oiiotool-maketx|texture-crop|texture-crop.batch|texture-half|texture-half.batch|texture-uint16|texture-uint16.batch|texture-interp-bilinear|texture-interp-bilinear.batch|texture-interp-closest|texture-interp-closest.batch|texture-levels-stochaniso|texture-levels-stochaniso.batch|texture-levels-stochmip|texture-levels-stochmip.batch|texture-mip-onelevel|texture-mip-onelevel.batch|texture-mip-stochastictrilinear|texture-mip-stochastictrilinear.batch|texture-mip-stochasticaniso|texture-mip-stochasticaniso.batch|texture-uint8|texture-uint8.batch|texture-skinny|texture-skinny.batch|texture-icwrite|texture-icwrite.batch|jpeg2000-broken|openexr-damaged|openvdb-broken|texture-texture3d-broken|texture-texture3d-broken.batch|psd|ptex-broken|raw-broken|targa|tiff-depths|zfile|unit_simd|cineon|dds|openvdb.batch-broken|texture-texture3d.batch-broken|cmake-consumer|texture-udim|texture-udim2|texture-udim.batch|texture-udim2.batch)" + ) + + 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 +} |