# Conditional build:
%bcond_without oiio # OpenImageIO-dependent apps (ocioconvert,ociodisplay)
%bcond_without opengl # OpenGL-dependent app (ociodisplay)
-%bcond_without java # JNI glue
-%bcond_without docs # documentation
+%bcond_with java # JNI glue
+%bcond_with doc # documentation
%bcond_with sse2 # use SSE2 instructions
#
%ifarch %{x8664} pentrium4
Summary: Complete color management solution
Summary(pl.UTF-8): Kompletny pakiet do zarządzania kolorami
Name: OpenColorIO
-Version: 1.0.6
-Release: 1
+Version: 2.1.1
+Release: 4
License: BSD
Group: Libraries
-Source0: https://github.com/imageworks/OpenColorIO/tarball/v%{version}#/%{name}-%{version}.tar.gz
-# Source0-md5: 7bd5521d8671be9f9f92339b32497908
-Patch0: %{name}-system-libs.patch
-Patch1: %{name}-java.patch
+#Source0Download: https://github.com/imageworks/OpenColorIO/releases
+Source0: https://github.com/imageworks/OpenColorIO/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 604f562e073f23d88ce89ed4f7f709ba
URL: http://opencolorio.org/
-# g++ with tr1 support or...
-#BuildRequires: boost-devel >= 1.34
+BuildRequires: Imath-devel >= 3.1.2
BuildRequires: cmake >= 2.8
%{?with_java:BuildRequires: jdk}
-BuildRequires: libstdc++-devel
+BuildRequires: libstdc++-devel >= 6:4.7
BuildRequires: pkgconfig
-BuildRequires: python-devel
-%{?with_docs:BuildRequires: sphinx-pdg >= 1.1}
+BuildRequires: pystring-devel
+BuildRequires: python3-devel
+BuildRequires: python3-pybind11 >= 2.6.1
+%if %{with doc}
+BuildRequires: python3-recommonmark
+BuildRequires: python3-testresources
+BuildRequires: sphinx-pdg >= 1.1
+%endif
BuildRequires: tinyxml-devel >= 2.6.1
-BuildRequires: yaml-cpp-devel >= 0.2.6
+BuildRequires: yaml-cpp-devel >= 0.3.0
%if %{with opengl}
BuildRequires: OpenGL-devel
BuildRequires: OpenGL-glut-devel
BuildRequires: OpenImageIO-devel
BuildRequires: lcms2-devel >= 2.1
%endif
+BuildRequires: rpmbuild(macros) >= 1.742
Requires: tinyxml >= 2.6.1
-Requires: yaml-cpp >= 0.2.6
+Requires: yaml-cpp >= 0.3.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl.UTF-8): Narzędzie OpenColorIO do konwersji
Group: Applications/Graphics
Requires: %{name} = %{version}-%{release}
+Requires: lcms2 >= 2.1
%description convert
OpenColorIO convert tool.
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki OpenColorIO.
-%package static
-Summary: Static OpenColorIO library
-Summary(pl.UTF-8): Statyczna biblioteka OpenColorIO
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description static
-Static OpenColorIO library.
-
-%description static -l pl.UTF-8
-Statyczna biblioteka OpenColorIO.
-
%package -n java-OpenColorIO
Summary: Java binding for OpenColorIO library
Summary(pl.UTF-8): Wiązanie Javy do biblioteki OpenColorIO
%description -n java-OpenColorIO -l pl.UTF-8
Wiązanie Javy do biblioteki OpenColorIO.
-%package -n python-OpenColorIO
+%package -n python3-OpenColorIO
Summary: Python binding for OpenColorIO library
Summary(pl.UTF-8): Wiązanie Pythona do biblioteki OpenColorIO
Group: Libraries/Python
Requires: %{name} = %{version}-%{release}
-%description -n python-OpenColorIO
+%description -n python3-OpenColorIO
Python binding for OpenColorIO library.
-%description -n python-OpenColorIO -l pl.UTF-8
+%description -n python3-OpenColorIO -l pl.UTF-8
Wiązanie Pythona do biblioteki OpenColorIO.
-%package -n python-OpenColorIO-devel
-Summary: Header file for PyOpenColorIO API
-Summary(pl.UTF-8): Plik nagłówkowy API PyOpenColorIO
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-Requires: python-OpenColorIO = %{version}-%{release}
-
-%description -n python-OpenColorIO-devel
-Header file for PyOpenColorIO API.
-
-%description -n python-OpenColorIO-devel -l pl.UTF-8
-Plik nagłówkowy API PyOpenColorIO.
-
%prep
-%setup -q -n imageworks-OpenColorIO-a16d9ac
-%patch0 -p1
-%patch1 -p1
+%setup -q
%build
+# required for cmake to find JNI headers/libs when lib64 is in use
%{?with_java:export JAVA_HOME=%{_jvmlibdir}/java}
install -d build
cd build
%cmake .. \
- -DOCIO_BUILD_DOCS=ON \
-%if %{with java}
- -DOCIO_BUILD_JNIGLUE=ON \
- -DOCIO_STATIC_JNIGLUE=OFF \
-%endif
+ -DCMAKE_CONFIGURATION_TYPES=PLD \
+ -DCMAKE_CXX_STANDARD=14 \
+ %cmake_on_off doc OCIO_BUILD_DOCS \
+ %cmake_on_off java OCIO_BUILD_JAVA \
+ %{!?with_oiio:-DDISABLE_OIIO=ON} \
%{!?with_sse2:-DOCIO_USE_SSE=OFF} \
- -DPYTHON_INCLUDE_LIB_PREFIX=ON
+ -DUSE_EXTERNAL_LCMS=ON \
+ -DUSE_EXTERNAL_TINYXML=ON \
+ -DUSE_EXTERNAL_YAML=ON
%{__make}
%{__make} -C build install \
DESTDIR=$RPM_BUILD_ROOT
-# we use PYTHON_INCLUDE_LIB_PREFIX=ON so library is useful as C++ API
-# but allow it to be loaded without lib prefix
-ln -sf $(basename $RPM_BUILD_ROOT%{_libdir}/libPyOpenColorIO.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/PyOpenColorIO.so
-
# not needed when installing to /usr
%{__rm} $RPM_BUILD_ROOT%{_datadir}/ocio/setup_ocio.sh
-# packaged as %doc
-%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/OpenColorIO
%clean
rm -rf $RPM_BUILD_ROOT
%post -n java-OpenColorIO -p /sbin/ldconfig
%postun -n java-OpenColorIO -p /sbin/ldconfig
-%post -n python-OpenColorIO -p /sbin/ldconfig
-%postun -n python-OpenColorIO -p /sbin/ldconfig
+%post -n python3-OpenColorIO -p /sbin/ldconfig
+%postun -n python3-OpenColorIO -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
-%doc ChangeLog LICENSE README
+%doc CHANGELOG.md LICENSE README.md
%attr(755,root,root) %{_bindir}/ociobakelut
%attr(755,root,root) %{_bindir}/ociocheck
+%attr(755,root,root) %{_bindir}/ociochecklut
+%attr(755,root,root) %{_bindir}/ociomakeclf
+%attr(755,root,root) %{_bindir}/ociowrite
%attr(755,root,root) %{_libdir}/libOpenColorIO.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libOpenColorIO.so.1
+%attr(755,root,root) %ghost %{_libdir}/libOpenColorIO.so.2.1
%if %{with oiio}
%files convert
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/ocioconvert
+%attr(755,root,root) %{_bindir}/ociolutimage
+%attr(755,root,root) %{_bindir}/ocioperf
%endif
%if %{with oiio} && %{with opengl}
%files devel
%defattr(644,root,root,755)
-%doc build/docs/build-html/*
+%{?with_doc:%doc build/docs/build-html/*}
%attr(755,root,root) %{_libdir}/libOpenColorIO.so
+%{_libdir}/libOpenColorIOoglapphelpers.a
+%{?with_oiio:%{_libdir}/libOpenColorIOoiiohelpers.a}
%{_includedir}/OpenColorIO
%{_pkgconfigdir}/OpenColorIO.pc
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libOpenColorIO.a
+%{_libdir}/cmake/OpenColorIO
%if %{with java}
%files -n java-OpenColorIO
%attr(755,root,root) %ghost %{_libdir}/libOpenColorIO-JNI.so.1
%attr(755,root,root) %{_libdir}/libOpenColorIO-JNI.so
%dir %{_datadir}/ocio
-%{_datadir}/ocio/OpenColorIO-1.0.6.jar
+%{_datadir}/ocio/OpenColorIO-%{version}.jar
%endif
-%files -n python-OpenColorIO
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libPyOpenColorIO.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libPyOpenColorIO.so.1
-%attr(755,root,root) %{_libdir}/PyOpenColorIO.so
-
-%files -n python-OpenColorIO-devel
+%files -n python3-OpenColorIO
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libPyOpenColorIO.so
-%{_includedir}/PyOpenColorIO
+%attr(755,root,root) %{py3_sitedir}/PyOpenColorIO.so