Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

libopenvdb12_0-12.0.1-1.1 RPM for x86_64

From OpenSuSE Tumbleweed for x86_64

Name: libopenvdb12_0 Distribution: openSUSE Tumbleweed
Version: 12.0.1 Vendor: openSUSE
Release: 1.1 Build date: Sat Jun 28 03:39:07 2025
Group: System/Libraries Build host: reproducible
Size: 31053768 Source RPM: openvdb-12.0.1-1.1.src.rpm
Packager: https://bugs.opensuse.org
Url: https://www.openvdb.org
Summary: Sparse volume data structure library
OpenVDB is a C++ library comprising a hierarchical data structure and
a large suite of tools for the efficient storage and manipulation of
sparse volumetric data discretized on three-dimensional grids.

Provides

Requires

License

Apache-2.0

Changelog

* Sat Jun 28 2025 Marcus Rueckert <mrueckert@suse.de>
  - Update to 12.0.1
    - OpenVDB:
    - New features:
    - Added read and write support for OFF (Object File Format)
      files to vdb_tool
    - Build:
    - Fixed a build issue with vdb_render on Windows with newer
      versions of glew not including glu.h by default
    - Fixed issues with newer versions of clang refusing to
      accept older ::template syntax
    - NanoVDB:
    - New features:
    - Added support for multiple GPUs to DeviceBuffer
    - Added a UnifiedBuffer class that wraps CUDA unified memory
    - Added example for multiGPU sparse convolution
    - Added CUDA utility functions for device queries
    - Added functions to independently stop and compute the
      elapsed time for timer classes
    - Improvements:
    - Replaced CUB's CachingDeviceAllocator with the default
      asynchronous stream ordered allocator in PointsToGrid for
      improved performance
    - Bug fix:
    - Map is now properly transposed when converting NanoVDB to
      OpenVDB.
    - Fixed ostream specializations being hidden within the
      nanovdb namespace
    - Fixed a call to a non-existent method in GridBuild.h
* Sat Mar 01 2025 Marcus Rueckert <mrueckert@suse.de>
  - needs boost 1.80 at least
