[packages/OpenEXR] - build python bindings
qboosh
qboosh at pld-linux.org
Sun Nov 30 16:18:59 CET 2025
commit 210c09777c733fb2222f1fb8152174f567c5dbbf
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Nov 30 16:19:09 2025 +0100
- build python bindings
OpenEXR.spec | 41 +++++++++++++++++++++++++++++++++++++++--
1 file changed, 39 insertions(+), 2 deletions(-)
---
diff --git a/OpenEXR.spec b/OpenEXR.spec
index 0629909..080daf6 100644
--- a/OpenEXR.spec
+++ b/OpenEXR.spec
@@ -1,6 +1,7 @@
#
# Conditional build:
%bcond_without apidocs # API documentation in HTML format
+%bcond_without python3 # CPython 3.x bindings
%bcond_with tbb # TBB threading in IlmThreadPool
Summary: High dynamic-range (HDR) image file format support libraries
@@ -15,13 +16,18 @@ Source0: https://github.com/AcademySoftwareFoundation/openexr/archive/v%{version
# Source0-md5: ad8587c4a64bf423c387734e85d17432
URL: https://openexr.com/
BuildRequires: Imath-devel >= 3.1
-BuildRequires: cmake >= 3.14
+BuildRequires: cmake >= 3.17
%{?with_apidocs:BuildRequires: doxygen}
BuildRequires: help2man
BuildRequires: libdeflate-devel
BuildRequires: libstdc++-devel >= 6:7
BuildRequires: openjph-devel >= 0.21.0
BuildRequires: pkgconfig
+%if %{with python3}
+BuildRequires: python3-devel >= 1:3.7
+BuildRequires: python3-numpy-devel >= 1.7.0
+BuildRequires: python3-pybind11
+%endif
%{?with_apidocs:BuildRequires: python3-breathe}
%{?with_apidocs:BuildRequires: python3-sphinx_press_theme}
BuildRequires: rpm-build >= 4.6
@@ -93,6 +99,19 @@ OpenEXR documentation describing file format, library etc.
%description doc -l pl.UTF-8
Dokumentacja do OpenEXR, opisująca format pliku, bibliotekę itd.
+%package -n python3-OpenEXR
+Summary: Python bindings for OpenEXR library
+Summary(pl.UTF-8): Wiązania Pythona do biblioteki OpenEXR
+Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
+Requires: python3-numpy >= 1.7.0
+
+%description -n python3-OpenEXR
+Python bindings for OpenEXR library.
+
+%description -n python3-OpenEXR -l pl.UTF-8
+Wiązania Pythona do biblioteki OpenEXR.
+
%prep
%setup -q -n openexr-%{version}
@@ -100,7 +119,12 @@ Dokumentacja do OpenEXR, opisująca format pliku, bibliotekę itd.
%cmake -B build \
%{?with_apidocs:-DBUILD_WEBSITE=ON} \
-DOPENEXR_INSTALL_DOCS=ON \
- %{?with_tbb:-DOPENEXR_USE_TBB=ON}
+ %{?with_tbb:-DOPENEXR_USE_TBB=ON} \
+%if %{with python3}
+ -DOPENEXR_BUILD_PYTHON=ON \
+ -DSKBUILD=ON \
+ -DSKBUILD_PLATLIB_DIR=%{py3_sitedir}
+%endif
%{__make} -C build
@@ -112,6 +136,11 @@ rm -rf $RPM_BUILD_ROOT
%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/examples
+%if %{with python3}
+%py3_comp $RPM_BUILD_ROOT%{py3_sitedir}
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
@@ -172,3 +201,11 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc build/website/sphinx/{_downloads,_images,_static,bin,test_images,*.html,*.js}
%endif
+
+%if %{with python3}
+%files -n python3-OpenEXR
+%defattr(644,root,root,755)
+%{py3_sitedir}/Imath.py
+%{py3_sitedir}/OpenEXR.cpython-*.so
+%{py3_sitedir}/__pycache__/Imath.cpython-*.py[co]
+%endif
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/OpenEXR.git/commitdiff/210c09777c733fb2222f1fb8152174f567c5dbbf
More information about the pld-cvs-commit
mailing list