Add compat spec file.

This commit is contained in:
Richard Shaw 2021-07-06 12:01:06 -05:00
parent cbdf2382b9
commit 59bee8ff9c

126
openexr2.spec Normal file
View File

@ -0,0 +1,126 @@
%global sover 25
%global srcname openexr
%global pkgname %{srcname}2
Name: %{pkgname}
Version: 2.5.5
Release: 1%{?dist}
Summary: Provides the specification and reference implementation of the EXR file format
License: BSD
URL: https://www.openexr.com/
Source0: https://github.com/AcademySoftwareFoundation/%{srcname}/archive/v%{version}/%{srcname}-%{version}.tar.gz
Patch0: openexr-gcc11.patch
BuildRequires: cmake
BuildRequires: gcc gcc-c++
BuildRequires: boost-devel
BuildRequires: zlib-devel
%description
OpenEXR is an open-source high-dynamic-range floating-point image file format
for high-quality image processing and storage. This document presents a brief
overview of OpenEXR and explains concepts that are specific to this format.
NOTE: This is a compatibility package for projects that don't yet support
OpenEXR 3.0.
%package libs
Summary: OpenEXR Libraries
%description libs
OpenEXR is an open-source high-dynamic-range floating-point image file format
for high-quality image processing and storage. This document presents a brief
overview of OpenEXR and explains concepts that are specific to this format.
OpenEXR Features:
* High dynamic range and color precision. Support for 16-bit floating-point,
* 32-bit floating-point, and 32-bit integer pixels.
* Multiple image compression algorithms, both lossless and lossy. Some of
the included codecs can achieve 2:1 lossless compression ratios on images
with film grain. The lossy codecs have been tuned for visual quality and
decoding performance.
* Extensibility. New compression codecs and image types can easily be added
by extending the C++ classes included in the OpenEXR software distribution.
New image attributes (strings, vectors, integers, etc.) can be added to
OpenEXR image headers without affecting backward compatibility with existing
OpenEXR applications.
* Support for stereoscopic image workflows and a generalization
to multi-views.
* Flexible support for deep data: pixels can store a variable-length list
of samples and, thus, it is possible to store multiple values at different
depths for each pixel. Hard surfaces and volumetric data representations are
accommodated.
* Multipart: ability to encode separate, but related, images in one file.
This allows for access to individual parts without the need to read other
parts in the file.
* Versioning: OpenEXR source allows for user configurable C++
namespaces to provide protection when using multiple versions of the library
in the same process space.
The IlmBase Library:
Also a part of OpenEXR, the IlmBase library is a basic, light-weight, and
efficient representation of 2D and 3D vectors and matrices and other simple but
useful mathematical objects, functions, and data types common in computer
graphics applications, including the “half” 16-bit floating-point type.
NOTE: This is a compatibility package for projects that don't yet support
OpenEXR 3.0.
%package devel
Conflicts: openexr-devel
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Summary: Development files for %{name}
%description devel
%{summary}.
%prep
%autosetup -p1 -n %{srcname}-%{version}
%build
%cmake -DPYILMBASE_ENABLE=OFF \
-DOPENEXR_BUILD_UTILS=OFF
%cmake_build
%install
%cmake_install
# Remove extraneous documentation since this is a compat package.
rm -rf %{buildroot}%{_docdir}/OpenEXR/
%check
# Test 4 currently fails on aarch64 and sometimes times out on armv7hl
# https://github.com/AcademySoftwareFoundation/openexr/issues/876
%ifnarch armv7hl aarch64 s390x
%ctest
%endif
%files libs
%doc CHANGES.md CONTRIBUTING.md GOVERNANCE.md SECURITY.md CODE_OF_CONDUCT.md CONTRIBUTORS.md README.md
%license LICENSE.md
%{_libdir}/*.so.%{sover}*
%files devel
%{_includedir}/OpenEXR/
%{_libdir}/*.so
%{_libdir}/cmake/IlmBase/
%{_libdir}/pkgconfig/IlmBase.pc
%{_libdir}/cmake/OpenEXR/
%{_libdir}/pkgconfig/OpenEXR.pc
%changelog
* Sun Jul 04 2021 Richard Shaw <hobbes1069@gmail.com> - 2.5.5-1
- Initial packaging of compat package.