* Sat Mar 01 2025 Marcus Rueckert <mrueckert@suse.de>
  - Update to 12.0.0
    OpenVDB is now licensed under the Apache 2.0 license, instead of
    the MPL 2.0 license.
    - OpenVDB:
    - New features:
    - Added tools::LevelSetFilter::fillet() method to round off
      concave edges to create smoother transition between
      surfaces.
    - Improvements:
    - Added openvdb::assertAbort to replace cassert and a
      OPENVDB_ENABLE_ASSERTS cmake argument/compile define to
      toggle assertions in OpenVDB code, independantly of NDEBUG.
      Asserts are no longer enabled by default in when NDEBUG is
      absent (e.g. Debug builds).
    - Removed last traces of Boost when
      OPENVDB_USE_DELAYED_LOADING is OFF [Reported by Brian
      McKinnon]
    - RootNode code cleanup to eliminate redundant key conversion
      and to create map values in-place.
    - Add RootNode::deleteChildOrTile() to delete a child or tile
      of the root node.
    - ValueAccessors are now defined and created in the Tree
      class instead of in the Grid class so that custom Tree
      implementations may define and create their own
      ValueAccessors if desired.
    - Added support for PDAL to vdb_tool [Contributed by Tom
      Matterson]
    - LeafManager and NodeManager now use Index64 for leaf counts
      internally.
    - Added RootNode::probeChild() const.
    - Added RootNode::probeChild() and
      RootNode::probeConstChild().
    - Added RootNode::probe() and RootNode::probeConst() to query
      key presence, child node, value and active state.
    - Added InternalNode::probeChild() const.
    - Added InternalNode::probeChild() and probeChildConst() with
      coord access and optionally value and active state.
    - Added InternalNode::probeChild() and probeChildConst() with
      index access and optionally value and active state.
    - Added InternalNode::isValueOff(), LeafNode::isValueOff(),
      LeafNodeBool::isValueOff(), LeafNodeMask::isValueOff().
    - Added LeafNodeMask::probeValue(Index,val),
      LeafNodeBool::probeValue(Index,val).
    - Added RootNode::getValueUnsafe(),
      RootNode::getChildUnsafe(),
      RootNode::getConstChildUnsafe().
    - Added InternalNode::getValueUnsafe(),
      InternalNode::getChildUnsafe(),
      InternalNode::getConstChildUnsafe().
    - Added InternalNode::setActiveStateUnsafe(),
      InternalNode::setValueOnlyUnsafe(),
      InternalNode::setValueOnUnsafe(),
      InternalNode::setValueOffUnsafe().
    - Added InternalNode::setChildUnsafe(),
      InternalNode::resetChildUnsafe(),
      InternalNode::stealChildUnsafe(),
      InternalNode::deleteChildUnsafe().
    - For LeafNode, LeafNodeBool and LeafNodeMask - added
      LeafNode::getValueUnsafe(),
      LeafNode::setActiveStateunsafe(),
      LeafNode::setValueOnlyUnsafe(),
      LeafNode::setValueOnUnsafe(),
      LeafNode::setValueOffUnsafe().
    - ABI changes:
    - Tree::leafCount(), Tree::unallocatedLeafCount(),
      Tree::nonLeafCount() and Tree::nodeCount() now use Index64
      in their return types instead of Index32.
    - API Changes:
    - RootNode::tileCount(), RootNode::activeTileCount() and
      RootNode::inactiveTileCount() are now public.
    - RootNode::hasKey() and RootNode::coordToKey() are now
      public.
    - RootNode::leafCount(), RootNode::nonLeafCount() and
      RootNode::nodeCount() now use Index64 instead of Index32.
      The Index32 variant is deprecated.
    - InternalNode::leafCount(), InternalNode::nonLeafCount() and
      InternalNode::nodeCount() now use Index64 instead of
      Index32. The Index32 variant is deprecated.
    - LeafNode::leafCount() and LeafNode::nonLeafCount() now use
      Index64 instead of Index32. The Index32 variant is
      deprecated.
    - Bug Fixes:
    - Fix potential crash reading corrupt .vdb files with invalid
      blosc or zip chunks. [Reported by Matthias Ueberheide]
    - Fix a bug in RootNode::setOrigin() where the origin was
      updated before the error was thrown potentially leaving the
      root in an invalid state.
    - Fixed a thread sanitizer issue which could cause undefined
      behaviour in VolumeToSpheres::fillWithSpheres [Reported by
      Jérémie Dumas]
    - Fixed an occurance of undefined behaviour in
      tools::activate (though this would typically not have
      manifested with any unintended behaviour)
    - NanoVDB:
    - Bug fix:
    - nanovdb::readGrids works with raw grid buffer.
    - Improvements:
    - Restructure files location and namespace to be more align
      with OpenVDB. The namespaces touched by the restructuring
      are: io, cuda, util, tools, and math.
    - Add two scripts updateFiles.sh and updateFiles.py to update
      the files using NanoVDB. The script updateFiles.py works on
      both Windows and Linux. For a more complete list of
      changes, see API Changes (details).
    - cuda::PointsToGrid supports target density.
    - Add support for NanoVDB Grid of type UInt8.
    - Add ability to use externally managed CUDA buffer.
    - Add create methods for CudaDeviceBuffer and exceptions.
    - Improve GridValidator logic, e.g. include check for grid
      count.
    - Add operator > and >= for class Coord according to
      lexicographical order.
    - Add toCodec to convert string to Codec enumeration type.
    - Add nanovdb::strlen<GridType>().
    - Add strncpy util.
    - Add NANOVDB_DISABLE_SYNC_CUDA_MALLOC that maps
      cudaMallocAsync and cudaFreeAsync to cudaMalloc and
      cudaFree respectively.
    - Add guard to UINT64_C.
    - Remove use of cudaMallocAsync in PointsToGrid.cuh.
    - Align PNanoVDB blind metadata to NanoVDB.
    - API Changes:
    - Change mapToGridType to toGridType.
    - Change mapToMagic to toMagic.
    - Change CpuTimer.h to Timer.h.
    - API Changes (details):
    - These APIs are now under the math namespace: Ray, DDA,
      HDDA, Vec3, Vec4, BBox, ZeroCrossing, TreeMarcher,
      PointTreeMarcher, BoxStencil, CurvatureStencil,
      GradStencil, WenoStencil, AlignUp, Min, Max, Abs, Clamp,
      Sqrt, Sign, Maximum, Delta, RoundDown, pi, isApproxZero,
      Round, createSampler, SampleFromVoxels.
    - These APIs are now under the tools namespace:
      createNanoGrid, StatsMode, createLevelSetSphere,
      createFogVolumeSphere, createFogVolumeSphere,
      createFogVolumeSphere, createFogVolumeTorus,
      createLevelSetBox, CreateNanoGrid, updateGridStats,
      evalChecksum, validateChecksum, checkGrid, Extrema.
    - These APIs are now under the util namespace:
      is_floating_point, findLowestOn, findHighestOn, Range,
      streq, strcpy, strcat, empty, Split, invoke, forEach,
      reduce, prefixSum, is_same, is_specialization, PtrAdd,
      PtrDiff.
    - Move nanovdb::build to nanovdb::tools::build.
    - Rename nanovdb::BBoxR to nanovdb::Vec3dBBox.
    - Rename nanovdb::BBox<nanovdb::Vec3d> to nanovdb::Vec3dBbox.
    - Move nanovdb::cudaCreateNodeManager to
      nanovdb::cuda::createNodeManager.
    - Move and rename nanovdb::cudaVoxelsToGrid to
      nanovdb::cuda::voxelsToGrid.
    - Move and rename nanovdb::cudaPointsToGrid to
      nanovdb::cuda::pointsToGrid.
    - Move nanovdb::DitherLUT to nanovdb::math::DitherLUT.
    - Move and rename nanovdb::PackedRGBA8 to
      nanovdb::math::Rgba8.
    - Move nanovdb::Rgba8 to nanovdb::math::Rgba8.
    - Move and rename nanovdb::CpuTimer to nanovdb::util::Timer.
    - Move nanovdb::GpuTimer to nanovdb::util::cuda::Timer.
    - Move and rename nanovdb::CountOn to nanovdb::util::countOn.
    - Move util/GridHandle.h to GridHandle.h.
    - Move util/BuildGrid.h to tools/GridBuilder.h.
    - Move util/GridBuilder.h to tools/GridBuilder.h.
    - Move util/IO.h to io/IO.h.
    - Move util/CSampleFromVoxels.h to math/CSampleFromVoxels.h.
    - Move util/DitherLUT.h to math/DitherLUT.h.
    - Move util/HDDA.h to math/HDDA.h.
    - Move util/Ray.h to math/Ray.h.
    - Move util/SampleFromVoxels.h to math/SampleFromVoxels.h.
    - Move util/Stencils.h to nanovdb/math/Stencils.h.
    - Move util/CreateNanoGrid.h to tools/CreateNanoGrid.h.
    - Move and rename util/Primitives.h to
      tools/CreatePrimitives.h.
    - Move util/GridChecksum.h to tools/GridChecksum.h.
    - Move util/GridStats.h to tools/GridStats.h.
    - Move util/GridChecksum.h to tools/GridChecksum.h.
    - Move util/GridValidator.h to tools/GridValidator.h.
    - Move util/NanoToOpenVDB.h to tools/NanoToOpenVDB.h.
    - Move util/cuda/CudaGridChecksum.cuh to
      tools/cuda/CudaGridChecksum.cuh.
    - Move util/cuda/CudaGridStats.cuh to
      tools/cuda/CudaGridStats.cuh.
    - Move util/cuda/CudaGridValidator.cuh to
      tools/cuda/CudaGridValidator.cuh.
    - Move util/cuda/CudaIndexToGrid.cuh to
      tools/cuda/CudaIndexToGrid.cuh.
    - Move and rename util/cuda/CudaPointsToGrid.cuh to
      tools/cuda/PointsToGrid.cuh.
    - Move util/cuda/CudaSignedFloodFill.cuh to
      tools/cuda/CudaSignedFloodFill.cuh.
    - Move and rename util/cuda/CudaDeviceBuffer.h to
      cuda/DeviceBuffer.h.
    - Move and rename util/cuda/CudaGridHandle.cuh to
      cuda/GridHandle.cuh.
    - Move and rename util/cuda/CudaUtils.h to util/cuda/Util.h.
    - Move and consolidate util/cuda/GpuTimer.h to
      util/cuda/Timer.h.
    - Python:
    - OpenVDB Python bindings are now implemented using nanobind
      instead of pybind11
    - The OpenVDB Python module has been changed from pyopenvdb to
      openvdb
    - Added Python bindings for NanoVDB
    - Houdini:
    - When OPENVDB_ENABLE_RPATH is ON, the location of
      libopenvdb_houdini is now added to the rpath of all Houdini
      dsos.
    - Build:
    - Fixed an issue with OpenVDB AX's CMake on Windows where the
      static and shared library targets would have the same name
      [Reported by Nicholas Yue]
    - USE_EXPLICIT_INSTANTIATION is now disabled on Windows by
      default due to OOM linker issues.
    - Jemalloc is now the preferred allocator of choice on all
      platforms when CONCURRENT_MALLOC is set to Auto.
    - Fixed an issue with the Blosc CMake FindPackage for the
      OpenVDB Windows static library.
