%define name_project OpenEXR %define name_postfix 2 %define name_combined %{name_project}%{name_postfix} %define name_base openexr2 %define release_major 10 %define release_minor 1 %define release_full %{release_major}.%{release_minor} # 1 to enable, 0 to disable, %{nil} for default %define backport %{nil} %define backport 0 %if 0%{?rhel}%{?fedora} %if 0%{?rhel} %if 0%{?rhel} <= 7 %define backport 1 %endif %endif %endif # for backport %define path_package %{nil} %if 0%{?backport} %define path_package /opt/%{name_base} %define _prefix /opt/%{name_base} %endif %define devtoolset %{nil} %if 0%{?rhel} %if 0%{?rhel} < 7 %define devtoolset 6 %endif %endif #Name: OpenEXR Name: %{name_combined} Summary: A high dynamic-range (HDR) image file format Version: 2.2.0 #Release: 10%{?dist} Release: %{release_full}%{?dist} License: BSD URL: http://www.openexr.com/ Source0: http://download.savannah.nongnu.org/releases/openexr/openexr-%{version}.tar.gz # fix tests for big endian arches # https://github.com/openexr/openexr/issues/81 Patch0: openexr-2.1.0-bigendian.patch %if 0%{?backport} #Obsoletes: %{name_project} < %{version}-%{release} #Obsoletes: %{name} < %{version}-%{release} #Provides: %{name_project} = %{version}-%{release} Provides: %{name} = %{version}-%{release} %else Obsoletes: openexr < %{version}-%{release} Provides: openexr = %{version}-%{release} %endif %if 0%{?backport} %else # https://github.com/openexr/openexr/issues/130 BuildConflicts: OpenEXR-devel < 2.2.0 %endif %if 0%{?backport} BuildRequires: ilmbase2-devel >= %{version} %else BuildRequires: ilmbase-devel >= %{version} %endif BuildRequires: zlib-devel BuildRequires: pkgconfig %if 0%{?devtoolset} BuildRequires: devtoolset-%{?devtoolset}-gcc BuildRequires: devtoolset-%{?devtoolset}-gcc-c++ # Better safe than sorry... BuildRequires: devtoolset-%{?devtoolset} BuildRequires: devtoolset-%{?devtoolset}-build BuildRequires: devtoolset-%{?devtoolset}-libstdc++-devel BuildRequires: devtoolset-%{?devtoolset}-libasan-devel BuildRequires: devtoolset-%{?devtoolset}-runtime %if %{?devtoolset} >= 6 BuildRequires: devtoolset-%{?devtoolset}-make %endif #Requires: devtoolset-%{?devtoolset}-gcc #Requires: devtoolset-%{?devtoolset}-gcc-c++ Requires: devtoolset-%{?devtoolset} #Requires: devtoolset-%{?devtoolset}-build #Requires: devtoolset-%{?devtoolset}-libstdc++-devel #Requires: devtoolset-%{?devtoolset}-libasan-devel #Requires: devtoolset-%{?devtoolset}-make Requires: devtoolset-%{?devtoolset}-runtime %else BuildRequires: gcc-c++ %endif Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications. This package contains libraries and sample applications for handling the format. %package devel Summary: Headers and libraries for building apps that use %{name} %if 0%{?backport} #Obsoletes: %{name_project}-devel < %{version}-%{release} #Obsoletes: %{name}-devel < %{version}-%{release} #Provides: %{name_project}-devel = %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} %else Obsoletes: openexr-devel < %{version}-%{release} Provides: openexr-devel = %{version}-%{release} %endif Requires: %{name}-libs%{?_isa} = %{version}-%{release} %if 0%{?backport} Requires: ilmbase2-devel%{?_isa} %else Requires: ilmbase-devel%{?_isa} %endif %description devel %{summary}. %package libs Summary: %{name} runtime libraries %description libs %{summary}. %prep %setup -q -n openexr-%{version} %patch0 -p1 -b .bigendian %build %if 0%{?backport} export OPENEXR_LIB_PATH="%{_libdir}" if [[ -n "${LD_LIBRARY_PATH}" ]]; then LD_LIBRARY_PATH="${OPENEXR_LIB_PATH}:${LD_LIBRARY_PATH}" else LD_LIBRARY_PATH="${OPENEXR_LIB_PATH}" fi export LD_LIBRARY_PATH %endif %if 0%{?devtoolset} export CC=/opt/rh/devtoolset-%{?devtoolset}/root/usr/bin/gcc export CPP=/opt/rh/devtoolset-%{?devtoolset}/root/usr/bin/cpp export CXX=/opt/rh/devtoolset-%{?devtoolset}/root/usr/bin/c++ %endif %configure \ --disable-static # hack to omit unused-direct-shlib-dependencies #sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool make %{?_smp_mflags} %install make install DESTDIR=%{buildroot} #unpackaged files rm -fv %{buildroot}%{_libdir}/lib*.la rm -rf %{buildroot}%{_docdir}/%{name_project}-%{version} %check export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig test "$(pkg-config --modversion OpenEXR)" = "%{version}" make %{?_smp_mflags} check ||: # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=790495 # https://kojipkgs.fedoraproject.org//packages/OpenEXR/2.2.0/10.fc27/data/logs/x86_64/build.log # comparing files ./comp_dwaa_v1.exr and ./comp_dwaa_piz.exr # ERROR -- caught exception: Cannot read image file "./comp_dwaa_v1.exr". No such file or directory. # lt-IlmImfTest: testSampleImages.cpp:181: void testSampleImages(const string&): Assertion `false' failed. # /bin/sh: line 5: 17059 Aborted (core dumped) ${dir}$tst # FAIL: IlmImfTest # ================== # 1 of 1 test failed # ================== # make[2]: *** [check-TESTS] Error 1 # make[2]: Leaving directory `/home/scx/rpmbuild/BUILD/openexr-2.2.0/IlmImfTest' # make[1]: *** [check-am] Error 2 # make[1]: Leaving directory `/home/scx/rpmbuild/BUILD/openexr-2.2.0/IlmImfTest' # make: *** [check-recursive] Error 1 # + : # + exit 0 %files %{_bindir}/exr* %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %files libs %doc AUTHORS ChangeLog LICENSE NEWS README %{_libdir}/libIlmImf-2_2.so.22* %{_libdir}/libIlmImfUtil-2_2.so.22* %files devel #omit for now, they're mostly useless, and include multilib conflicts (#342781) #doc rpmdocs/examples %{_datadir}/aclocal/openexr.m4 %{_includedir}/OpenEXR/* %{_libdir}/libIlmImf*.so %{_libdir}/pkgconfig/OpenEXR.pc %changelog * Wed Oct 18 2017 Tomasz Tomasik - 2.2.0-10.1 - Backport to EL7 - Rebuilt for EL7 * Wed Aug 02 2017 Fedora Release Engineering - 2.2.0-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 2.2.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 10 2017 Fedora Release Engineering - 2.2.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Wed Oct 12 2016 Björn Esser - 2.2.0-7 - rebuild (GCC 6.2) - whitespace clean-up * Tue Oct 11 2016 Rex Dieter - 2.2.0-6 - -devel: make ilmbase-devel dep arch'd * Wed Feb 03 2016 Fedora Release Engineering - 2.2.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Tue Jun 16 2015 Fedora Release Engineering - 2.2.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Thu Apr 16 2015 Rex Dieter 2.2.0-3 - rebuild (gcc5) * Wed Feb 18 2015 Rex Dieter 2.2.0-2 - rebuild (gcc5) * Thu Nov 20 2014 Rex Dieter 2.2.0-1 - 2.2.0 * Fri Aug 15 2014 Fedora Release Engineering - 2.1.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Fri Jun 06 2014 Fedora Release Engineering - 2.1.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Fri Jan 31 2014 Rex Dieter 2.1.0-3 - respin headers patch (to match upstream fix) * Wed Nov 27 2013 Rex Dieter 2.1.0-2 - install ImfDeepImageStateAttribute.h header too * Wed Nov 27 2013 Rex Dieter 2.1.0-1 - 2.1.0 * Wed Nov 20 2013 Dan Horák 2.0.1-3 - remove testing residue from optflags * Wed Nov 20 2013 Dan Horák 2.0.1-2 - fix tests for big endian arches * Wed Aug 28 2013 Rex Dieter 2.0.1-1 - openexr-2.0.1 * Fri Aug 02 2013 Fedora Release Engineering - 1.7.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Sun Mar 10 2013 Nicolas Chauvet - 1.7.1-5 - Back to upstream ABI (f19+, el7+) * Wed Feb 13 2013 Fedora Release Engineering - 1.7.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Mon Oct 15 2012 Nicolas Chauvet - 1.7.1-3 - Bump to hide revertion * Fri Aug 31 2012 Rex Dieter 1.7.1-2 - rebuild * Thu Aug 02 2012 Nicolas Chauvet - 1.7.1-1 - Update to 1.7.1 -* Wed Jul 18 2012 Fedora Release Engineering - 1.7.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Tue Feb 28 2012 Fedora Release Engineering - 1.7.0-4 - Rebuilt for c++ ABI breakage * Thu Jan 12 2012 Fedora Release Engineering - 1.7.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Mon Feb 07 2011 Fedora Release Engineering - 1.7.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Aug 11 2010 Rex Dieter 1.7.0-1 - openexr-1.7.0 * Wed Jul 29 2009 Rex Dieter 1.6.1-8 - CVE-2009-1720 OpenEXR: Multiple integer overflows (#513995) - CVE-2009-1721 OpenEXR: Invalid pointer free by image decompression (#514003) * Fri Jul 24 2009 Fedora Release Engineering - 1.6.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Mon Feb 23 2009 Fedora Release Engineering - 1.6.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Fri Dec 12 2008 Caolán McNamara 1.6.1-5 - rebuild to get provides pkgconfig(OpenEXR) * Fri May 09 2008 Rex Dieter 1.6.1-4 - drop: Obsoletes: OpenEXR-utils (see OpenEXR_Viewers review, bug #428228c3) * Fri Feb 01 2008 Rex Dieter 1.6.1-3 - gcc43 patch - purge rpaths * Wed Jan 09 2008 Rex Dieter 1.6.1-2 - hack to omit unused-direct-shlib-dependencies - conditionalize -libs (f8+) * Mon Jan 07 2008 Rex Dieter 1.6.1-1 - openexr-1.6.1 * Tue Oct 30 2007 Rex Dieter 1.6.0-5 - multiarch conflicts in OpenEXR (#342781) - don't own %%_includedir/OpenEXR (leave that to ilmbase) * Mon Oct 15 2007 Rex Dieter 1.6.0-4 - -libs: %%post/%%postun -p /sbin/ldconfig * Fri Oct 12 2007 Rex Dieter 1.6.0-2 - openexr-1.6.0 * Mon Sep 17 2007 Rex Dieter 1.4.0a-6 - libs: -Requires: %%name * Wed Aug 22 2007 Rex Dieter 1.4.0a-5 - -libs: new subpkg to be multilib friendly - -utils: package exrdisplay separately (separate fltk dep) * Sat Oct 28 2006 Rex Dieter 1.4.0a-4 - Obsoletes/Provides: openexr(-devel) (rpmforge compatibility) * Thu Sep 14 2006 Rex Dieter 1.4.0a-3 - pkgconfig patch to use Libs.private * Thu Sep 14 2006 Rex Dieter 1.4.0a-2 - -devel: +Requires: pkgconfig * Tue Aug 29 2006 Rex Dieter 1.4.0a-1 - openexr-1.4.0a * Sat Feb 18 2006 Ignacio Vazquez-Abrams 1.2.2-7 - Further zlib fixes (#165729) * Mon Feb 13 2006 Ignacio Vazquez-Abrams 1.2.2-6 - Rebuild for Fedora Extras 5 * Wed Aug 17 2005 Ignacio Vazquez-Abrams 1.2.2-5 - Remove *.a from %%files devel * Tue Aug 16 2005 Ignacio Vazquez-Abrams 1.2.2-4 - Removed -devel dep on zlib-devel (#165729) - Added --disable-static to %%configure - Fixed build with GCC 4.0.1 - Added .so links to -devel * Wed May 18 2005 Ignacio Vazquez-Abrams 1.2.2-3 - Add zlib-devel to BR - Delete all .la files (#157652) * Mon May 9 2005 Ignacio Vazquez-Abrams 1.2.2-2 - Add disttag * Sun May 8 2005 Ignacio Vazquez-Abrams 1.2.2-2 - Fix BuildRequires - Fix Requires on -devel - Add %%post[un] scriptlets - Fix ownership in -devel - Don't have .deps files in %%doc * Wed Mar 30 2005 Ignacio Vazquez-Abrams 1.2.2-1 - Initial RPM release