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: Wed, 08 Dec 2021 05:43:35
Message-Id: 1638942197.ae821b254b7f6dad9f108d615d043a7c9f4ac50d.sam@gentoo
1 commit: ae821b254b7f6dad9f108d615d043a7c9f4ac50d
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Wed Dec 8 05:39:00 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Wed Dec 8 05:43:17 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae821b25
7
8 media-libs/openimageio: add 2.3.10.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.10.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 f64824463a81..a89d0456a795 100644
18 --- a/media-libs/openimageio/Manifest
19 +++ b/media-libs/openimageio/Manifest
20 @@ -1,5 +1,6 @@
21 DIST openimageio-2.2.18.0.tar.gz 29246567 BLAKE2B cb7297028b39b1616962b94aff61f0240b88beeae216c6e39f450cb860660b2c844393a759302dfd325ba95336e06944ad72acfb0e87aa2b1cadfe658bd6bdaa SHA512 22a61e8b1ca098c2293e972372d02f0ac8ce54b46eb957b1ffcacb9e0ca4ff13f560d67804e0db0a898d8bec2fdb73f3cdcd1ee1867f92f97f84c1c111e535be
22 DIST openimageio-2.3.10.0.tar.gz 32443970 BLAKE2B 90b4f39ed654cafe24905c3d9e32a04057d80d3fc1cb7a1b2ad5e1d3c239b112e9af8d28ee49d54721aa78778118562106c4bcfe2509a1337e15bd13993f144b SHA512 9e8768d743056a7d115b47611d4e6dfc43f3b8b155224e3746075b407a265fcd509d406e78f1b6a5aa0b55270729cbb2049cfeb9d5c1af9a9a8f05a7333292b1
23 +DIST openimageio-2.3.10.1.tar.gz 32443281 BLAKE2B 10308f87b390747a4e0af4bce2c7636e8cca61fe695dc4a43a1021a411c3887fedee6c88ffa89c439bf00f23c4b862036149244eda5887812943845f446ce361 SHA512 9e911f5c4b0df02502ed0195b8acd3eff2b3d9398b33f956544306eda57f972fda0a69bd1d1448a385c92753e3a9127209c5937559df6ad594c5a6125c5870c7
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.10.1.ebuild b/media-libs/openimageio/openimageio-2.3.10.1.ebuild
29 new file mode 100644
30 index 000000000000..88f1d6b8b497
31 --- /dev/null
32 +++ b/media-libs/openimageio/openimageio-2.3.10.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 +}