* Fri Feb 21 2025 Marcus Rueckert <mrueckert@suse.de>
  - we need a newer alembic than what leap has
  - sync gcc with the other packages for blender
* Sat Feb 15 2025 Marcus Rueckert <mrueckert@suse.de>
  - drop unused PDAL dependency and option
* Thu Nov 14 2024 Marcus Rueckert <mrueckert@suse.de>
  - Update to 11.0.0 again as blender 4.2.x now supports this
    version. See Changes entry below for the details of the version
    update.
* Thu Nov 14 2024 Marcus Rueckert <mrueckert@suse.de>
  - walk through the cmake options to see if we could enable more
    features:
    - openvdb_ax: even with LLVM15 it was still complaining about
      mismatching types. Skipping this for now
    - vdb_tool:  works except for nanovdb support
    - Added fix-tool-building.patch so that libpng16-devel files
      are actually used properly
    - python support requires a nanobind package
    - testing log4cpp support
  - track quilt series file for easier patching without rpm-build
* Sat Nov 09 2024 Marcus Rueckert <mrueckert@suse.de>
  - The openvdb headers do refer to the boost headers.
    Update Requires accordingly.
* Wed Jan 31 2024 Hans-Peter Jansen <hpj@urpla.net>
  - Revert to 10.1.0: the NanoVDB API changed significantly in 11.0.0,
    and prevent Blender 4.0(.2) from building successfully
  - Apply openvdb-boost-static-assert-include.patch in order to compile
  - Keep Ben's changes, since they do not harm anyway
