1 # to bootstrap: build OpenColorIO --without oiio, build OpenImageIO, rebuild OpenColorIO
4 %bcond_without ocio # OpenColorIO support in library
5 %bcond_without static_libs # don't build static libraries
6 %bcond_without tbb # Threading Building Blocks
9 # https://github.com/OpenImageIO/oiio/issues/583
12 %ifnarch %{ix86} %{x8664} %{arm} ia64 ppc ppc64
16 Summary: Library for reading and writing images
17 Summary(pl.UTF-8): Biblioteka do odczytu i zapisu obrazów
23 Source0: https://github.com/OpenImageIO/oiio/tarball/Release-%{version}/%{name}-%{version}.tar.gz
24 # Source0-md5: 3d722173d84cc705f4aead0679fa2393
25 Patch0: %{name}-link.patch
26 Patch1: %{name}-system-squish.patch
27 Patch2: %{name}-system-libcineon.patch
28 Patch3: no-clang-format.patch
29 URL: https://sites.google.com/site/openimageio/home
30 BuildRequires: Field3D-devel
31 %{?with_ocio:BuildRequires: OpenColorIO-devel}
32 BuildRequires: OpenEXR-devel >= 1.6.1
33 BuildRequires: OpenGL-devel
34 BuildRequires: QtCore-devel
35 BuildRequires: QtGui-devel
36 BuildRequires: QtOpenGL-devel
37 # filesystem, regex, system, thread
38 BuildRequires: boost-devel >= 1.35
39 BuildRequires: boost-python-devel >= 1.35
40 BuildRequires: cmake >= 2.6
41 BuildRequires: dcmtk-devel
42 BuildRequires: ffmpeg-devel
43 BuildRequires: giflib-devel
44 BuildRequires: glew-devel >= 1.5.1
45 BuildRequires: hdf5-devel
46 BuildRequires: ilmbase-devel >= 1.0.1
47 BuildRequires: jasper-devel
48 BuildRequires: libcineon-devel
49 BuildRequires: libjpeg-devel
50 BuildRequires: libpng-devel
51 BuildRequires: libraw-devel
52 BuildRequires: libstdc++-devel
53 BuildRequires: libtiff-devel
54 BuildRequires: libwebp-devel
55 BuildRequires: openjpeg2-devel
56 BuildRequires: ptex-devel >= 2.1
57 BuildRequires: pugixml-devel
58 BuildRequires: python-devel >= 1:2.6
59 BuildRequires: python-pybind11
60 BuildRequires: robin-map-devel
61 BuildRequires: squish-devel >= 1.10
62 %{?with_tbb:BuildRequires: tbb-devel}
63 BuildRequires: txt2man
64 BuildRequires: zlib-devel
65 Requires: ilmbase >= 1.0.1
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69 OpenImageIO is a library for reading and writing images, and a bunch
70 of related classes, utilities, and applications. It has extremely
71 simple but powerful ImageInput and ImageOutput APIs for reading and
72 writing 2D images that is format agnostic; specific formats are
73 implemented by DLL/DSO plugins.
75 Currently there are format plugins for: TIFF, JPEG/JFIF, OpenEXR, PNG,
76 HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO, RMan Zfile,
77 Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
79 %description -l pl.UTF-8
80 OpenImageIO to biblioteka do odczytu i zapisu obrazów oraz wiele
81 powiązanych klas, narzędzi i aplikacji. Ma bardzo proste, ale mające
82 wiele możliwości API ImageInput i ImageOutput służące do odczytu i
83 zapisu obrazów 2D, które jest niezależne od formatu; konkretne formaty
84 są implementowane przez wtyczki DLL/DSO.
86 Obecnie istnieją wtyczki obsługujące formaty: TIFF, JPEG/JFIF,
87 OpenEXR, PNG, HDR/RGBE, Targa, JPEG-2000, DPX, Cineon, FITS, BMP, ICO,
88 RMan Zfile, Softimage PIC, DDS, SGI, PNM/PPM/PGM/PBM, Field3d, WebP.
91 Summary: Header files for OpenImageIO library
92 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki OpenImageIO
93 Group: Development/Libraries
94 Requires: %{name} = %{version}-%{release}
95 Requires: libstdc++-devel
98 Header files for OpenImageIO library.
100 %description devel -l pl.UTF-8
101 Pliki nagłówkowe biblioteki OpenImageIO.
103 %package plugin-cineon
104 Summary: Cineon plugin for OpenImageIO library
105 Summary(pl.UTF-8): Wtyczka Cineon dla biblioteki OpenImageIO
107 Requires: %{name} = %{version}-%{release}
109 %description plugin-cineon
110 OpenImageIO plugin to read Cineon files.
112 %description plugin-cineon -l pl.UTF-8
113 Wtyczka biblioteki OpenImageIO czytająca pliki Cineon.
115 %package plugin-dicom
116 Summary: DICOM plugin for OpenImageIO library
117 Summary(pl.UTF-8): Wtyczka DICOM dla biblioteki OpenImageIO
119 Requires: %{name} = %{version}-%{release}
120 Requires: squish >= 1.10
122 %description plugin-dicom
123 OpenImageIO plugin to read DICOM files.
125 %description plugin-dicom -l pl.UTF-8
126 Wtyczka biblioteki OpenImageIO czytająca pliki DICOM.
129 Summary: DDS plugin for OpenImageIO library
130 Summary(pl.UTF-8): Wtyczka DDS dla biblioteki OpenImageIO
132 Requires: %{name} = %{version}-%{release}
133 Requires: squish >= 1.10
135 %description plugin-dds
136 OpenImageIO plugin to read DDS files.
138 %description plugin-dds -l pl.UTF-8
139 Wtyczka biblioteki OpenImageIO czytająca pliki DDS.
142 Summary: DPX plugin for OpenImageIO library
143 Summary(pl.UTF-8): Wtyczka DPX dla biblioteki OpenImageIO
145 Requires: %{name} = %{version}-%{release}
147 %description plugin-dpx
148 OpenImageIO plugin to read and write DPX files.
150 %description plugin-dpx -l pl.UTF-8
151 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki DPX.
153 %package plugin-ffmpeg
154 Summary: FFmpeg plugin for OpenImageIO library
155 Summary(pl.UTF-8): Wtyczka FFmpeg dla biblioteki OpenImageIO
157 Requires: %{name} = %{version}-%{release}
159 %description plugin-ffmpeg
160 OpenImageIO plugin to read FFmpeg files.
162 %description plugin-ffmpeg -l pl.UTF-8
163 Wtyczka biblioteki OpenImageIO czytająca pliki FFmpeg.
165 %package plugin-field3d
166 Summary: Field3D plugin for OpenImageIO library
167 Summary(pl.UTF-8): Wtyczka Field3D dla biblioteki OpenImageIO
169 Requires: %{name} = %{version}-%{release}
171 %description plugin-field3d
172 OpenImageIO plugin to read Field3D files.
174 %description plugin-field3d -l pl.UTF-8
175 Wtyczka biblioteki OpenImageIO czytająca pliki Field3D.
178 Summary: Gif plugin for OpenImageIO library
179 Summary(pl.UTF-8): Wtyczka Gif dla biblioteki OpenImageIO
181 Requires: %{name} = %{version}-%{release}
183 %description plugin-gif
184 OpenImageIO plugin to read GIF files.
186 %description plugin-gif -l pl.UTF-8
187 Wtyczka biblioteki OpenImageIO czytająca pliki GIF.
190 Summary: ICO plugin for OpenImageIO library
191 Summary(pl.UTF-8): Wtyczka ICO dla biblioteki OpenImageIO
193 Requires: %{name} = %{version}-%{release}
195 %description plugin-ico
196 OpenImageIO plugin to read and write ICO files.
198 %description plugin-ico -l pl.UTF-8
199 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki ICO.
202 Summary: JPEG plugin for OpenImageIO library
203 Summary(pl.UTF-8): Wtyczka JPEG dla biblioteki OpenImageIO
205 Requires: %{name} = %{version}-%{release}
207 %description plugin-jpeg
208 OpenImageIO plugin to read and write JPEG files (with TIFF/EXIF
211 %description plugin-jpeg -l pl.UTF-8
212 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG (wraz
213 z informacjami TIFF/EXIF).
215 %package plugin-jpeg2000
216 Summary: JPEG2000 plugin for OpenImageIO library
217 Summary(pl.UTF-8): Wtyczka JPEG2000 dla biblioteki OpenImageIO
219 Requires: %{name} = %{version}-%{release}
221 %description plugin-jpeg2000
222 OpenImageIO plugin to read and write JPEG2000 files.
224 %description plugin-jpeg2000 -l pl.UTF-8
225 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki JPEG2000.
227 %package plugin-openexr
228 Summary: OpenEXR plugin for OpenImageIO library
229 Summary(pl.UTF-8): Wtyczka OpenEXR dla biblioteki OpenImageIO
231 Requires: %{name} = %{version}-%{release}
232 Requires: OpenEXR >= 1.6.1
234 %description plugin-openexr
235 OpenImageIO plugin to read and write OpenEXR files.
237 %description plugin-openexr -l pl.UTF-8
238 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki OpenEXR.
241 Summary: PNG plugin for OpenImageIO library
242 Summary(pl.UTF-8): Wtyczka PNG dla biblioteki OpenImageIO
244 Requires: %{name} = %{version}-%{release}
246 %description plugin-png
247 OpenImageIO plugin to read and write PNG files.
249 %description plugin-png -l pl.UTF-8
250 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PNG.
253 Summary: PSD plugin for OpenImageIO library
254 Summary(pl.UTF-8): Wtyczka PSD dla biblioteki OpenImageIO
256 Requires: %{name} = %{version}-%{release}
258 %description plugin-psd
259 OpenImageIO plugin to read and write PSD files.
261 %description plugin-psd -l pl.UTF-8
262 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki PSD.
265 Summary: Ptex plugin for OpenImageIO library
266 Summary(pl.UTF-8): Wtyczka Ptex dla biblioteki OpenImageIO
268 Requires: %{name} = %{version}-%{release}
271 %description plugin-ptex
272 OpenImageIO plugin to read Ptex files.
274 %description plugin-ptex -l pl.UTF-8
275 Wtyczka biblioteki OpenImageIO czytająca pliki Ptex.
278 Summary: RAW plugin for OpenImageIO library
279 Summary(pl.UTF-8): Wtyczka RAW dla biblioteki OpenImageIO
281 Requires: %{name} = %{version}-%{release}
283 %description plugin-raw
284 OpenImageIO plugin to readTRAW files.
286 %description plugin-raw -l pl.UTF-8
287 Wtyczka biblioteki OpenImageIO czytająca pliki RAW.
290 Summary: WebP plugin for OpenImageIO library
291 Summary(pl.UTF-8): Wtyczka WebP dla biblioteki OpenImageIO
293 Requires: %{name} = %{version}-%{release}
295 %description plugin-webp
296 OpenImageIO plugin to read and write WebP files.
298 %description plugin-webp -l pl.UTF-8
299 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki WebP.
302 Summary: TIFF plugin for OpenImageIO library
303 Summary(pl.UTF-8): Wtyczka TIFF dla biblioteki OpenImageIO
305 Requires: %{name} = %{version}-%{release}
307 %description plugin-tiff
308 OpenImageIO plugin to read and write TIFF files.
310 %description plugin-tiff -l pl.UTF-8
311 Wtyczka biblioteki OpenImageIO czytająca i zapisująca pliki TIFF.
314 Summary: Programmer documentation for OpenImageIO library
315 Summary(pl.UTF-8): Dokumentacja programisty do biblioteki OpenImageIO
317 %if "%{_rpmversion}" >= "5"
322 Programmer documentation for OpenImageIO library.
324 %description apidocs -l pl.UTF-8
325 Dokumentacja programisty do biblioteki OpenImageIO.
328 Summary: Qt/OpenImageIO-based Image Viewer
329 Summary(pl.UTF-8): Przeglądarka obrazków (IV) oparta o Qt i OpenImageIO
330 Group: X11/Applications/Graphics
331 Requires: %{name} = %{version}-%{release}
332 Requires: glew >= 1.5.1
335 IV is an image viewer based on ImageIO plugins; therefore it can read
336 images of any format for which an appropriate plugin may be found.
338 %description iv -l pl.UTF-8
339 IV to przeglądarka obrazków oparta na wtyczkach ImageIO; dzięki temu
340 jest w stanie odczytać obrazy w dowolnym formacie, dla którego
341 istnieje właściwa wtyczka.
343 %package -n python-OpenImageIO
344 Summary: Python binding for OpenImageIO library
345 Summary(pl.UTF-8): Wiązanie Pythona do biblioteki OpenImageIO
346 Group: Libraries/Python
347 Requires: %{name} = %{version}-%{release}
349 %description -n python-OpenImageIO
350 Python binding for OpenImageIO library.
352 %description -n python-OpenImageIO -l pl.UTF-8
353 Wiązanie Pythona do biblioteki OpenImageIO.
356 %setup -q -n %{name}-oiio-7f79c70
362 %{__rm} -r src/dds.imageio/squish
363 # when using system pugixml, don't use hacked headers
364 %{__rm} src/include/OpenImageIO/pugi*.{c,h}pp
374 -DOPENJPEG_INCLUDE_DIR=%{_includedir}/openjpeg-2.3 \
375 -DINCLUDE_INSTALL_DIR=%{_includedir}/%{name} \
376 -DLIB_INSTALL_DIR:PATH=%{_libdir} \
377 -DPYLIB_INSTALL_DIR=%{py_sitedir} \
378 -DPYTHON_VERSION=%{py_ver} \
379 -DUSE_EXTERNAL_PUGIXML=ON \
380 -DSTOP_ON_WARNING=OFF \
381 -DPYBIND11_HOME:PATH=%{py_incdir} \
382 -DCMAKE_INSTALL_MANDIR=%{_mandir}/man1 \
383 %{!?with_ocio:-DUSE_OCIO=OFF} \
384 %{!?with_tbb:-DUSE_TBB=OFF}
389 rm -rf $RPM_BUILD_ROOT
391 %{__make} -C build install \
392 DESTDIR=$RPM_BUILD_ROOT
395 %{__mv} $RPM_BUILD_ROOT%{_bindir}/{iv,oiiv}
396 %{__mv} $RPM_BUILD_ROOT%{_mandir}/man1/{iv,oiiv}.1
399 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
402 rm -rf $RPM_BUILD_ROOT
404 %post -p /sbin/ldconfig
405 %postun -p /sbin/ldconfig
408 %defattr(644,root,root,755)
409 %doc CHANGES.md CREDITS.md LICENSE.md README.md
410 %attr(755,root,root) %{_bindir}/iconvert
411 %attr(755,root,root) %{_bindir}/idiff
412 %attr(755,root,root) %{_bindir}/igrep
413 %attr(755,root,root) %{_bindir}/iinfo
414 %attr(755,root,root) %{_bindir}/maketx
415 %attr(755,root,root) %{_bindir}/oiiotool
416 %attr(755,root,root) %{_libdir}/libOpenImageIO.so.*.*.*
417 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO.so.2.0
418 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so.*.*.*
419 %attr(755,root,root) %ghost %{_libdir}/libOpenImageIO_Util.so.2.0
420 %attr(755,root,root) %{_libdir}/bmp.imageio.so
421 %attr(755,root,root) %{_libdir}/fits.imageio.so
422 %attr(755,root,root) %{_libdir}/hdr.imageio.so
423 %attr(755,root,root) %{_libdir}/iff.imageio.so
424 %attr(755,root,root) %{_libdir}/pnm.imageio.so
425 %attr(755,root,root) %{_libdir}/rla.imageio.so
426 %attr(755,root,root) %{_libdir}/sgi.imageio.so
427 %attr(755,root,root) %{_libdir}/socket.imageio.so
428 %attr(755,root,root) %{_libdir}/softimage.imageio.so
429 %attr(755,root,root) %{_libdir}/targa.imageio.so
430 %attr(755,root,root) %{_libdir}/zfile.imageio.so
431 %attr(755,root,root) %{_libdir}/null.imageio.so
432 %{_mandir}/man1/iconvert.1*
433 %{_mandir}/man1/idiff.1*
434 %{_mandir}/man1/igrep.1*
435 %{_mandir}/man1/iinfo.1*
436 %{_mandir}/man1/maketx.1*
437 %{_mandir}/man1/oiiotool.1*
440 %defattr(644,root,root,755)
441 %attr(755,root,root) %{_libdir}/libOpenImageIO.so
442 %attr(755,root,root) %{_libdir}/libOpenImageIO_Util.so
443 %{_includedir}/OpenImageIO
444 %{_pkgconfigdir}/OpenImageIO.pc
445 %{_datadir}/cmake/Modules/FindOpenImageIO.cmake
448 %defattr(644,root,root,755)
449 %attr(755,root,root) %{_libdir}/cineon.imageio.so
452 %defattr(644,root,root,755)
453 %attr(755,root,root) %{_libdir}/dicom.imageio.so
456 %defattr(644,root,root,755)
457 %attr(755,root,root) %{_libdir}/dds.imageio.so
460 %defattr(644,root,root,755)
461 %attr(755,root,root) %{_libdir}/dpx.imageio.so
464 %defattr(644,root,root,755)
465 %attr(755,root,root) %{_libdir}/ffmpeg.imageio.so
467 %files plugin-field3d
468 %defattr(644,root,root,755)
469 %attr(755,root,root) %{_libdir}/field3d.imageio.so
472 %defattr(644,root,root,755)
473 %attr(755,root,root) %{_libdir}/gif.imageio.so
476 %defattr(644,root,root,755)
477 %attr(755,root,root) %{_libdir}/ico.imageio.so
480 %defattr(644,root,root,755)
481 %attr(755,root,root) %{_libdir}/jpeg.imageio.so
483 %files plugin-jpeg2000
484 %defattr(644,root,root,755)
485 %attr(755,root,root) %{_libdir}/jpeg2000.imageio.so
487 %files plugin-openexr
488 %defattr(644,root,root,755)
489 %attr(755,root,root) %{_libdir}/openexr.imageio.so
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_libdir}/png.imageio.so
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libdir}/psd.imageio.so
500 %defattr(644,root,root,755)
501 %attr(755,root,root) %{_libdir}/ptex.imageio.so
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/raw.imageio.so
508 %defattr(644,root,root,755)
509 %attr(755,root,root) %{_libdir}/tiff.imageio.so
512 %defattr(644,root,root,755)
513 %attr(755,root,root) %{_libdir}/webp.imageio.so
516 %defattr(644,root,root,755)
517 %doc src/doc/openimageio.pdf
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_bindir}/oiiv
522 %{_mandir}/man1/oiiv.1*
524 %files -n python-OpenImageIO
525 %defattr(644,root,root,755)
526 %attr(755,root,root) %{py_sitedir}/OpenImageIO.so