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: Sun, 31 Oct 2021 05:44:13
Message-Id: 1635659028.e61be0af4c50f28ffe45f506edf4cebc93df47a8.sam@gentoo
1 commit: e61be0af4c50f28ffe45f506edf4cebc93df47a8
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Sun Oct 31 05:43:25 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Sun Oct 31 05:43:48 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e61be0af
7
8 media-libs/openimageio: add 2.3.8.0
9
10 Closes: https://bugs.gentoo.org/816264
11 Bug: https://bugs.gentoo.org/810703
12 Signed-off-by: Sam James <sam <AT> gentoo.org>
13
14 media-libs/openimageio/Manifest | 1 +
15 media-libs/openimageio/openimageio-2.3.8.0.ebuild | 168 ++++++++++++++++++++++
16 2 files changed, 169 insertions(+)
17
18 diff --git a/media-libs/openimageio/Manifest b/media-libs/openimageio/Manifest
19 index a42a2de0374..3731c47b59b 100644
20 --- a/media-libs/openimageio/Manifest
21 +++ b/media-libs/openimageio/Manifest
22 @@ -4,3 +4,4 @@ DIST openimageio-2.2.14.0.tar.gz 29226972 BLAKE2B 29daaf4fb987b77dffdd8cb29c5f67
23 DIST openimageio-2.2.15.0.tar.gz 29238071 BLAKE2B f74f779635b7ff068f87ab6231756cb22acb80185c717c556750d964025aa343f8b3a30b9e73acf6237328b8bdd3fcb6588321d37a3752a6f1d0dd1e3a976363 SHA512 7ade071ae8a78427fb51d75f81e6fcc2d9a3632f0854aea70b985794a53a386072fb171dc8179fa762de19067d402c7ab9f2ea1a44bd3196d3a201ea2cb9ec22
24 DIST openimageio-2.2.15.1.tar.gz 29237852 BLAKE2B 0f5050e888e82721aa7012cc5c5eb229b5ac314b067406ef003369431241228d91904fbe455da8423ff978411052b2c960b0688a6b943a0e2bfdb47c489d26a5 SHA512 c06df310f91938b25f1f66cd98d995dcaba51c6a0041b47882c52f5ad4a098a9016fc99f41de250dd1b1b7af3ad22f6ed63d5e76f95f1f1cf0f45c80eee9c8e0
25 DIST openimageio-2.2.18.0.tar.gz 29246567 BLAKE2B cb7297028b39b1616962b94aff61f0240b88beeae216c6e39f450cb860660b2c844393a759302dfd325ba95336e06944ad72acfb0e87aa2b1cadfe658bd6bdaa SHA512 22a61e8b1ca098c2293e972372d02f0ac8ce54b46eb957b1ffcacb9e0ca4ff13f560d67804e0db0a898d8bec2fdb73f3cdcd1ee1867f92f97f84c1c111e535be
26 +DIST openimageio-2.3.8.0.tar.gz 29233320 BLAKE2B 3ad92641a336588941ff18637d6c72bc4765068438ea14b12e067ed7c104f26068c037fe2b38c58806143ff703c894bb97cbc78c3138e9798f063a93ec6626b3 SHA512 3ee9755f1dac6fdb63f582abe71e14e1abc50ebd3f8b9ffa66dc356dfb9905575385cb22c47386c0c0ec303db3e8897b4c8cf88a0f7cdc802408916db4b101e0
27
28 diff --git a/media-libs/openimageio/openimageio-2.3.8.0.ebuild b/media-libs/openimageio/openimageio-2.3.8.0.ebuild
29 new file mode 100644
30 index 00000000000..69127747774
31 --- /dev/null
32 +++ b/media-libs/openimageio/openimageio-2.3.8.0.ebuild
33 @@ -0,0 +1,168 @@
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 +inherit cmake font python-single-r1
42 +
43 +DESCRIPTION="A library for reading and writing images"
44 +HOMEPAGE="https://sites.google.com/site/openimageio/ https://github.com/OpenImageIO"
45 +SRC_URI="https://github.com/OpenImageIO/oiio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
46 +S="${WORKDIR}/oiio-${PV}"
47 +
48 +LICENSE="BSD"
49 +SLOT="0/2.3"
50 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
51 +
52 +X86_CPU_FEATURES=(
53 + aes:aes sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2
54 + avx:avx avx2:avx2 avx512f:avx512f f16c:f16c
55 +)
56 +CPU_FEATURES=( ${X86_CPU_FEATURES[@]/#/cpu_flags_x86_} )
57 +
58 +IUSE="dicom doc ffmpeg field3d gif jpeg2k opencv opengl openvdb ptex python qt5 raw +truetype ${CPU_FEATURES[@]%:*}"
59 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
60 +
61 +# test data in separate repo
62 +# second repo has no structure whatsoever
63 +RESTRICT="test"
64 +
65 +BDEPEND="
66 + doc? (
67 + app-doc/doxygen
68 + dev-texlive/texlive-bibtexextra
69 + dev-texlive/texlive-fontsextra
70 + dev-texlive/texlive-fontutils
71 + dev-texlive/texlive-latex
72 + dev-texlive/texlive-latexextra
73 + )
74 +"
75 +# 2.3.8.0 should support OpenEXR 3 but it seems to prefer OpenEXR 2
76 +# when installed, so let's stick with that for now.
77 +RDEPEND="
78 + >=dev-libs/boost-1.62:=
79 + dev-cpp/robin-map
80 + dev-libs/libfmt:=
81 + dev-libs/pugixml:=
82 + >=media-libs/libheif-1.7.0:=
83 + media-libs/libpng:0=
84 + >=media-libs/libwebp-0.2.1:=
85 + media-libs/ilmbase:=
86 + media-libs/opencolorio:=
87 + media-libs/openexr:0=
88 + media-libs/tiff:0=
89 + sys-libs/zlib:=
90 + virtual/jpeg:0
91 + dicom? ( sci-libs/dcmtk )
92 + ffmpeg? ( media-video/ffmpeg:= )
93 + field3d? ( media-libs/Field3D:= )
94 + gif? ( media-libs/giflib:0= )
95 + jpeg2k? ( >=media-libs/openjpeg-2.0:2= )
96 + opencv? ( media-libs/opencv:= )
97 + opengl? (
98 + media-libs/glew:=
99 + virtual/glu
100 + virtual/opengl
101 + )
102 + openvdb? (
103 + dev-cpp/tbb:=
104 + media-gfx/openvdb:=
105 + )
106 + ptex? ( media-libs/ptex:= )
107 + python? (
108 + ${PYTHON_DEPS}
109 + $(python_gen_cond_dep '
110 + dev-libs/boost:=[python,${PYTHON_USEDEP}]
111 + dev-python/numpy[${PYTHON_USEDEP}]
112 + dev-python/pybind11[${PYTHON_USEDEP}]
113 + ')
114 + )
115 + qt5? (
116 + dev-qt/qtcore:5
117 + dev-qt/qtgui:5
118 + dev-qt/qtwidgets:5
119 + opengl? ( dev-qt/qtopengl:5 )
120 + )
121 + raw? ( media-libs/libraw:= )
122 + truetype? ( media-libs/freetype:2= )
123 +"
124 +DEPEND="${RDEPEND}"
125 +
126 +DOCS=( CHANGES.md CREDITS.md README.md )
127 +
128 +pkg_setup() {
129 + use python && python-single-r1_pkg_setup
130 +}
131 +
132 +src_prepare() {
133 + sed -i \
134 + -e 's/find_package(OpenEXR CONFIG)/find_package(OpenEXR-3 CONFIG)/' \
135 + src/cmake/modules/FindOpenEXR.cmake || die
136 +
137 + cmake_src_prepare
138 + cmake_comment_add_subdirectory src/fonts
139 +}
140 +
141 +src_configure() {
142 + # Build with SIMD support
143 + local cpufeature
144 + local mysimd=()
145 + for cpufeature in "${CPU_FEATURES[@]}"; do
146 + use "${cpufeature%:*}" && mysimd+=("${cpufeature#*:}")
147 + done
148 +
149 + # If no CPU SIMDs were used, completely disable them
150 + [[ -z ${mysimd} ]] && mysimd=("0")
151 +
152 + local mycmakeargs=(
153 + -DVERBOSE=ON
154 + -DOIIO_BUILD_TESTS=OFF
155 + -DINSTALL_FONTS=OFF
156 + -DBUILD_DOCS=$(usex doc)
157 + -DINSTALL_DOCS=$(usex doc)
158 + -DSTOP_ON_WARNING=OFF
159 + -DUSE_CCACHE=OFF
160 + -DUSE_DCMTK=$(usex dicom)
161 + -DUSE_EXTERNAL_PUGIXML=ON
162 + -DUSE_JPEGTURBO=ON
163 + -DUSE_NUKE=OFF # not in Gentoo
164 + -DUSE_FFMPEG=$(usex ffmpeg)
165 + -DUSE_FIELD3D=$(usex field3d)
166 + -DUSE_GIF=$(usex gif)
167 + -DUSE_OPENJPEG=$(usex jpeg2k)
168 + -DUSE_OPENCV=$(usex opencv)
169 + -DUSE_OPENGL=$(usex opengl)
170 + -DUSE_OPENVDB=$(usex openvdb)
171 + -DUSE_PTEX=$(usex ptex)
172 + -DUSE_PYTHON=$(usex python)
173 + -DUSE_QT=$(usex qt5)
174 + -DUSE_LIBRAW=$(usex raw)
175 + -DUSE_FREETYPE=$(usex truetype)
176 + -DUSE_SIMD=$(local IFS=','; echo "${mysimd[*]}")
177 + )
178 + if use python; then
179 + mycmakeargs+=(
180 + -DPYTHON_VERSION=${EPYTHON#python}
181 + -DPYTHON_SITE_DIR=$(python_get_sitedir)
182 + )
183 + fi
184 +
185 + cmake_src_configure
186 +}
187 +
188 +src_install() {
189 + cmake_src_install
190 + # can't use font_src_install
191 + # it does directory hierarchy recreation
192 + FONT_S=(
193 + "${S}/src/fonts/Droid_Sans"
194 + "${S}/src/fonts/Droid_Sans_Mono"
195 + "${S}/src/fonts/Droid_Serif"
196 + )
197 + insinto ${FONTDIR}
198 + for dir in "${FONT_S[@]}"; do
199 + doins "${dir}"/*.ttf
200 + done
201 +}