# Limit parallel builds %global _smp_ncpus_max 4 %bcond_with docs # OpenEXR support is optional: # The new embedded version of half floating point types can be used instead of # the Half implementation from IMath %bcond_without openexr %define major 10.0 %define libname %mklibname %{name} %{major} %define develname %mklibname %{name} -d Name: openvdb Version: 10.0.1 Release: %mkrel 1 Summary: C++ library for sparse volumetric data discretized on three-dimensional grids License: MPLv2.0 Group: System/Libraries URL: https://www.openvdb.org/ Source0: https://github.com/dreamworksanimation/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz Patch1: 0001-Fix-build-with-Python-3.8.patch BuildRequires: cmake %if %{with docs} BuildRequires: doxygen BuildRequires: dot %endif BuildRequires: gcc-c++ BuildRequires: ghostscript BuildRequires: python3dist(numpy) BuildRequires: boost-devel >= 1.57.0 BuildRequires: pkgconfig(blosc) BuildRequires: pkgconfig(cppunit) BuildRequires: pkgconfig(glfw3) BuildRequires: pkgconfig(jemalloc) %if %{with openexr} BuildRequires: pkgconfig(OpenEXR) %endif BuildRequires: pkgconfig(python3) BuildRequires: pkgconfig(tbb) BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(zlib) %if %{without docs} Obsoletes: %{name}-doc < %{version}-%{release} %endif %description OpenVDB is an Academy Award-winning open-source C++ library comprising a novel hierarchical data structure and a suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids. It is developed and maintained by DreamWorks Animation for use in volumetric applications typically encountered in feature film production. This package contains some graphical tools. %package -n %{libname} Summary: Core OpenVDB libraries Group: System/Libraries %description -n %{libname} OpenVDB is an Academy Award-winning open-source C++ library comprising a novel hierarchical data structure and a suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids. It is developed and maintained by DreamWorks Animation for use in volumetric applications typically encountered in feature film production. %package -n %{develname} Summary: Development files for %{name} Group: Development/C++ Requires: %{libname} >= %{version}-%{release} Provides: %{name}-devel = %{version}-%{release} %description -n %{develname} The %{develname} package contains libraries and header files for developing applications that use %{name}. %package -n python3-%{name} Summary: OpenVDB Python 3 module Group: Development/Python Requires: %{libname} >= %{version}-%{release} %{?python_provide:%python_provide python3-%{name}} Obsoletes: python2-%{name} < 5.0.0-3 %description -n python3-%{name} OpenVDB is an Academy Award-winning open-source C++ library comprising a novel hierarchical data structure and a suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids. It is developed and maintained by DreamWorks Animation for use in volumetric applications typically encountered in feature film production. This package contains the Python 3 module. %package doc Summary: Documentation for %{name} Group: Documentation BuildArch: noarch %description doc The %{name}-doc package contains documentation for developing applications that use %{name}. %prep %autosetup -p1 # Hardcoded paths for installation, as described in the INSTALL file sed -i \ -e 's|lib$|%{_lib}|g' \ %{name}/%{name}/CMakeLists.txt %{name}/%{name}/python/CMakeLists.txt %build %cmake \ -DOPENVDB_BUILD_DOCS=%{?with_docs:ON}%{?!with_docs:OFF} \ -DCMAKE_NO_SYSTEM_FROM_IMPORTED=TRUE \ -DDISABLE_DEPENDENCY_VERSION_CHECKS=ON \ -DOPENVDB_ENABLE_RPATH=OFF \ -DOPENVDB_BUILD_PYTHON_MODULE=ON \ -DOPENVDB_INSTALL_CMAKE_MODULES=ON \ -DPYOPENVDB_INSTALL_DIRECTORY=%{python3_sitearch} \ -DOPENVDB_BUILD_UNITTESTS=OFF \ -DUSE_IMATH_HALF=%{?with_openexr:ON}%{!?with_openexr:OFF} %cmake_build %install %cmake_install %if %{with docs} # Let RPM pick up HTML documents in the files section rm -fr %{buildroot}%{_prefix}/docs %endif find %{buildroot} -name '*.a' -delete %files %license LICENSE %doc README.md CHANGES %{_bindir}/vdb_print %files -n %{libname} %{_libdir}/lib%{name}.so.%{major}{,.*} %files -n %{develname} %{_includedir}/openvdb/ %{_libdir}/lib%{name}.so %{_libdir}/cmake/OpenVDB/ %files -n python3-%{name} %{python3_sitearch}/py%{name}.so %if %{with docs} %files doc %doc build/openvdb/doc/html %endif %changelog * Mon Dec 26 2022 wally <wally> 10.0.1-1.mga9 + Revision: 1926920 - new version 10.0.1 - new lib major 10.0 - rebuild for boost 1.81.0 * Sun Jul 03 2022 wally <wally> 8.2.0-4.mga9 + Revision: 1867295 - rebuild for boost 1.79.0 * Wed Mar 30 2022 umeabot <umeabot> 8.2.0-3.mga9 + Revision: 1834947 - Mageia 9 Mass Rebuild * Mon Feb 28 2022 mrambo3501 <mrambo3501> 8.2.0-2.mga9 + Revision: 1786728 - rebuild for python-3.10 * Sun Dec 26 2021 wally <wally> 8.2.0-1.mga9 + Revision: 1764068 - new version 8.2.0 - enable optional OpenEXR/Half/IMath support for now - install CMake modules - rebuild for openexr 3.1.3 * Sun Dec 19 2021 wally <wally> 8.0.1-5.mga9 + Revision: 1762661 - rebuild for boost 1.78.0 * Thu Sep 09 2021 wally <wally> 8.0.1-4.mga9 + Revision: 1744611 - rebuild for boost 1.77.0 * Fri May 14 2021 wally <wally> 8.0.1-3.mga9 + Revision: 1723002 - rebuild for boost 1.76.0 * Sat Mar 20 2021 daviddavid <daviddavid> 8.0.1-2.mga9 + Revision: 1705249 - rebuild for python 3.9 * Sun Mar 07 2021 wally <wally> 8.0.1-1.mga9 + Revision: 1700364 - fix build with python 3.8 + daviddavid <daviddavid> - new version: 8.0.1 - now libmajor is 8.0 * Thu Dec 31 2020 wally <wally> 7.1.0-4.mga8 + Revision: 1666798 - rebuild for boost 1.75.0 * Sun Dec 20 2020 wally <wally> 7.1.0-3.mga8 + Revision: 1662040 - rebuild for boost 1.74.0 * Wed Sep 09 2020 akien <akien> 7.1.0-2.mga8 + Revision: 1623817 - Rebuild for new OpenEXR/Ilm * Tue Aug 18 2020 daviddavid <daviddavid> 7.1.0-1.mga8 + Revision: 1614723 - new version: 7.1.0 - now libmajor is 7.1 * Sun May 03 2020 wally <wally> 7.0.0-4.mga8 + Revision: 1578094 - rebuild for boost 1.73.0 * Wed Feb 19 2020 umeabot <umeabot> 7.0.0-3.mga8 + Revision: 1544882 - Mageia 8 Mass Rebuild * Sun Jan 26 2020 wally <wally> 7.0.0-2.mga8 + Revision: 1483412 - rebuild for boost 1.72.0 - build with new cmake macros * Fri Dec 13 2019 daviddavid <daviddavid> 7.0.0-1.mga8 + Revision: 1466194 - new version: 7.0.0 - now libmajor is 7.0 - set python3 module installation path via cmake * Thu Oct 03 2019 daviddavid <daviddavid> 6.2.1-1.mga8 + Revision: 1449050 - new version: 6.2.1 * Sat Sep 21 2019 daviddavid <daviddavid> 6.2.0-1.mga8 + Revision: 1444146 - new version: 6.2.0 - drop no longer needed upstream patch - fix correct python module installation path - drop no more available BR epydoc - rebuild for python3.8 * Fri Aug 23 2019 daviddavid <daviddavid> 6.1.0-1.mga8 + Revision: 1431432 - new version: 6.1.0 - now libmajor is 6.1 - drop deprecated OPENVDB ABI version 3 support * Fri Apr 26 2019 akien <akien> 6.0.0-2.mga7 + Revision: 1395383 - Rebuild for glfw 3.3 * Tue Apr 02 2019 daviddavid <daviddavid> 6.0.0-1.mga7 + Revision: 1385412 - new version: 6.0.0 - now libmajor is 6.0 * Tue Jan 08 2019 daviddavid <daviddavid> 5.2.0-6.mga7 + Revision: 1352470 - rebuild for new Python 3.7 * Wed Oct 17 2018 wally <wally> 5.2.0-5.mga7 + Revision: 1321722 - add patch to fix linking - rebuild for new boost 1.68.0 * Mon Oct 15 2018 daviddavid <daviddavid> 5.2.0-4.mga7 + Revision: 1320542 - rebuild for new ilmbase and openexr 2.3.0 * Sun Sep 23 2018 wally <wally> 5.2.0-2.mga7 + Revision: 1297260 - fix and enable doc build * Sun Sep 23 2018 wally <wally> 5.2.0-1.mga7 + Revision: 1297236 - disable doc subpkg - new libmajor 5.2 + daviddavid <daviddavid> - new version: 5.2.0 * Sun Aug 26 2018 wally <wally> 5.1.0-4.mga7 + Revision: 1254687 - limit parallel builds to 4 on aarch64 * Sun Aug 26 2018 wally <wally> 5.1.0-3.mga7 + Revision: 1254671 - another rebuild for aarch64 * Tue Aug 07 2018 wally <wally> 5.1.0-2.mga7 + Revision: 1248694 - rebuild for aarch64 * Thu Jul 19 2018 daviddavid <daviddavid> 5.1.0-1.mga7 + Revision: 1244341 - new version: 5.1.0 - switch to Python 3 * Sun May 27 2018 wally <wally> 5.0.0-2.mga7 + Revision: 1232428 - rebuild for openexr 2.2.1 * Sat Mar 24 2018 daviddavid <daviddavid> 5.0.0-1.mga7 + Revision: 1211862 - initial package openvdb