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_with 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 Patch4: tiff_defines.patch
43 URL: https://github.com/OpenImageIO/oiio
44 BuildRequires: Field3D-devel
45 %{?with_ocio:BuildRequires: OpenColorIO-devel}
46 BuildRequires: OpenEXR-devel >= 2.0
47 BuildRequires: OpenGL-devel
48 BuildRequires: Qt5Core-devel >= 5.6
49 BuildRequires: Qt5Gui-devel >= 5.6
50 BuildRequires: Qt5OpenGL-devel >= 5.6
51 BuildRequires: Qt5Widgets-devel >= 5.6
52 # filesystem, regex, system, thread
53 BuildRequires: boost-devel >= 1.53
54 BuildRequires: boost-python-devel >= 1.53
55 BuildRequires: bzip2-devel
56 BuildRequires: cmake >= 3.2.2
57 BuildRequires: dcmtk-devel >= 3.6.1
58 BuildRequires: ffmpeg-devel >= 2.6
59 BuildRequires: freetype-devel >= 2.0
60 BuildRequires: giflib-devel
61 BuildRequires: glew-devel >= 1.5.1
62 BuildRequires: hdf5-devel
63 BuildRequires: ilmbase-devel >= 1.0.1
64 BuildRequires: jasper-devel
65 BuildRequires: libcineon-devel
66 BuildRequires: libjpeg-devel
67 BuildRequires: libpng-devel
68 BuildRequires: libraw-devel >= 0.18
69 BuildRequires: libstdc++-devel >= 6:4.7
70 BuildRequires: libtiff-devel >= 3.9
71 BuildRequires: libwebp-devel
72 %{?with_opencv:BuildRequires: opencv-devel >= 2.0}
73 BuildRequires: openjpeg2-devel >= 2.4
74 BuildRequires: ptex-devel >= 2.1
75 BuildRequires: pugixml-devel
76 BuildRequires: python-devel >= 1:2.7
77 BuildRequires: python-pybind11 >= 2.2.0
78 BuildRequires: robin-map-devel
79 BuildRequires: rpm-build >= 4.6
80 BuildRequires: rpmbuild(macros) >= 1.605
81 BuildRequires: squish-devel >= 1.10
82 %{?with_tbb:BuildRequires: tbb-devel >= 2018}
83 BuildRequires: txt2man
84 BuildRequires: zlib-devel
85 Requires: ilmbase >= 1.0.1
86 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
89 OpenImageIO is a library for reading and writing images, and a bunch
90 of related classes, utilities, and applications. It has extremely
91 simple but powerful ImageInput and ImageOutput APIs for reading and
92 writing 2D images that is format agnostic; specific formats are
93 implemented by DLL/DSO plugins.
95 Currently there are format plugins for: TIFF, JPEG/JFIF, OpenEXR, PNG,
96 HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO, RMan Zfile,
97 Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
99 %description -l pl.UTF-8
100 OpenImageIO to biblioteka do odczytu i zapisu obrazów oraz wiele
101 powiązanych klas, narzędzi i aplikacji. Ma bardzo proste, ale mające
102 wiele możliwości API ImageInput i ImageOutput służące do odczytu i
103 zapisu obrazów 2D, które jest niezależne od formatu; konkretne formaty
104 są implementowane przez wtyczki DLL/DSO.
106 Obecnie istnieją wtyczki obsługujące formaty: TIFF, JPEG/JFIF,
107 OpenEXR, PNG, HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO,
108 RMan Zfile, Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
111 Summary: Header files for OpenImageIO library
112 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki OpenImageIO
113 Group: Development/Libraries
114 Requires: %{name} = %{version}-%{release}
115 Requires: libstdc++-devel >= 6:4.7
118 Header files for OpenImageIO library.
120 %description devel -l pl.UTF-8
121 Pliki nagłówkowe biblioteki OpenImageIO.
123 %package plugin-cineon
124 Summary: Cineon plugin for OpenImageIO library
125 Summary(pl.UTF-8): Wtyczka Cineon dla biblioteki OpenImageIO
127 Requires: %{name} = %{version}-%{release}
129 %description plugin-cineon
130 OpenImageIO plugin to read Cineon files.
132 %description plugin-cineon -l pl.UTF-8
133 Wtyczka biblioteki OpenImageIO czytająca pliki Cineon.
135 %package plugin-dicom
136 Summary: DICOM plugin for OpenImageIO library
137 Summary(pl.UTF-8): Wtyczka DICOM dla biblioteki OpenImageIO
139 Requires: %{name} = %{version}-%{release}
140 Requires: dcmtk >= 3.6.1
141 Requires: squish >= 1.10
143 %description plugin-dicom
144 OpenImageIO plugin to read DICOM files.
146 %description plugin-dicom -l pl.UTF-8
147 Wtyczka biblioteki OpenImageIO czytająca pliki DICOM.
150 Summary: DDS plugin for OpenImageIO library
151 Summary(pl.UTF-8): Wtyczka DDS dla biblioteki OpenImageIO
153 Requires: %{name} = %{version}-%{release}
154 Requires: squish >= 1.10
156 %description plugin-dds
157 OpenImageIO plugin to read DDS files.
159 %description plugin-dds -l pl.UTF-8
160 Wtyczka biblioteki OpenImageIO czytająca pliki DDS.
163 Summary: DPX plugin for OpenImageIO library
164 Summary(pl.UTF-8): Wtyczka DPX dla biblioteki OpenImageIO
166 Requires: %{name} = %{version}-%{release}
168 %description plugin-dpx
169 OpenImageIO plugin to read and write DPX files.
171 %description plugin-dpx -l pl.UTF-8
172 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki DPX.
174 %package plugin-ffmpeg
175 Summary: FFmpeg plugin for OpenImageIO library
176 Summary(pl.UTF-8): Wtyczka FFmpeg dla biblioteki OpenImageIO
178 Requires: %{name} = %{version}-%{release}
179 Requires: ffmpeg-libs >= 2.6
181 %description plugin-ffmpeg
182 OpenImageIO plugin to read FFmpeg files.
184 %description plugin-ffmpeg -l pl.UTF-8
185 Wtyczka biblioteki OpenImageIO czytająca pliki FFmpeg.
187 %package plugin-field3d
188 Summary: Field3D plugin for OpenImageIO library
189 Summary(pl.UTF-8): Wtyczka Field3D dla biblioteki OpenImageIO
191 Requires: %{name} = %{version}-%{release}
193 %description plugin-field3d
194 OpenImageIO plugin to read Field3D files.
196 %description plugin-field3d -l pl.UTF-8
197 Wtyczka biblioteki OpenImageIO czytająca pliki Field3D.
200 Summary: Gif plugin for OpenImageIO library
201 Summary(pl.UTF-8): Wtyczka Gif dla biblioteki OpenImageIO
203 Requires: %{name} = %{version}-%{release}
205 %description plugin-gif
206 OpenImageIO plugin to read GIF files.
208 %description plugin-gif -l pl.UTF-8
209 Wtyczka biblioteki OpenImageIO czytająca pliki GIF.
212 Summary: ICO plugin for OpenImageIO library
213 Summary(pl.UTF-8): Wtyczka ICO dla biblioteki OpenImageIO
215 Requires: %{name} = %{version}-%{release}
217 %description plugin-ico
218 OpenImageIO plugin to read and write ICO files.
220 %description plugin-ico -l pl.UTF-8
221 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki ICO.
224 Summary: JPEG plugin for OpenImageIO library
225 Summary(pl.UTF-8): Wtyczka JPEG dla biblioteki OpenImageIO
227 Requires: %{name} = %{version}-%{release}
229 %description plugin-jpeg
230 OpenImageIO plugin to read and write JPEG files (with TIFF/EXIF
233 %description plugin-jpeg -l pl.UTF-8
234 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG (wraz
235 z informacjami TIFF/EXIF).
237 %package plugin-jpeg2000
238 Summary: JPEG2000 plugin for OpenImageIO library
239 Summary(pl.UTF-8): Wtyczka JPEG2000 dla biblioteki OpenImageIO
241 Requires: %{name} = %{version}-%{release}
243 %description plugin-jpeg2000
244 OpenImageIO plugin to read and write JPEG2000 files.
246 %description plugin-jpeg2000 -l pl.UTF-8
247 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG2000.
249 %package plugin-openexr
250 Summary: OpenEXR plugin for OpenImageIO library
251 Summary(pl.UTF-8): Wtyczka OpenEXR dla biblioteki OpenImageIO
253 Requires: %{name} = %{version}-%{release}
254 Requires: OpenEXR >= 2.0
256 %description plugin-openexr
257 OpenImageIO plugin to read and write OpenEXR files.
259 %description plugin-openexr -l pl.UTF-8
260 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki OpenEXR.
263 Summary: PNG plugin for OpenImageIO library
264 Summary(pl.UTF-8): Wtyczka PNG dla biblioteki OpenImageIO
266 Requires: %{name} = %{version}-%{release}
268 %description plugin-png
269 OpenImageIO plugin to read and write PNG files.
271 %description plugin-png -l pl.UTF-8
272 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PNG.
275 Summary: PSD plugin for OpenImageIO library
276 Summary(pl.UTF-8): Wtyczka PSD dla biblioteki OpenImageIO
278 Requires: %{name} = %{version}-%{release}
280 %description plugin-psd
281 OpenImageIO plugin to read and write PSD files.
283 %description plugin-psd -l pl.UTF-8
284 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PSD.
287 Summary: Ptex plugin for OpenImageIO library
288 Summary(pl.UTF-8): Wtyczka Ptex dla biblioteki OpenImageIO
290 Requires: %{name} = %{version}-%{release}
293 %description plugin-ptex
294 OpenImageIO plugin to read Ptex files.
296 %description plugin-ptex -l pl.UTF-8
297 Wtyczka biblioteki OpenImageIO czytająca pliki Ptex.
300 Summary: RAW plugin for OpenImageIO library
301 Summary(pl.UTF-8): Wtyczka RAW dla biblioteki OpenImageIO
303 Requires: %{name} = %{version}-%{release}
304 Requires: libraw >= 0.18
306 %description plugin-raw
307 OpenImageIO plugin to readTRAW files.
309 %description plugin-raw -l pl.UTF-8
310 Wtyczka biblioteki OpenImageIO czytająca pliki RAW.
313 Summary: WebP plugin for OpenImageIO library
314 Summary(pl.UTF-8): Wtyczka WebP dla biblioteki OpenImageIO
316 Requires: %{name} = %{version}-%{release}
318 %description plugin-webp
319 OpenImageIO plugin to read and write WebP files.
321 %description plugin-webp -l pl.UTF-8
322 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki WebP.
325 Summary: TIFF plugin for OpenImageIO library
326 Summary(pl.UTF-8): Wtyczka TIFF dla biblioteki OpenImageIO
328 Requires: %{name} = %{version}-%{release}
329 Requires: libtiff >= 3.9
331 %description plugin-tiff
332 OpenImageIO plugin to read and write TIFF files.
334 %description plugin-tiff -l pl.UTF-8
335 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki TIFF.
338 Summary: Programmer documentation for OpenImageIO library
339 Summary(pl.UTF-8): Dokumentacja programisty do biblioteki OpenImageIO
344 Programmer documentation for OpenImageIO library.
346 %description apidocs -l pl.UTF-8
347 Dokumentacja programisty do biblioteki OpenImageIO.
350 Summary: Qt/OpenImageIO-based Image Viewer
351 Summary(pl.UTF-8): Przeglądarka obrazków (IV) oparta o Qt i OpenImageIO
352 Group: X11/Applications/Graphics
353 Requires: %{name} = %{version}-%{release}
354 Requires: Qt5Core >= 5.6
355 Requires: Qt5Gui >= 5.6
356 Requires: Qt5OpenGL >= 5.6
357 Requires: Qt5Widgets >= 5.6
358 Requires: glew >= 1.5.1
361 IV is an image viewer based on ImageIO plugins; therefore it can read
362 images of any format for which an appropriate plugin may be found.
364 %description iv -l pl.UTF-8
365 IV to przeglądarka obrazków oparta na wtyczkach ImageIO; dzięki temu
366 jest w stanie odczytać obrazy w dowolnym formacie, dla którego
367 istnieje właściwa wtyczka.
369 %package -n python-OpenImageIO
370 Summary: Python binding for OpenImageIO library
371 Summary(pl.UTF-8): Wiązanie Pythona do biblioteki OpenImageIO
372 Group: Libraries/Python
373 Requires: %{name} = %{version}-%{release}
375 %description -n python-OpenImageIO
376 Python binding for OpenImageIO library.
378 %description -n python-OpenImageIO -l pl.UTF-8
379 Wiązanie Pythona do biblioteki OpenImageIO.
382 %setup -q -n oiio-Release-%{version}
389 %{__rm} -r src/dds.imageio/squish
390 # when using system pugixml, don't use hacked headers
391 %{__rm} src/include/OpenImageIO/pugi*.{c,h}pp
397 -DCMAKE_INSTALL_MANDIR=%{_mandir}/man1 \
399 -DOPENJPEG_INCLUDE_DIR=%{_includedir}/openjpeg-2.4 \
400 -DINCLUDE_INSTALL_DIR=%{_includedir}/%{name} \
401 -DLIB_INSTALL_DIR:PATH=%{_libdir} \
405 -DPYBIND11_HOME:PATH=%{py_incdir} \
406 -DPYLIB_INSTALL_DIR=%{py_sitedir} \
407 -DPYTHON_VERSION=%{py_ver} \
408 -DUSE_EXTERNAL_PUGIXML=ON \
409 -DSTOP_ON_WARNING=OFF \
410 %{!?with_ocio:-DUSE_OCIO=OFF} \
411 %{!?with_opencv:-DUSE_OPENCV=OFF} \
412 %{!?with_tbb:-DUSE_TBB=OFF}
417 rm -rf $RPM_BUILD_ROOT
419 %{__make} -C build install \
420 DESTDIR=$RPM_BUILD_ROOT
423 %{__mv} $RPM_BUILD_ROOT%{_bindir}/{iv,oiiv}
424 %{__mv} $RPM_BUILD_ROOT%{_mandir}/man1/{iv,oiiv}.1
427 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
430 rm -rf $RPM_BUILD_ROOT
432 %post -p /sbin/ldconfig
433 %postun -p /sbin/ldconfig
436 %defattr(644,root,root,755)
437 %doc CHANGES.md CREDITS.md LICENSE.md README.md
438 %attr(755,root,root) %{_bindir}/iconvert
439 %attr(755,root,root) %{_bindir}/idiff
440 %attr(755,root,root) %{_bindir}/igrep
441 %attr(755,root,root) %{_bindir}/iinfo
442 %attr(755,root,root) %{_bindir}/maketx
443 %attr(755,root,root) %{_bindir}/oiiotool
444 %attr(755,root,root) %{_libdir}/libOpenImageIO.so.*.*.*
445 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO.so.2.0
446 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so.*.*.*
447 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO_Util.so.2.0
448 %attr(755,root,root) %{_libdir}/bmp.imageio.so
449 %attr(755,root,root) %{_libdir}/fits.imageio.so
450 %attr(755,root,root) %{_libdir}/hdr.imageio.so
451 %attr(755,root,root) %{_libdir}/iff.imageio.so
452 %attr(755,root,root) %{_libdir}/pnm.imageio.so
453 %attr(755,root,root) %{_libdir}/rla.imageio.so
454 %attr(755,root,root) %{_libdir}/sgi.imageio.so
455 %attr(755,root,root) %{_libdir}/socket.imageio.so
456 %attr(755,root,root) %{_libdir}/softimage.imageio.so
457 %attr(755,root,root) %{_libdir}/targa.imageio.so
458 %attr(755,root,root) %{_libdir}/zfile.imageio.so
459 %attr(755,root,root) %{_libdir}/null.imageio.so
460 %{_mandir}/man1/iconvert.1*
461 %{_mandir}/man1/idiff.1*
462 %{_mandir}/man1/igrep.1*
463 %{_mandir}/man1/iinfo.1*
464 %{_mandir}/man1/maketx.1*
465 %{_mandir}/man1/oiiotool.1*
468 %defattr(644,root,root,755)
469 %attr(755,root,root) %{_libdir}/libOpenImageIO.so
470 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so
471 %{_includedir}/OpenImageIO
472 %{_pkgconfigdir}/OpenImageIO.pc
473 %{_datadir}/cmake/Modules/FindOpenImageIO.cmake
476 %defattr(644,root,root,755)
477 %attr(755,root,root) %{_libdir}/cineon.imageio.so
480 %defattr(644,root,root,755)
481 %attr(755,root,root) %{_libdir}/dicom.imageio.so
484 %defattr(644,root,root,755)
485 %attr(755,root,root) %{_libdir}/dds.imageio.so
488 %defattr(644,root,root,755)
489 %attr(755,root,root) %{_libdir}/dpx.imageio.so
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_libdir}/ffmpeg.imageio.so
495 %files plugin-field3d
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libdir}/field3d.imageio.so
500 %defattr(644,root,root,755)
501 %attr(755,root,root) %{_libdir}/gif.imageio.so
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/ico.imageio.so
508 %defattr(644,root,root,755)
509 %attr(755,root,root) %{_libdir}/jpeg.imageio.so
511 %files plugin-jpeg2000
512 %defattr(644,root,root,755)
513 %attr(755,root,root) %{_libdir}/jpeg2000.imageio.so
515 %files plugin-openexr
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_libdir}/openexr.imageio.so
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_libdir}/png.imageio.so
524 %defattr(644,root,root,755)
525 %attr(755,root,root) %{_libdir}/psd.imageio.so
528 %defattr(644,root,root,755)
529 %attr(755,root,root) %{_libdir}/ptex.imageio.so
532 %defattr(644,root,root,755)
533 %attr(755,root,root) %{_libdir}/raw.imageio.so
536 %defattr(644,root,root,755)
537 %attr(755,root,root) %{_libdir}/tiff.imageio.so
540 %defattr(644,root,root,755)
541 %attr(755,root,root) %{_libdir}/webp.imageio.so
544 %defattr(644,root,root,755)
545 %doc src/doc/openimageio.pdf
548 %defattr(644,root,root,755)
549 %attr(755,root,root) %{_bindir}/oiiv
550 %{_mandir}/man1/oiiv.1*
552 %files -n python-OpenImageIO
553 %defattr(644,root,root,755)
554 %attr(755,root,root) %{py_sitedir}/OpenImageIO.so