* Mon Jan 22 2024 Ben Greiner <code@bnavigator.de>
  - Disable 32-bit builds "ld error: access beyond end of merged
    section"
  - Minimum gcc-c++ version is 9.3.1, force gcc10 on 15.x
  - Minimum TBB is 2020.3
* Mon Jan 22 2024 Michael Vetter <mvetter@suse.com>
  - Update to 11.0.0:
    * OpenVDB:
      Improvements:
    * Removed use of boost::any in favor of std::any.
      Bug Fixes:
    * Fix potential crash reading corrupt .vdb files with invalid blosc or zip chunks.
    * NanoVDB:
      Highlights:
    * Several new tools to generate and modify NanoVDB grids on the GPU.
    * New file format that supports streaming of raw grid buffers.
      New Features:
    * New memory efficient GridClass::IndexGrid that separates values from tree
    * 4 new GridTypes (Index, OnIndex, IndexMask, OnIndexMask) used by IndexGrid
    * Added createNanoGrid that replaces older conversion methods in GridBuilder.h, IndexGridBuilder.h and OpenToNanoVDB.h
    * Added cudaPointsToGrid that constructs a point device grid from a list of points.
    * Added cudaVoxelsToGrid that constructs a voxel device grid from a list of voxels.
    * Added cuda/CudaUtils.h with several cuda utility functions.
    * Added GpuTimer for timing of kernels in a specific cuda stream.
    * Added cudaIndexToGrid that converts IndexGrids into regular Grids.
    * Added cudaSignedFloodFill that performs signed-flood filling on the GPU.
    * Added cudaAddBlindData that adds blind data to an existing grid on the GPU.
    * Added cudaGridChecksum that computes checksums of device grids.
    * Added cudaGridHandle that handles grids on the GPU.
    * Added cudaNodeManager that constructs a NodeManager on the GPU.
    * Added build type Points and GridType::PointIndex for point grids.
    * Added GridType::Vec3u16 and GridType::Vec3u8 for compressed coordinates.
    * Added PrefixSum.h for concurrent computation of prefix sum on the CPU.
      API Changes:
    * Version 32.6.0 (ABI is unchanged).
    * Transition from C++11 to C++17
    * Vec3R is deprecated, please use Vec3d instead.
    * nanoToOpenVDB now takes the index of a NanoVDB in a GridHandle.
    * GridData, InternalData and LeafData are now public.
    * GridMetaData can be copied.
    * Improvements to GridBuilder.h that allows construction of grids on CPU.
    * GridHandle's move c-tor now requires the GridBuffer to contain a valid grid.
    * Moved CudaDeviceBuffer.h to cuda/CudaDeviceBuffer.h.
    * New API for acceleration of custom random-access with ValueAccessors.
    * Added BitFlags class for convenient bit-mask operations.
    * Added Vec2/3 min/maxComponentAtomic GPU methods.
    * Added BBox::expandAtomic and BBox::intersectAtomic.
    * Added Coord::expandAtomic.
    * Added Map constructors.
    * Added Mask::DenseIterator, Mask::setOnAtomic, and Mask::setOffAtomic.
    * InternalNode::ChildIterator is now const-correct.
    * Added several new NanoVDB Build Traits.
    * Syncing PNanoVDB.h with NanoVDB.h.
      Build:
    * Support for OpenEXR 2.X has been removed.
    * Better support for building with external package configurations with CMAKE_FIND_PACKAGE_PREFER_CONFIG=ON.
      Python:
    * Removed Python 2 support.
    * Removed explicit bindings for Math types.
    * Improved type casting for TypedMetadata.
* Thu Oct 20 2022 Stefan Brüns <stefan.bruens@rwth-aachen.de>
  - Disable static library build, instead of deleting it
  - Remove many unused build dependencies
* Fri Sep 09 2022 Hans-Peter Jansen <hpj@urpla.net>
  - Enable nanovdb as build conditional

Files

/usr/lib64/libopenvdb.so.12.0
/usr/lib64/libopenvdb.so.12.0.1
/usr/share/doc/packages/libopenvdb12_0
/usr/share/doc/packages/libopenvdb12_0/README.md
/usr/share/licenses/libopenvdb12_0
/usr/share/licenses/libopenvdb12_0/LICENSE


Generated by rpm2html 1.8.1

Fabrice Bellet, Sat Jul 19 23:34:28 2025