OpenImageIO/OpenImageIO.spec
Richard M. Shaw 6c9f5a1ca4 Update to latest upstream release.
Upstream has accepted the NOP solution for arm and s390 but some patching may still be necessary.
TBB is no longer required as the internal spinlocks are faster than the TBB implementation.
2013-07-15 15:13:26 -05:00

276 lines
7.9 KiB
RPMSpec

Name: OpenImageIO
Version: 1.2.0
Release: 1%{?dist}
Summary: Library for reading and writing images
Group: Development/Libraries
License: BSD
URL: https://sites.google.com/site/openimageio/home
Source0: https://download.github.com/oiio-Release-%{version}.tar.gz
# Images for test suite
#Source1: oiio-images.tar.gz
Source101: FindTBB.cmake
Patch0: oiio-arm.patch
Patch1: oiio-ppc.patch
Patch2: oiio-s390.patch
BuildRequires: cmake txt2man
BuildRequires: qt4-devel
BuildRequires: boost-devel
BuildRequires: glew-devel
BuildRequires: OpenEXR-devel ilmbase-devel
BuildRequires: python2-devel
BuildRequires: libpng-devel libtiff-devel openjpeg-devel libwebp-devel
BuildRequires: zlib-devel
BuildRequires: jasper-devel
BuildRequires: pugixml-devel
#%ifarch x86_64
#BuildRequires: tbb-devel
#%endif
BuildRequires: hdf5-devel Field3D-devel
BuildRequires: OpenColorIO-devel
# We don't want to provide private python extension libs
%{?filter_setup:
%filter_provides_in %{python_sitearch}/.*\.so$
%filter_setup
}
%description
OpenImageIO is a library for reading and writing images, and a bunch of related
classes, utilities, and applications. Main features include:
- Extremely simple but powerful ImageInput and ImageOutput APIs for reading and
writing 2D images that is format agnostic.
- Format plugins for TIFF, JPEG/JFIF, OpenEXR, PNG, HDR/RGBE, Targa, JPEG-2000,
DPX, Cineon, FITS, BMP, ICO, RMan Zfile, Softimage PIC, DDS, SGI,
PNM/PPM/PGM/PBM, Field3d.
- An ImageCache class that transparently manages a cache so that it can access
truly vast amounts of image data.
%package utils
Summary: Command line utilies for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description utils
Command-line tools to minipulate and get information on images using the
%{name} library.
%package iv
Summary: %{name} based image viewer.
Requires: %{name}%{?_isa} = %{version}-%{release}
%description iv
A really nice image viewer, iv, based on %{name} classes (and so will work with
any formats for which plugins are available).
%package devel
Summary: Documentation for %{name}
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
Development files for package %{name}
%prep
%setup -q -n oiio-Release-%{version}
%patch0 -p1 -b .arm
%patch1 -p1 -b .ppc
#patch2 -p1 -b .s390
# Install FindTBB.cmake
install %{SOURCE101} src/cmake/modules/
# Remove bundled pugixml
rm -f src/include/pugixml.hpp \
src/include/pugiconfig.hpp \
src/libutil/pugixml.cpp
# Remove bundled tbb
rm -rf src/include/tbb
# Install test images
#rm -rf ../oiio-images && mkdir ../oiio-images && pushd ../oiio-images
#tar --strip-components=1 -xzf %{SOURCE1}
%build
rm -rf build/linux && mkdir -p build/linux && pushd build/linux
# CMAKE_SKIP_RPATH is OK here because it is set to FALSE internally and causes
# CMAKE_INSTALL_RPATH to be cleared, which is the desiered result.
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_SKIP_RPATH:BOOL=TRUE \
-DINCLUDE_INSTALL_DIR:PATH=/usr/include/%{name} \
-DPYLIB_INSTALL_DIR:PATH=%{python_sitearch} \
-DINSTALL_DOCS:BOOL=FALSE \
-DUSE_EXTERNAL_PUGIXML:BOOL=TRUE \
-DUSE_TBB:BOOL=FALSE \
%ifarch ppc ppc64
-DNOTHREADS:BOOL=TRUE \
%endif
../../src
make %{?_smp_mflags}
%install
pushd build/linux
make DESTDIR=%{buildroot} install
# Move man pages to the right directory
mkdir -p %{buildroot}%{_mandir}/man1
cp -a doc/*.1 %{buildroot}%{_mandir}/man1
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%check
# Not all tests pass on linux
#pushd build/linux && make test
%files
%doc CHANGES LICENSE
%{_libdir}/libOpenImageIO.so.*
%{python_sitearch}/OpenImageIO.so
%files utils
%exclude %{_bindir}/iv
%{_bindir}/*
%exclude %{_mandir}/man1/iv.1.gz
%{_mandir}/man1/*.1.gz
%files iv
%{_bindir}/iv
%{_mandir}/man1/iv.1.gz
%files devel
%doc src/doc/*.pdf
%{_libdir}/libOpenImageIO.so
%{_includedir}/*
%changelog
* Fri Jul 15 2013 Richard Shaw <hobbes1069@gmail.com> - 1.2.0-1
- Update to latest upstream release.
* Wed Jul 3 2013 Richard Shaw <hobbes1069@gmail.com> - 1.1.13-1
- Update to latest bugfix release.
* Mon Jul 1 2013 Richard Shaw <hobbes1069@gmail.com> - 1.1.11-1
- Update to lastest bugfix release.
- Upstream patch makes native spinlocks faster than TBB. TBB no longer needed.
* Mon May 27 2013 Karsten Hopp <karsten@redhat.com> 1.1.10-4
- modify ppc patch for current release
* Fri May 24 2013 Petr Machata <pmachata@redhat.com> - 1.1.10-3
- Rebuild for TBB memory barrier bug
* Mon May 20 2013 Dan Horák <dan[at]danny.cz> - 1.1.10-2
- fix build on s390(x)
* Tue Apr 23 2013 Richard Shaw <hobbes1069@gmail.com> - 1.1.10-1
- Update to latest upstream release.
* Sun Mar 31 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.1.3-7
- Add upstream patch to fix FTBFS on ARM (RHBZ 924932)
* Sun Mar 10 2013 Rex Dieter <rdieter@fedoraproject.org> 1.1.3-6
- rebuild (OpenEXR)
* Sun Feb 10 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.1.3-5
- Rebuild for Boost-1.53.0
* Sat Feb 09 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 1.1.3-4
- Rebuild for Boost-1.53.0
* Mon Jan 28 2013 Karsten Hopp <karsten@redhat.com> 1.1.3-3
- update PPC patch, use power64 macro
* Fri Jan 18 2013 Adam Tkac <atkac redhat com> - 1.1.3-2
- rebuild due to "jpeg8-ABI" feature drop
* Mon Jan 14 2013 Richard Shaw <hobbes1069@gmail.com> - 1.1.3-1
- Update to latest upstream release.
- Separate utilities and library packages.
* Fri Dec 28 2012 Richard W.M. Jones <rjones@redhat.com> - 1.0.9-3
- Rebuild, see
http://lists.fedoraproject.org/pipermail/devel/2012-December/175685.html
* Thu Dec 13 2012 Adam Jackson <ajax@redhat.com> - 1.0.9-2
- Rebuild for glew 1.9.0
* Sat Sep 22 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.9-1
- Update to latest upstream release.
* Wed Aug 8 2012 David Malcolm <dmalcolm@redhat.com> - 1.0.8-2
- rebuild against boost-1.50
* Wed Aug 01 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.8-1
- Update to latest upstream release.
* Mon Jul 30 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.7-3
- Rebuild for updated libGLEW.
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jul 09 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.7-1
- Update to latest upstream release.
* Thu Jun 28 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.6-1
- Update to latest upstream release.
- Fix linking against TBB which broke at some point.
* Tue Jun 12 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.5-1
- Update to latest upstream release.
* Mon May 07 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.4-2
- Rebuild for updated libtiff.
- Add OpenColorIO to build requirements.
* Thu May 03 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.4-1
- Update to latest upstream release.
* Tue Apr 24 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.3-1
- Update to latest upstream release.
* Fri Mar 02 2012 Richard Shaw <hobbes1069@gmail.com> - 1.0.0-1
- Update to latest upstream release.
* Thu Jan 05 2012 Richard Shaw <hobbes1069@gmail.com> - 0.10.4-1
- Update to 0.10.4.
- Rebuild for GCC 4.7.0.
* Fri Dec 02 2011 Richard Shaw <hobbes1069@gmail.com> - 0.10.3-1
- Build against TBB library.
* Sat Nov 05 2011 Richard Shaw <hobbes1069@gmail.com> - 0.10.3-1
- Update to 0.10.3
- Rebuild for libpng 1.5.
- Fixed bulding against tbb library.
* Thu Aug 27 2011 Tom Callaway <spot@fedoraproject.org> - 0.10.2-1
- Update to 0.10.2
* Thu Aug 04 2011 Richard Shaw <hobbes1069@gmail.com> - 0.10.1-2
- New upstream release.
- Fix private shared object provides with python library.
* Mon Jul 18 2011 Richard Shaw <hobbes1069@gmail.com> - 0.10.0-2
- Disabled use of the TBB library.
- Moved headers to named directory.
* Tue Jul 05 2011 Richard Shaw <hobbes1069@gmail.com> - 0.10.0-1
- Inital Release.