Blame openexr.spec

be2314c
%{?!python3_pkgversion:%global python3_pkgversion 3}
be2314c
%global sover 25
be2314c
be2314c
Name:           openexr
3272b5b
Version:        2.5.4
be2314c
Release:        1%{?dist}
be2314c
Summary:        Provides the specification and reference implementation of the EXR file format
be2314c
be2314c
License:        BSD
be2314c
URL:            https://www.openexr.com/
be2314c
Source0:        https://github.com/AcademySoftwareFoundation/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
be2314c
be2314c
Patch0:         openexr-gcc11.patch
be2314c
be2314c
BuildRequires:  cmake gcc gcc-c++
be2314c
BuildRequires:  boost-devel
be2314c
BuildRequires:  python%{python3_pkgversion}-devel
be2314c
BuildRequires:  zlib-devel
be2314c
be2314c
%description
be2314c
OpenEXR is an open-source high-dynamic-range floating-point image file format
be2314c
for high-quality image processing and storage. This document presents a brief
be2314c
overview of OpenEXR and explains concepts that are specific to this format.
be2314c
be2314c
This package containes the binaries for OpenEXR.
be2314c
be2314c
be2314c
%package libs
be2314c
Summary:        OpenEXR Libraries
be2314c
Provides:       OpenEXR-libs%{?isa} = %{version}-%{release}
be2314c
Obsoletes:      OpenEXR-libs%{?isa} < 2.5.3
be2314c
be2314c
%description libs
be2314c
OpenEXR is an open-source high-dynamic-range floating-point image file format
be2314c
for high-quality image processing and storage. This document presents a brief
be2314c
overview of OpenEXR and explains concepts that are specific to this format.
be2314c
be2314c
OpenEXR Features:
be2314c
be2314c
* High dynamic range and color precision.  Support for 16-bit floating-point,
be2314c
* 32-bit floating-point, and 32-bit integer pixels.
be2314c
* Multiple image compression algorithms, both lossless and lossy. Some of
be2314c
  the included codecs can achieve 2:1 lossless compression ratios on images
be2314c
  with film grain.  The lossy codecs have been tuned for visual quality and
be2314c
  decoding performance.
be2314c
* Extensibility. New compression codecs and image types can easily be added
be2314c
  by extending the C++ classes included in the OpenEXR software distribution.
be2314c
  New image attributes (strings, vectors, integers, etc.) can be added to
be2314c
  OpenEXR image headers without affecting backward compatibility with existing
be2314c
  OpenEXR applications.
be2314c
* Support for stereoscopic image workflows and a generalization
be2314c
  to multi-views.
be2314c
* Flexible support for deep data: pixels can store a variable-length list
be2314c
  of samples and, thus, it is possible to store multiple values at different
be2314c
  depths for each pixel. Hard surfaces and volumetric data representations are
be2314c
  accommodated.
be2314c
* Multipart: ability to encode separate, but related, images in one file.
be2314c
  This allows for access to individual parts without the need to read other
be2314c
  parts in the file.
be2314c
* Versioning: OpenEXR source allows for user configurable C++
be2314c
  namespaces to provide protection when using multiple versions of the library
be2314c
  in the same process space.
be2314c
be2314c
The IlmBase Library:
be2314c
be2314c
Also a part of OpenEXR, the IlmBase library is a basic, light-weight, and
be2314c
efficient representation of 2D and 3D vectors and matrices and other simple but
be2314c
useful mathematical objects, functions, and data types common in computer
be2314c
graphics applications, including the “half” 16-bit floating-point type.
be2314c
be2314c
be2314c
%package -n python%{python3_pkgversion}-openexr
be2314c
Summary:        Python 3 binding for OpenEXR
be2314c
%{?python_provide:%python_provide python3-openexr}
be2314c
be2314c
%description -n python%{python3_pkgversion}-openexr
be2314c
%{summary}.
be2314c
be2314c
be2314c
%package devel
be2314c
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
be2314c
be2314c
Provides:       OpenEXR-devel = %{version}-%{release}
be2314c
Provides:       OpenEXR-devel%{?_isa} = %{version}-%{release}
be2314c
Obsoletes:      OpenEXR-devel < 2.5.3
be2314c
be2314c
Provides:       ilmbase-devel = %{version}-%{release}
be2314c
Provides:       ilmbase-devel%{?_isa} = %{version}-%{release}
be2314c
Obsoletes:      ilmbase-devel < 2.5.3
be2314c
be2314c
Summary:        Development files for %{name}
be2314c
be2314c
%description devel
be2314c
%{summary}.
be2314c
be2314c
be2314c
%prep
be2314c
%autosetup -p1
be2314c
be2314c
be2314c
%build
be2314c
%cmake
be2314c
%cmake_build
be2314c
be2314c
be2314c
%install
be2314c
%cmake_install
be2314c
be2314c
be2314c
%check
be2314c
# Test 4 currently fails on aarch64
be2314c
# https://github.com/AcademySoftwareFoundation/openexr/issues/876
be2314c
%ifnarch aarch64 s390x
be2314c
%ctest
be2314c
%endif
be2314c
be2314c
be2314c
%files
be2314c
%{_bindir}/*
be2314c
be2314c
%files libs
be2314c
%doc CHANGES.md CONTRIBUTING.md GOVERNANCE.md SECURITY.md CODE_OF_CONDUCT.md CONTRIBUTORS.md README.md
be2314c
%license LICENSE.md
be2314c
%{_libdir}/*.so.%{sover}*
be2314c
%exclude %{_libdir}/libPy*
be2314c
be2314c
%files -n python%{python3_pkgversion}-openexr
be2314c
# Is it OK to dump the libraries in site-packages?
be2314c
%{_libdir}/libPy*.so.%{sover}*
be2314c
%{python3_sitearch}/*.so
be2314c
be2314c
%files devel
be2314c
%{_docdir}/OpenEXR/
be2314c
%{_includedir}/OpenEXR/
be2314c
%{_libdir}/*.so
be2314c
%{_libdir}/cmake/IlmBase/
be2314c
%{_libdir}/pkgconfig/IlmBase.pc
be2314c
%{_libdir}/cmake/PyIlmBase/
be2314c
%{_libdir}/pkgconfig/PyIlmBase.pc
be2314c
%{_libdir}/cmake/OpenEXR/
be2314c
%{_libdir}/pkgconfig/OpenEXR.pc
be2314c
be2314c
be2314c
%changelog
3272b5b
* Wed Jan 06 2021 Richard Shaw <hobbes1069@gmail.com> - 2.5.4-1
3272b5b
- Update to 2.5.4.
3272b5b
be2314c
* Wed Dec  9 2020 Richard Shaw <hobbes1069@gmail.com> - 2.5.3-1
be2314c
- Repackaged due to massive changes in build system and inclusion of IlmBase.