2 # - OpenVDB >= 5.0 https://www.openvdb.org/
3 # - Nuke >= 7.0? https://www.foundry.com/products/nuke/ (proprietary)
5 # /usr/share/fonts/OpenImageIO/DroidSans-Bold.ttf
6 # /usr/share/fonts/OpenImageIO/DroidSans.ttf
7 # /usr/share/fonts/OpenImageIO/DroidSansMono.ttf
8 # /usr/share/fonts/OpenImageIO/DroidSerif-Bold.ttf
9 # /usr/share/fonts/OpenImageIO/DroidSerif-BoldItalic.ttf
10 # /usr/share/fonts/OpenImageIO/DroidSerif-Italic.ttf
11 # /usr/share/fonts/OpenImageIO/DroidSerif.ttf
13 # to bootstrap: build OpenColorIO --without oiio, build OpenImageIO, rebuild OpenColorIO
16 %bcond_without ocio # OpenColorIO support in library
17 %bcond_without opencv # OpenCV support in library
18 %bcond_without tbb # Threading Building Blocks
21 # https://github.com/OpenImageIO/oiio/issues/583
24 %ifnarch %{ix86} %{x8664} %{arm} ia64 ppc ppc64
28 Summary: Library for reading and writing images
29 Summary(pl.UTF-8): Biblioteka do odczytu i zapisu obrazów
35 #Source0Download: https://github.com/OpenImageIO/oiio/releases
36 Source0: https://github.com/OpenImageIO/oiio/archive/Release-%{version}/%{name}-%{version}.tar.gz
37 # Source0-md5: 76ce4d246409de331ad04453423479bf
38 Patch0: %{name}-link.patch
39 Patch1: %{name}-system-squish.patch
40 Patch2: %{name}-system-libcineon.patch
41 Patch3: no-clang-format.patch
42 URL: https://github.com/OpenImageIO/oiio
43 BuildRequires: Field3D-devel
44 %{?with_ocio:BuildRequires: OpenColorIO-devel}
45 BuildRequires: OpenEXR-devel >= 2.0
46 BuildRequires: OpenGL-devel
47 BuildRequires: Qt5Core-devel >= 5.6
48 BuildRequires: Qt5Gui-devel >= 5.6
49 BuildRequires: Qt5OpenGL-devel >= 5.6
50 BuildRequires: Qt5Widgets-devel >= 5.6
51 # filesystem, regex, system, thread
52 BuildRequires: boost-devel >= 1.53
53 BuildRequires: boost-python-devel >= 1.53
54 BuildRequires: bzip2-devel
55 BuildRequires: cmake >= 3.2.2
56 BuildRequires: dcmtk-devel >= 3.6.1
57 BuildRequires: ffmpeg-devel >= 2.6
58 BuildRequires: freetype-devel >= 2.0
59 BuildRequires: giflib-devel
60 BuildRequires: glew-devel >= 1.5.1
61 BuildRequires: hdf5-devel
62 BuildRequires: ilmbase-devel >= 1.0.1
63 BuildRequires: jasper-devel
64 BuildRequires: libcineon-devel
65 BuildRequires: libjpeg-devel
66 BuildRequires: libpng-devel
67 BuildRequires: libraw-devel >= 0.18
68 BuildRequires: libstdc++-devel >= 6:4.7
69 BuildRequires: libtiff-devel >= 3.9
70 BuildRequires: libwebp-devel
71 %{?with_opencv:BuildRequires: opencv-devel >= 2.0}
72 BuildRequires: openjpeg2-devel >= 2.4
73 BuildRequires: ptex-devel >= 2.1
74 BuildRequires: pugixml-devel
75 BuildRequires: python-devel >= 1:2.7
76 BuildRequires: python-pybind11 >= 2.2.0
77 BuildRequires: robin-map-devel
78 BuildRequires: squish-devel >= 1.10
79 %{?with_tbb:BuildRequires: tbb-devel >= 2018}
80 BuildRequires: txt2man
81 BuildRequires: zlib-devel
82 Requires: ilmbase >= 1.0.1
83 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86 OpenImageIO is a library for reading and writing images, and a bunch
87 of related classes, utilities, and applications. It has extremely
88 simple but powerful ImageInput and ImageOutput APIs for reading and
89 writing 2D images that is format agnostic; specific formats are
90 implemented by DLL/DSO plugins.
92 Currently there are format plugins for: TIFF, JPEG/JFIF, OpenEXR, PNG,
93 HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO, RMan Zfile,
94 Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
96 %description -l pl.UTF-8
97 OpenImageIO to biblioteka do odczytu i zapisu obrazów oraz wiele
98 powiązanych klas, narzędzi i aplikacji. Ma bardzo proste, ale mające
99 wiele możliwości API ImageInput i ImageOutput służące do odczytu i
100 zapisu obrazów 2D, które jest niezależne od formatu; konkretne formaty
101 są implementowane przez wtyczki DLL/DSO.
103 Obecnie istnieją wtyczki obsługujące formaty: TIFF, JPEG/JFIF,
104 OpenEXR, PNG, HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO,
105 RMan Zfile, Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
108 Summary: Header files for OpenImageIO library
109 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki OpenImageIO
110 Group: Development/Libraries
111 Requires: %{name} = %{version}-%{release}
112 Requires: libstdc++-devel >= 6:4.7
115 Header files for OpenImageIO library.
117 %description devel -l pl.UTF-8
118 Pliki nagłówkowe biblioteki OpenImageIO.
120 %package plugin-cineon
121 Summary: Cineon plugin for OpenImageIO library
122 Summary(pl.UTF-8): Wtyczka Cineon dla biblioteki OpenImageIO
124 Requires: %{name} = %{version}-%{release}
126 %description plugin-cineon
127 OpenImageIO plugin to read Cineon files.
129 %description plugin-cineon -l pl.UTF-8
130 Wtyczka biblioteki OpenImageIO czytająca pliki Cineon.
132 %package plugin-dicom
133 Summary: DICOM plugin for OpenImageIO library
134 Summary(pl.UTF-8): Wtyczka DICOM dla biblioteki OpenImageIO
136 Requires: %{name} = %{version}-%{release}
137 Requires: dcmtk >= 3.6.1
138 Requires: squish >= 1.10
140 %description plugin-dicom
141 OpenImageIO plugin to read DICOM files.
143 %description plugin-dicom -l pl.UTF-8
144 Wtyczka biblioteki OpenImageIO czytająca pliki DICOM.
147 Summary: DDS plugin for OpenImageIO library
148 Summary(pl.UTF-8): Wtyczka DDS dla biblioteki OpenImageIO
150 Requires: %{name} = %{version}-%{release}
151 Requires: squish >= 1.10
153 %description plugin-dds
154 OpenImageIO plugin to read DDS files.
156 %description plugin-dds -l pl.UTF-8
157 Wtyczka biblioteki OpenImageIO czytająca pliki DDS.
160 Summary: DPX plugin for OpenImageIO library
161 Summary(pl.UTF-8): Wtyczka DPX dla biblioteki OpenImageIO
163 Requires: %{name} = %{version}-%{release}
165 %description plugin-dpx
166 OpenImageIO plugin to read and write DPX files.
168 %description plugin-dpx -l pl.UTF-8
169 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki DPX.
171 %package plugin-ffmpeg
172 Summary: FFmpeg plugin for OpenImageIO library
173 Summary(pl.UTF-8): Wtyczka FFmpeg dla biblioteki OpenImageIO
175 Requires: %{name} = %{version}-%{release}
176 Requires: ffmpeg-libs >= 2.6
178 %description plugin-ffmpeg
179 OpenImageIO plugin to read FFmpeg files.
181 %description plugin-ffmpeg -l pl.UTF-8
182 Wtyczka biblioteki OpenImageIO czytająca pliki FFmpeg.
184 %package plugin-field3d
185 Summary: Field3D plugin for OpenImageIO library
186 Summary(pl.UTF-8): Wtyczka Field3D dla biblioteki OpenImageIO
188 Requires: %{name} = %{version}-%{release}
190 %description plugin-field3d
191 OpenImageIO plugin to read Field3D files.
193 %description plugin-field3d -l pl.UTF-8
194 Wtyczka biblioteki OpenImageIO czytająca pliki Field3D.
197 Summary: Gif plugin for OpenImageIO library
198 Summary(pl.UTF-8): Wtyczka Gif dla biblioteki OpenImageIO
200 Requires: %{name} = %{version}-%{release}
202 %description plugin-gif
203 OpenImageIO plugin to read GIF files.
205 %description plugin-gif -l pl.UTF-8
206 Wtyczka biblioteki OpenImageIO czytająca pliki GIF.
209 Summary: ICO plugin for OpenImageIO library
210 Summary(pl.UTF-8): Wtyczka ICO dla biblioteki OpenImageIO
212 Requires: %{name} = %{version}-%{release}
214 %description plugin-ico
215 OpenImageIO plugin to read and write ICO files.
217 %description plugin-ico -l pl.UTF-8
218 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki ICO.
221 Summary: JPEG plugin for OpenImageIO library
222 Summary(pl.UTF-8): Wtyczka JPEG dla biblioteki OpenImageIO
224 Requires: %{name} = %{version}-%{release}
226 %description plugin-jpeg
227 OpenImageIO plugin to read and write JPEG files (with TIFF/EXIF
230 %description plugin-jpeg -l pl.UTF-8
231 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG (wraz
232 z informacjami TIFF/EXIF).
234 %package plugin-jpeg2000
235 Summary: JPEG2000 plugin for OpenImageIO library
236 Summary(pl.UTF-8): Wtyczka JPEG2000 dla biblioteki OpenImageIO
238 Requires: %{name} = %{version}-%{release}
240 %description plugin-jpeg2000
241 OpenImageIO plugin to read and write JPEG2000 files.
243 %description plugin-jpeg2000 -l pl.UTF-8
244 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG2000.
246 %package plugin-openexr
247 Summary: OpenEXR plugin for OpenImageIO library
248 Summary(pl.UTF-8): Wtyczka OpenEXR dla biblioteki OpenImageIO
250 Requires: %{name} = %{version}-%{release}
251 Requires: OpenEXR >= 2.0
253 %description plugin-openexr
254 OpenImageIO plugin to read and write OpenEXR files.
256 %description plugin-openexr -l pl.UTF-8
257 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki OpenEXR.
260 Summary: PNG plugin for OpenImageIO library
261 Summary(pl.UTF-8): Wtyczka PNG dla biblioteki OpenImageIO
263 Requires: %{name} = %{version}-%{release}
265 %description plugin-png
266 OpenImageIO plugin to read and write PNG files.
268 %description plugin-png -l pl.UTF-8
269 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PNG.
272 Summary: PSD plugin for OpenImageIO library
273 Summary(pl.UTF-8): Wtyczka PSD dla biblioteki OpenImageIO
275 Requires: %{name} = %{version}-%{release}
277 %description plugin-psd
278 OpenImageIO plugin to read and write PSD files.
280 %description plugin-psd -l pl.UTF-8
281 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PSD.
284 Summary: Ptex plugin for OpenImageIO library
285 Summary(pl.UTF-8): Wtyczka Ptex dla biblioteki OpenImageIO
287 Requires: %{name} = %{version}-%{release}
290 %description plugin-ptex
291 OpenImageIO plugin to read Ptex files.
293 %description plugin-ptex -l pl.UTF-8
294 Wtyczka biblioteki OpenImageIO czytająca pliki Ptex.
297 Summary: RAW plugin for OpenImageIO library
298 Summary(pl.UTF-8): Wtyczka RAW dla biblioteki OpenImageIO
300 Requires: %{name} = %{version}-%{release}
301 Requires: libraw >= 0.18
303 %description plugin-raw
304 OpenImageIO plugin to readTRAW files.
306 %description plugin-raw -l pl.UTF-8
307 Wtyczka biblioteki OpenImageIO czytająca pliki RAW.
310 Summary: WebP plugin for OpenImageIO library
311 Summary(pl.UTF-8): Wtyczka WebP dla biblioteki OpenImageIO
313 Requires: %{name} = %{version}-%{release}
315 %description plugin-webp
316 OpenImageIO plugin to read and write WebP files.
318 %description plugin-webp -l pl.UTF-8
319 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki WebP.
322 Summary: TIFF plugin for OpenImageIO library
323 Summary(pl.UTF-8): Wtyczka TIFF dla biblioteki OpenImageIO
325 Requires: %{name} = %{version}-%{release}
326 Requires: libtiff >= 3.9
328 %description plugin-tiff
329 OpenImageIO plugin to read and write TIFF files.
331 %description plugin-tiff -l pl.UTF-8
332 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki TIFF.
335 Summary: Programmer documentation for OpenImageIO library
336 Summary(pl.UTF-8): Dokumentacja programisty do biblioteki OpenImageIO
341 Programmer documentation for OpenImageIO library.
343 %description apidocs -l pl.UTF-8
344 Dokumentacja programisty do biblioteki OpenImageIO.
347 Summary: Qt/OpenImageIO-based Image Viewer
348 Summary(pl.UTF-8): Przeglądarka obrazków (IV) oparta o Qt i OpenImageIO
349 Group: X11/Applications/Graphics
350 Requires: %{name} = %{version}-%{release}
351 Requires: Qt5Core >= 5.6
352 Requires: Qt5Gui >= 5.6
353 Requires: Qt5OpenGL >= 5.6
354 Requires: Qt5Widgets >= 5.6
355 Requires: glew >= 1.5.1
358 IV is an image viewer based on ImageIO plugins; therefore it can read
359 images of any format for which an appropriate plugin may be found.
361 %description iv -l pl.UTF-8
362 IV to przeglądarka obrazków oparta na wtyczkach ImageIO; dzięki temu
363 jest w stanie odczytać obrazy w dowolnym formacie, dla którego
364 istnieje właściwa wtyczka.
366 %package -n python-OpenImageIO
367 Summary: Python binding for OpenImageIO library
368 Summary(pl.UTF-8): Wiązanie Pythona do biblioteki OpenImageIO
369 Group: Libraries/Python
370 Requires: %{name} = %{version}-%{release}
372 %description -n python-OpenImageIO
373 Python binding for OpenImageIO library.
375 %description -n python-OpenImageIO -l pl.UTF-8
376 Wiązanie Pythona do biblioteki OpenImageIO.
379 %setup -q -n oiio-Release-%{version}
385 %{__rm} -r src/dds.imageio/squish
386 # when using system pugixml, don't use hacked headers
387 %{__rm} src/include/OpenImageIO/pugi*.{c,h}pp
393 -DCMAKE_INSTALL_MANDIR=%{_mandir}/man1 \
395 -DOPENJPEG_INCLUDE_DIR=%{_includedir}/openjpeg-2.4 \
396 -DINCLUDE_INSTALL_DIR=%{_includedir}/%{name} \
397 -DLIB_INSTALL_DIR:PATH=%{_libdir} \
401 -DPYBIND11_HOME:PATH=%{py_incdir} \
402 -DPYLIB_INSTALL_DIR=%{py_sitedir} \
403 -DPYTHON_VERSION=%{py_ver} \
404 -DUSE_EXTERNAL_PUGIXML=ON \
405 -DSTOP_ON_WARNING=OFF \
406 %{!?with_ocio:-DUSE_OCIO=OFF} \
407 %{!?with_opencv:-DUSE_OPENCV=OFF} \
408 %{!?with_tbb:-DUSE_TBB=OFF}
413 rm -rf $RPM_BUILD_ROOT
415 %{__make} -C build install \
416 DESTDIR=$RPM_BUILD_ROOT
419 %{__mv} $RPM_BUILD_ROOT%{_bindir}/{iv,oiiv}
420 %{__mv} $RPM_BUILD_ROOT%{_mandir}/man1/{iv,oiiv}.1
423 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
426 rm -rf $RPM_BUILD_ROOT
428 %post -p /sbin/ldconfig
429 %postun -p /sbin/ldconfig
432 %defattr(644,root,root,755)
433 %doc CHANGES.md CREDITS.md LICENSE.md README.md
434 %attr(755,root,root) %{_bindir}/iconvert
435 %attr(755,root,root) %{_bindir}/idiff
436 %attr(755,root,root) %{_bindir}/igrep
437 %attr(755,root,root) %{_bindir}/iinfo
438 %attr(755,root,root) %{_bindir}/maketx
439 %attr(755,root,root) %{_bindir}/oiiotool
440 %attr(755,root,root) %{_libdir}/libOpenImageIO.so.*.*.*
441 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO.so.2.0
442 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so.*.*.*
443 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO_Util.so.2.0
444 %attr(755,root,root) %{_libdir}/bmp.imageio.so
445 %attr(755,root,root) %{_libdir}/fits.imageio.so
446 %attr(755,root,root) %{_libdir}/hdr.imageio.so
447 %attr(755,root,root) %{_libdir}/iff.imageio.so
448 %attr(755,root,root) %{_libdir}/pnm.imageio.so
449 %attr(755,root,root) %{_libdir}/rla.imageio.so
450 %attr(755,root,root) %{_libdir}/sgi.imageio.so
451 %attr(755,root,root) %{_libdir}/socket.imageio.so
452 %attr(755,root,root) %{_libdir}/softimage.imageio.so
453 %attr(755,root,root) %{_libdir}/targa.imageio.so
454 %attr(755,root,root) %{_libdir}/zfile.imageio.so
455 %attr(755,root,root) %{_libdir}/null.imageio.so
456 %{_mandir}/man1/iconvert.1*
457 %{_mandir}/man1/idiff.1*
458 %{_mandir}/man1/igrep.1*
459 %{_mandir}/man1/iinfo.1*
460 %{_mandir}/man1/maketx.1*
461 %{_mandir}/man1/oiiotool.1*
464 %defattr(644,root,root,755)
465 %attr(755,root,root) %{_libdir}/libOpenImageIO.so
466 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so
467 %{_includedir}/OpenImageIO
468 %{_pkgconfigdir}/OpenImageIO.pc
469 %{_datadir}/cmake/Modules/FindOpenImageIO.cmake
472 %defattr(644,root,root,755)
473 %attr(755,root,root) %{_libdir}/cineon.imageio.so
476 %defattr(644,root,root,755)
477 %attr(755,root,root) %{_libdir}/dicom.imageio.so
480 %defattr(644,root,root,755)
481 %attr(755,root,root) %{_libdir}/dds.imageio.so
484 %defattr(644,root,root,755)
485 %attr(755,root,root) %{_libdir}/dpx.imageio.so
488 %defattr(644,root,root,755)
489 %attr(755,root,root) %{_libdir}/ffmpeg.imageio.so
491 %files plugin-field3d
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_libdir}/field3d.imageio.so
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libdir}/gif.imageio.so
500 %defattr(644,root,root,755)
501 %attr(755,root,root) %{_libdir}/ico.imageio.so
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/jpeg.imageio.so
507 %files plugin-jpeg2000
508 %defattr(644,root,root,755)
509 %attr(755,root,root) %{_libdir}/jpeg2000.imageio.so
511 %files plugin-openexr
512 %defattr(644,root,root,755)
513 %attr(755,root,root) %{_libdir}/openexr.imageio.so
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_libdir}/png.imageio.so
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_libdir}/psd.imageio.so
524 %defattr(644,root,root,755)
525 %attr(755,root,root) %{_libdir}/ptex.imageio.so
528 %defattr(644,root,root,755)
529 %attr(755,root,root) %{_libdir}/raw.imageio.so
532 %defattr(644,root,root,755)
533 %attr(755,root,root) %{_libdir}/tiff.imageio.so
536 %defattr(644,root,root,755)
537 %attr(755,root,root) %{_libdir}/webp.imageio.so
540 %defattr(644,root,root,755)
541 %doc src/doc/openimageio.pdf
544 %defattr(644,root,root,755)
545 %attr(755,root,root) %{_bindir}/oiiv
546 %{_mandir}/man1/oiiv.1*
548 %files -n python-OpenImageIO
549 %defattr(644,root,root,755)
550 %attr(755,root,root) %{py_sitedir}/OpenImageIO.so