Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/openimageio/
Date: Tue, 02 Nov 2021 20:29:15
Message-Id: 1635884542.44722afc36abcc3920ec14b9f00b5f945f3c6218.sam@gentoo
1 commit: 44722afc36abcc3920ec14b9f00b5f945f3c6218
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Tue Nov 2 20:22:22 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Tue Nov 2 20:22:22 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44722afc
7
8 media-libs/openimageio: add 2.3.9.1
9
10 Signed-off-by: Sam James <sam <AT> gentoo.org>
11
12 media-libs/openimageio/Manifest | 1 +
13 media-libs/openimageio/openimageio-2.3.9.1.ebuild | 183 ++++++++++++++++++++++
14 2 files changed, 184 insertions(+)
15
16 diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest
17 index 5b5969d5dd7..0003a575e6b 100644
18 --- a/media-libs/openimageio/Manifest
19 +++ b/media-libs/openimageio/Manifest
20 @@ -5,5 +5,6 @@ DIST openimageio-2.2.15.0.tar.gz 29238071 BLAKE2B f74f779635b7ff068f87ab6231756c
21 DIST openimageio-2.2.15.1.tar.gz 29237852 BLAKE2B 0f5050e888e82721aa7012cc5c5eb229b5ac314b067406ef003369431241228d91904fbe455da8423ff978411052b2c960b0688a6b943a0e2bfdb47c489d26a5 SHA512 c06df310f91938b25f1f66cd98d995dcaba51c6a0041b47882c52f5ad4a098a9016fc99f41de250dd1b1b7af3ad22f6ed63d5e76f95f1f1cf0f45c80eee9c8e0
22 DIST openimageio-2.2.18.0.tar.gz 29246567 BLAKE2B cb7297028b39b1616962b94aff61f0240b88beeae216c6e39f450cb860660b2c844393a759302dfd325ba95336e06944ad72acfb0e87aa2b1cadfe658bd6bdaa SHA512 22a61e8b1ca098c2293e972372d02f0ac8ce54b46eb957b1ffcacb9e0ca4ff13f560d67804e0db0a898d8bec2fdb73f3cdcd1ee1867f92f97f84c1c111e535be
23 DIST openimageio-2.3.8.0.tar.gz 29233320 BLAKE2B 3ad92641a336588941ff18637d6c72bc4765068438ea14b12e067ed7c104f26068c037fe2b38c58806143ff703c894bb97cbc78c3138e9798f063a93ec6626b3 SHA512 3ee9755f1dac6fdb63f582abe71e14e1abc50ebd3f8b9ffa66dc356dfb9905575385cb22c47386c0c0ec303db3e8897b4c8cf88a0f7cdc802408916db4b101e0
24 +DIST openimageio-2.3.9.1.tar.gz 29248072 BLAKE2B 22cd31dc51670a388f232874d2f3831fb87df09de3fe8d2492a34f2c9d96f2e3ae13426e30c1b9627926a3ec3150ca9b37377642ea6621a184e14d7358e9d0e5 SHA512 0522d22eca5c9858ef2b6407053f8a74872b9b05214efe01d88f0abee6b21c48cf23444987a21364261e4addcc5cddef38d7f87deda8bc5167a1cd40770327bb
25 DIST openimageio-oexr-test-image-f17e353fbfcde3406fe02675f4d92aeae422a560.tar.gz 252226183 BLAKE2B b94fb08515e18821e5b88c10031ca53675c56f96397e00b4e186d8dfb9f8557bc935ff102d61835590dca6deeef90dba03b81fd76a7958ab4d0592c042c2130a SHA512 26b9b2cda9d48554b8a53f06bc20301f8ff77dc5e1d7caf9ec45aaaefd8578d3d4d4b2e0a1d1b0f697805fdc0c5d4bae4948cea21821df3006ac0f8b9020f85f
26 DIST openimageio-oiio-test-image-b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb.tar.gz 137513393 BLAKE2B ebde02d57daaa58c08c7aab2251c39eefd5b736e1cc4a6d28603d8ee52b7828fa7529c9616207b8b0bcb04d88cd4c60c6325e6f09b4f3410dd6e61c5532b04ad SHA512 840a6785779d85f5da052cb635a92c27451e464414fefd2faaf5fc7a6b78936ff05a6a960c07bb968d7c18e753053ff0f425505de54577d30620fbff9be043fb
27
28 diff --git a/media-libs/openimageio/openimageio-2.3.9.1.ebuild b/media-libs/openimageio/openimageio-2.3.9.1.ebuild
29 new file mode 100644
30 index 00000000000..88f1d6b8b49
31 --- /dev/null
32 +++ b/media-libs/openimageio/openimageio-2.3.9.1.ebuild
33 @@ -0,0 +1,183 @@
34 +# Copyright 1999-2021 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=7
38 +
39 +FONT_PN=OpenImageIO
40 +PYTHON_COMPAT=( python3_{8..10} )
41 +
42 +TEST_OIIO_IMAGE_COMMIT="b85d7a3a10a3256b50325ad310c33e7f7cf2c6cb"
43 +TEST_OEXR_IMAGE_COMMIT="f17e353fbfcde3406fe02675f4d92aeae422a560"
44 +inherit cmake font python-single-r1
45 +
46 +DESCRIPTION="A library for reading and writing images"
47 +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO"
48 +SRC_URI="https://github.com/OpenImageIO/oiio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
49 +SRC_URI+=" test? (
50 + https://github.com/OpenImageIO/oiio-images/archive/${TEST_OIIO_IMAGE_COMMIT}.tar.gz -> ${PN}-oiio-test-image-${TEST_OIIO_IMAGE_COMMIT}.tar.gz
51 + https://github.com/AcademySoftwareFoundation/openexr-images/archive/${TEST_OEXR_IMAGE_COMMIT}.tar.gz -> ${PN}-oexr-test-image-${TEST_OEXR_IMAGE_COMMIT}.tar.gz
52 + )"
53 +S="${WORKDIR}/oiio-${PV}"
54 +
55 +LICENSE="BSD"
56 +SLOT="0/2.3"
57 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
58 +
59 +X86_CPU_FEATURES=(
60 + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2
61 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c
62 +)
63 +CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} )
64 +
65 +IUSE="dicom doc ffmpeg gif jpeg2k opencv opengl openvdb ptex python qt5 raw test +truetype ${CPU_FEATURES[@]%:*}"
66 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
67 +
68 +# Not quite working yet
69 +RESTRICT="!test? ( test ) test"
70 +
71 +BDEPEND="
72 + doc? (
73 + app-doc/doxygen
74 + dev-texlive/texlive-bibtexextra
75 + dev-texlive/texlive-fontsextra
76 + dev-texlive/texlive-fontutils
77 + dev-texlive/texlive-latex
78 + dev-texlive/texlive-latexextra
79 + )
80 +"
81 +# 2.3.8.0 should support OpenEXR 3 but it seems to prefer OpenEXR 2
82 +# when installed, so let's stick with that for now.
83 +RDEPEND="
84 + >=dev-libs/boost-1.62:=
85 + dev-cpp/robin-map
86 + dev-libs/libfmt:=
87 + dev-libs/pugixml:=
88 + >=media-libs/libheif-1.7.0:=
89 + media-libs/libpng:0=
90 + >=media-libs/libwebp-0.2.1:=
91 + media-libs/ilmbase:=
92 + media-libs/opencolorio:=
93 + media-libs/openexr:0=
94 + media-libs/tiff:0=
95 + sys-libs/zlib:=
96 + virtual/jpeg:0
97 + dicom? ( sci-libs/dcmtk )
98 + ffmpeg? ( media-video/ffmpeg:= )
99 + gif? ( media-libs/giflib:0= )
100 + jpeg2k? ( >=media-libs/openjpeg-2.0:2= )
101 + opencv? ( media-libs/opencv:= )
102 + opengl? (
103 + media-libs/glew:=
104 + virtual/glu
105 + virtual/opengl
106 + )
107 + openvdb? (
108 + dev-cpp/tbb:=
109 + media-gfx/openvdb:=
110 + )
111 + ptex? ( media-libs/ptex:= )
112 + python? (
113 + ${PYTHON_DEPS}
114 + $(python_gen_cond_dep '
115 + dev-libs/boost:=[python,${PYTHON_USEDEP}]
116 + dev-python/numpy[${PYTHON_USEDEP}]
117 + dev-python/pybind11[${PYTHON_USEDEP}]
118 + ')
119 + )
120 + qt5? (
121 + dev-qt/qtcore:5
122 + dev-qt/qtgui:5
123 + dev-qt/qtwidgets:5
124 + opengl? ( dev-qt/qtopengl:5 )
125 + )
126 + raw? ( media-libs/libraw:= )
127 + truetype? ( media-libs/freetype:2= )
128 +"
129 +DEPEND="${RDEPEND}"
130 +
131 +DOCS=( CHANGES.md CREDITS.md README.md )
132 +
133 +pkg_setup() {
134 + use python && python-single-r1_pkg_setup
135 +}
136 +
137 +src_prepare() {
138 + # Note: on bumps, please try again with OpenEXR 3 + ilmmath!
139 + # Sabotage finding OpenEXR 3 for now to force usage of OpenEXR 2
140 + # (because it mix and matches which version it uses; sed this to
141 + # make sure it'll use OpenEXR 3 if it can, but it won't.)
142 + # bug #821193
143 + sed -i \
144 + -e 's/find_package(OpenEXR CONFIG)/find_package(OpenEXR-3 CONFIG)/' \
145 + src/cmake/modules/FindOpenEXR.cmake || die
146 +
147 + cmake_src_prepare
148 + cmake_comment_add_subdirectory src/fonts
149 +
150 + if use test ; then
151 + mkdir -p "${BUILD_DIR}"/testsuite || die
152 + mv "${WORKDIR}"/oiio-images-${TEST_OIIO_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/oiio-images || die
153 + mv "${WORKDIR}"/openexr-images-${TEST_OEXR_IMAGE_COMMIT} "${BUILD_DIR}"/testsuite/openexr-images || die
154 + fi
155 +}
156 +
157 +src_configure() {
158 + # Build with SIMD support
159 + local cpufeature
160 + local mysimd=()
161 + for cpufeature in "${CPU_FEATURES[@]}"; do
162 + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}")
163 + done
164 +
165 + # If no CPU SIMDs were used, completely disable them
166 + [[ -z ${mysimd} ]] && mysimd=("0")
167 +
168 + local mycmakeargs=(
169 + -DVERBOSE=ON
170 + -DOIIO_BUILD_TESTS=$(usex test)
171 + -DINSTALL_FONTS=OFF
172 + -DBUILD_DOCS=$(usex doc)
173 + -DINSTALL_DOCS=$(usex doc)
174 + -DSTOP_ON_WARNING=OFF
175 + -DUSE_CCACHE=OFF
176 + -DUSE_DCMTK=$(usex dicom)
177 + -DUSE_EXTERNAL_PUGIXML=ON
178 + -DUSE_JPEGTURBO=ON
179 + -DUSE_NUKE=OFF # not in Gentoo
180 + -DUSE_FFMPEG=$(usex ffmpeg)
181 + -DUSE_GIF=$(usex gif)
182 + -DUSE_OPENJPEG=$(usex jpeg2k)
183 + -DUSE_OPENCV=$(usex opencv)
184 + -DUSE_OPENGL=$(usex opengl)
185 + -DUSE_OPENVDB=$(usex openvdb)
186 + -DUSE_PTEX=$(usex ptex)
187 + -DUSE_PYTHON=$(usex python)
188 + -DUSE_QT=$(usex qt5)
189 + -DUSE_LIBRAW=$(usex raw)
190 + -DUSE_FREETYPE=$(usex truetype)
191 + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}")
192 + )
193 + if use python; then
194 + mycmakeargs+=(
195 + -DPYTHON_VERSION=${EPYTHON#python}
196 + -DPYTHON_SITE_DIR=$(python_get_sitedir)
197 + )
198 + fi
199 +
200 + cmake_src_configure
201 +}
202 +
203 +src_install() {
204 + cmake_src_install
205 + # can't use font_src_install
206 + # it does directory hierarchy recreation
207 + FONT_S=(
208 + "${S}/src/fonts/Droid_Sans"
209 + "${S}/src/fonts/Droid_Sans_Mono"
210 + "${S}/src/fonts/Droid_Serif"
211 + )
212 + insinto ${FONTDIR}
213 + for dir in "${FONT_S[@]}"; do
214 + doins "${dir}"/*.ttf
215 + done
216 +}