Skip to content

Commit 691cf1b

Browse files
committed
Merge branch 'master' into ax_gtest
Signed-off-by: Nick Avramoussis <[email protected]>
2 parents 692d63e + 8348da2 commit 691cf1b

File tree

194 files changed

+20070
-6011
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

194 files changed

+20070
-6011
lines changed

.github/workflows/ax.yml

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
github.event_name != 'workflow_dispatch' ||
5656
github.event.inputs.type == 'all' ||
5757
github.event.inputs.type == 'linux'
58-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
58+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
5959
name: >
6060
linux-ax:${{ matrix.config.image }}-cxx:${{ matrix.config.cxx }}-${{ matrix.config.build }}
6161
container:
@@ -66,18 +66,21 @@ jobs:
6666
strategy:
6767
matrix:
6868
# Only test unified builds (core+ax). weekly CI should test standalone
69+
# @note LLVM 17 builds are incompatible with the vdb python plugin on linux
6970
config:
71+
- { image: '2025-clang19', cxx: 'clang++', build: 'Release', cmake: '' }
72+
- { image: '2025-clang19', cxx: 'g++', build: 'Release', cmake: '' }
73+
- { image: '2025-clang19', cxx: 'clang++', build: 'Debug', cmake: '' }
74+
- { image: '2025-clang18', cxx: 'clang++', build: 'Release', cmake: '' }
75+
- { image: '2024-clang17', cxx: 'clang++', build: 'Release', cmake: '-DOPENVDB_PYTHON_USE_AX=OFF' }
76+
- { image: '2024-clang16', cxx: 'clang++', build: 'Release', cmake: '' }
7077
- { image: '2023-clang15', cxx: 'clang++', build: 'Release', cmake: '' }
7178
- { image: '2023-clang15', cxx: 'g++', build: 'Release', cmake: '' }
72-
- { image: '2023-clang15', cxx: 'clang++', build: 'Debug', cmake: '' }
7379
fail-fast: false
7480
steps:
7581
- uses: actions/checkout@v3
7682
- name: nanobind
77-
#if: contains(matrix.config.image, '2023') == false
7883
run: ./ci/install_nanobind.sh 2.0.0
79-
- name: install_gtest
80-
run: ./ci/install_gtest.sh 1.15.2
8184
- name: timestamp
8285
id: timestamp
8386
run: echo "timestamp=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> $GITHUB_OUTPUT
@@ -94,12 +97,11 @@ jobs:
9497
run: >
9598
./ci/build.sh -v
9699
--build-type=${{ matrix.config.build }}
97-
--components='core,python,bin,axcore,axbin,axtest'
100+
--components='core,python,axcore,axbin,axtest'
98101
--cargs=\"
99102
${{ matrix.config.cmake }}
100103
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=ON
101104
-DUSE_EXPLICIT_INSTANTIATION=OFF
102-
-DOPENVDB_CXX_STRICT=ON
103105
\"
104106
- name: test
105107
run: cd build && ctest -V
@@ -123,8 +125,12 @@ jobs:
123125
matrix:
124126
config:
125127
# Last macos runner before M1 (macos-14)
128+
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '20' }
129+
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '19' }
130+
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '18' }
131+
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '17' }
132+
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '16' }
126133
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '15' }
127-
- { runner: 'macos-13', cxx: 'clang++', build: 'Release', llvm: '13' }
128134
fail-fast: false
129135
steps:
130136
- uses: actions/checkout@v3
@@ -136,7 +142,7 @@ jobs:
136142
run: >
137143
./ci/build.sh -v
138144
--build-type=${{ matrix.config.build }}
139-
--components="core,python,bin,axcore,axbin,axtest"
145+
--components="core,python,axcore,axbin,axtest"
140146
--cargs=\"
141147
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=ON
142148
-DUSE_EXPLICIT_INSTANTIATION=OFF
@@ -152,7 +158,7 @@ jobs:
152158
if: |
153159
github.event_name == 'workflow_dispatch' &&
154160
github.event.inputs.type == 'grammar'
155-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
161+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
156162
container:
157163
image: aswf/ci-openvdb:2023-clang15
158164
steps:

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ jobs:
6262
github.event_name != 'workflow_dispatch' ||
6363
github.event.inputs.type == 'all' ||
6464
github.event.inputs.type == 'linux'
65-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
65+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
6666
name: >
6767
linux-vfx:${{ matrix.config.image }}-
6868
abi:${{ matrix.config.abi }}-

.github/workflows/houdini.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
if: >
6666
${{ needs.checksecret.outputs.HOUDINI_SECRETS == 'true' ||
6767
github.repository_owner == 'AcademySoftwareFoundation' }}
68-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
68+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
6969
name: hou:${{ matrix.config.hou_hash }}-vfx:${{ matrix.config.image }}-cxx:${{ matrix.config.cxx }}
7070
container:
7171
image: aswf/ci-base:${{ matrix.config.image }}

.github/workflows/nanovdb.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
github.event_name != 'workflow_dispatch' ||
5252
github.event.inputs.type == 'all' ||
5353
github.event.inputs.type == 'linux'
54-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
54+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
5555
name: >
5656
linux-nanovdb:cxx:${{ matrix.config.cxx }}-${{ matrix.config.build }}
5757
container:
@@ -83,6 +83,7 @@ jobs:
8383
--cargs=\'
8484
-DUSE_EXPLICIT_INSTANTIATION=OFF
8585
-DNANOVDB_USE_CUDA=ON
86+
-DCMAKE_CUDA_ARCHITECTURES="80"
8687
-DNANOVDB_USE_OPENVDB=ON
8788
-DCMAKE_INSTALL_PREFIX=`pwd`
8889
-DUSE_BLOSC=OFF
@@ -117,6 +118,7 @@ jobs:
117118
shell: powershell
118119
run: .\ci\install_windows.ps1
119120
- name: build
121+
# nvcc doesn't set _WIN32 when run in bash so we need to set it manually
120122
shell: bash
121123
run: >
122124
./ci/build.sh -v
@@ -127,6 +129,8 @@ jobs:
127129
-DMSVC_COMPRESS_PDB=ON
128130
-DUSE_EXPLICIT_INSTANTIATION=OFF
129131
-DNANOVDB_USE_CUDA=ON
132+
-DCMAKE_CUDA_ARCHITECTURES="80"
133+
-DCMAKE_CUDA_FLAGS="-D_WIN32"
130134
-DNANOVDB_USE_OPENVDB=ON
131135
-DVCPKG_TARGET_TRIPLET=${VCPKG_DEFAULT_TRIPLET}
132136
-DCMAKE_TOOLCHAIN_FILE=\"${VCPKG_INSTALLATION_ROOT}\\scripts\\buildsystems\\vcpkg.cmake\"
@@ -169,7 +173,7 @@ jobs:
169173
github.event_name != 'workflow_dispatch' ||
170174
github.event.inputs.type == 'all' ||
171175
github.event.inputs.type == 'linux'
172-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
176+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
173177
container:
174178
image: aswf/ci-openvdb:2024
175179
steps:

.github/workflows/weekly.yml

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
(github.event_name != 'workflow_dispatch' ||
6262
github.event.inputs.type == 'all' ||
6363
github.event.inputs.type == 'houdini')
64-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
64+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
6565
name: linux-houdini:${{ matrix.config.hou_hash }}
6666
env:
6767
CXX: clang++
@@ -146,7 +146,7 @@ jobs:
146146
github.event_name != 'workflow_dispatch' ||
147147
github.event.inputs.type == 'all' ||
148148
github.event.inputs.type == 'extra'
149-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
149+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
150150
name: linux-extra:${{ matrix.config.name }}
151151
container:
152152
image: aswf/ci-openvdb:2024
@@ -203,7 +203,7 @@ jobs:
203203
- name: install_deps
204204
run: |
205205
if [ "$RUNNER_OS" == "Linux" ]; then
206-
sudo apt-get -q install -y libboost-dev libboost-iostreams-dev libtbb-dev libblosc-dev llvm-dev libgtest-dev libcppunit-dev
206+
sudo apt-get -q install -y libboost-dev libboost-iostreams-dev libtbb-dev libblosc-dev llvm-15-dev libgtest-dev libgmock-dev libcppunit-dev
207207
./ci/install_nanobind.sh 2.0.0
208208
elif [ "$RUNNER_OS" == "macOS" ]; then
209209
./ci/install_macos.sh 15
@@ -284,7 +284,7 @@ jobs:
284284
github.event_name != 'workflow_dispatch' ||
285285
github.event.inputs.type == 'all' ||
286286
github.event.inputs.type == 'ax'
287-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
287+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
288288
name: >
289289
linux-ax:${{ matrix.config.image }}-cxx:${{ matrix.config.cxx }}-${{ matrix.config.build }}
290290
container:
@@ -295,8 +295,8 @@ jobs:
295295
matrix:
296296
config:
297297
# Unified
298-
- { image: '2023-clang15', cxx: 'clang++', build: 'Release', components: 'core,bin,axcore,axbin,axtest', cmake: '' }
299-
- { image: '2023-clang15', cxx: 'g++', build: 'Release', components: 'core,bin,axcore,axbin,axtest', cmake: '' }
298+
- { image: '2025-clang19', cxx: 'clang++', build: 'Release', components: 'core,axcore,axbin,axtest', cmake: '' }
299+
- { image: '2025-clang19', cxx: 'g++', build: 'Release', components: 'core,axcore,axbin,axtest', cmake: '' }
300300
fail-fast: false
301301
steps:
302302
- uses: actions/checkout@v3
@@ -313,6 +313,7 @@ jobs:
313313
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=ON
314314
-DUSE_EXPLICIT_INSTANTIATION=OFF
315315
-DOPENVDB_CXX_STRICT=ON
316+
-DOPENVDB_BUILD_VDB_TOOL=OFF
316317
\"
317318
- name: clean
318319
if: matrix.config.components == 'core'
@@ -328,6 +329,7 @@ jobs:
328329
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=ON
329330
-DUSE_EXPLICIT_INSTANTIATION=OFF
330331
-DOPENVDB_CXX_STRICT=ON
332+
-DOPENVDB_BUILD_VDB_TOOL=OFF
331333
\"
332334
- name: test
333335
run: cd build && ctest -V
@@ -376,7 +378,7 @@ jobs:
376378
github.event.inputs.type == 'all' ||
377379
github.event.inputs.type == 'ax'
378380
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'windows-2022-8c-32g-300h') || 'windows-latest' }}
379-
name: windows-vc:${{ matrix.config.vc }}-type:${{ matrix.config.build }}
381+
name: ${{ matrix.config.vc }}-${{ matrix.config.crt }}-${{ matrix.config.build }}-llvm${{ matrix.config.llvm }}
380382
env:
381383
VCPKG_DEFAULT_TRIPLET: ${{ matrix.config.vc }}
382384
# Export this with '' avoid bash treating \ as escape
@@ -390,28 +392,36 @@ jobs:
390392
# @todo We don't currently run the axtests with shared builds of ax
391393
# due to symbol issues using LLVM as a static lib (which is the only
392394
# option on Windows).
393-
- { vc: 'x64-windows', crt: 'MD', components: 'core,bin,axcore,axbin,python', build: 'Release', cmake: '-DOPENVDB_CORE_STATIC=OFF -DOPENVDB_AX_STATIC=OFF' }
394-
- { vc: 'x64-windows-static', crt: 'MT', components: 'core,bin,axcore,axbin,axtest', build: 'Release', cmake: '-DOPENVDB_CORE_SHARED=OFF -DOPENVDB_AX_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
395-
- { vc: 'x64-windows-static', crt: 'MTd', components: 'core,bin,axcore,axbin,axtest', build: 'Debug', cmake: '-DOPENVDB_CORE_SHARED=OFF -DOPENVDB_AX_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
395+
# @note currently only test static builds with MT as building LLVM as
396+
# a shared lib on windows is a bit dicey
397+
- { vc: 'x64-windows-static', llvm: '18.1.0', crt: 'MultiThreaded', components: 'core,axcore,axbin,axtest', build: 'Release', cmake: '-DOPENVDB_CORE_SHARED=OFF -DOPENVDB_AX_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
398+
- { vc: 'x64-windows-static', llvm: '18.1.0', crt: 'MultiThreadedDebug', components: 'core,axcore,axbin,axtest', build: 'Debug', cmake: '-DOPENVDB_CORE_SHARED=OFF -DOPENVDB_AX_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
399+
- { vc: 'x64-windows', llvm: '18.1.0', crt: 'MultiThreadedDLL', components: 'core,axcore,axbin', build: 'Release', cmake: '-DOPENVDB_CORE_STATIC=OFF -DOPENVDB_AX_STATIC=OFF' }
400+
- { vc: 'x64-windows-static', llvm: '15.0.0', crt: 'MultiThreaded', components: 'core,axcore,axbin,axtest', build: 'Release', cmake: '-DOPENVDB_CORE_SHARED=OFF -DOPENVDB_AX_SHARED=OFF -DUSE_STATIC_DEPENDENCIES=ON -DBLOSC_USE_EXTERNAL_SOURCES=ON' }
396401
fail-fast: false
397402
steps:
398403
- uses: actions/checkout@v3
399404
- name: llvm
400-
run: ./ci/install_llvm_windows.sh ${{ matrix.config.crt }}
405+
run: ./ci/install_llvm_windows.sh ${{ matrix.config.llvm }} ${{ matrix.config.crt }}
401406
- name: install
402407
shell: powershell
403-
run: .\ci\install_windows.ps1
408+
run: |
409+
vcpkg update
410+
vcpkg install tbb cppunit
404411
- name: build
405412
run: >
406413
./ci/build.sh -v
407414
--config=${{ matrix.config.build }}
408415
--components="${{ matrix.config.components }}"
409416
--cargs=\'
410417
-A x64 -G \"Visual Studio 17 2022\"
418+
-DOPENVDB_USE_DELAYED_LOADING=OFF
419+
-DUSE_BLOSC=OFF \
420+
-DUSE_ZLIB=OFF \
411421
-DVCPKG_TARGET_TRIPLET=${VCPKG_DEFAULT_TRIPLET}
412422
-DCMAKE_TOOLCHAIN_FILE=\"${VCPKG_INSTALLATION_ROOT}\\scripts\\buildsystems\\vcpkg.cmake\"
413423
-DMSVC_COMPRESS_PDB=ON
414-
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=ON
424+
-DOPENVDB_AX_TEST_CMD_DOWNLOADS=OFF
415425
-DUSE_EXPLICIT_INSTANTIATION=OFF
416426
-DLLVM_DIR=\"${HOME}\\llvm_install\\lib\\cmake\\llvm\"
417427
-DCMAKE_INSTALL_PREFIX=\"${VDB_INSTALL_PREFIX}\"
@@ -476,6 +486,7 @@ jobs:
476486
-DMSVC_COMPRESS_PDB=ON
477487
-DUSE_EXPLICIT_INSTANTIATION=OFF
478488
-DNANOVDB_USE_CUDA=ON
489+
-DCMAKE_CUDA_ARCHITECTURES="80"
479490
-DNANOVDB_USE_OPENVDB=ON
480491
-DVCPKG_TARGET_TRIPLET=${VCPKG_DEFAULT_TRIPLET}
481492
-DCMAKE_TOOLCHAIN_FILE=\"${VCPKG_INSTALLATION_ROOT}\\scripts\\buildsystems\\vcpkg.cmake\"
@@ -493,7 +504,7 @@ jobs:
493504
github.event_name != 'workflow_dispatch' ||
494505
github.event.inputs.type == 'all' ||
495506
github.event.inputs.type == 'blosc'
496-
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-20.04-8c-32g-300h') || 'ubuntu-latest' }}
507+
runs-on: ${{ (github.repository_owner == 'AcademySoftwareFoundation' && 'ubuntu-22.04-8c-32g-300h') || 'ubuntu-latest' }}
497508
name: linux-blosc:${{ matrix.blosc }}
498509
container:
499510
image: aswf/ci-base:2023

CHANGES

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,35 @@
11
OpenVDB Version History
22
=======================
33

4-
Version 12.0.1 - In development
4+
Version 12.0.2 - In development
5+
6+
7+
Version 12.0.1 - April 3, 2025
8+
9+
OpenVDB:
10+
New features:
11+
- Added read and write support for OFF (Object File Format) files to vdb_tool
12+
13+
Build:
14+
- Fixed a build issue with vdb_render on Windows with newer versions of glew not including glu.h by default
15+
- Fixed issues with newer versions of clang refusing to accept older ::template syntax
16+
17+
NanoVDB:
18+
New features:
19+
- Added support for multiple GPUs to DeviceBuffer
20+
- Added a UnifiedBuffer class that wraps CUDA unified memory
21+
- Added example for multiGPU sparse convolution
22+
- Added CUDA utility functions for device queries
23+
- Added functions to independently stop and compute the elapsed time for timer classes
24+
25+
Improvements:
26+
- Replaced CUB's CachingDeviceAllocator with the default asynchronous stream ordered allocator in PointsToGrid for improved performance
27+
28+
Bug fix:
29+
- Map is now properly transposed when converting NanoVDB to OpenVDB.
30+
- Fixed ostream specializations being hidden within the nanovdb namespace
31+
- Fixed a call to a non-existent method in GridBuild.h
32+
533

634
Version 12.0.0 - October 31, 2024
735

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ endif()
5454

5555
set(OpenVDB_MAJOR_VERSION 12)
5656
set(OpenVDB_MINOR_VERSION 0)
57-
set(OpenVDB_PATCH_VERSION 1)
57+
set(OpenVDB_PATCH_VERSION 2)
5858
set(OpenVDB_VERSION "${OpenVDB_MAJOR_VERSION}.${OpenVDB_MINOR_VERSION}.${OpenVDB_PATCH_VERSION}")
5959

6060
project(OpenVDB LANGUAGES CXX VERSION ${OpenVDB_VERSION})

ci/build.sh

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ declare -A COMPONENTS
5151
COMPONENTS['core']='OPENVDB_BUILD_CORE'
5252
COMPONENTS['python']='OPENVDB_BUILD_PYTHON_MODULE'
5353
COMPONENTS['test']='OPENVDB_BUILD_UNITTESTS'
54-
COMPONENTS['bin']='OPENVDB_BUILD_BINARIES'
54+
# @todo split out vdb tool from this...
55+
COMPONENTS['bin']='OPENVDB_BUILD_VDB_PRINT,OPENVDB_BUILD_VDB_LOD,OPENVDB_BUILD_VDB_TOOL,OPENVDB_BUILD_VDB_TOOL_UNITTESTS'
5556
COMPONENTS['view']='OPENVDB_BUILD_VDB_VIEW'
5657
COMPONENTS['render']='OPENVDB_BUILD_VDB_RENDER'
5758
COMPONENTS['hou']='OPENVDB_BUILD_HOUDINI_PLUGIN'
@@ -150,7 +151,11 @@ for comp in "${!COMPONENTS[@]}"; do
150151
setting="ON"; break
151152
fi
152153
done
153-
CMAKE_EXTRA+=("-D${COMPONENTS[$comp]}=$setting")
154+
OPENVDB_TOGGLES="${COMPONENTS[$comp]}"
155+
OPENVDB_TOGGLES=(${OPENVDB_TOGGLES//,/ })
156+
for toggle in "${!OPENVDB_TOGGLES[@]}"; do
157+
CMAKE_EXTRA+=("-D${OPENVDB_TOGGLES[$toggle]}=$setting")
158+
done
154159
done
155160

156161
################################################
@@ -182,17 +187,14 @@ cd ${BUILD_DIR}
182187
set -x
183188

184189
# Note:
185-
# - print and lod binary options are always on and can be toggles with: OPENVDB_BUILD_BINARIES=ON/OFF
190+
# - OPENVDB_BUILD_BINARIES is always ON, but each binary will be toggled depending on the provided comps
186191
# - always enabled the python tests with OPENVDB_BUILD_PYTHON_UNITTESTS if the python module is in use,
187192
# regardless of the 'test' component being enabled or not (see the OPENVDB_BUILD_PYTHON_UNITTESTS option).
188193
cmake \
189194
-DOPENVDB_USE_DEPRECATED_ABI_10=ON \
190195
-DOPENVDB_USE_DEPRECATED_ABI_11=ON \
191-
-DOPENVDB_BUILD_VDB_PRINT=ON \
192-
-DOPENVDB_BUILD_VDB_LOD=ON \
193-
-DOPENVDB_BUILD_VDB_TOOL=ON \
194-
-DOPENVDB_BUILD_VDB_TOOL_UNITTESTS=ON \
195196
-DOPENVDB_TOOL_USE_NANO=OFF \
197+
-DOPENVDB_BUILD_BINARIES=ON \
196198
-DOPENVDB_BUILD_PYTHON_UNITTESTS=ON \
197199
-DMSVC_MP_THREAD_COUNT=${PARMS[-j]} \
198200
"${CMAKE_EXTRA[@]}" \

0 commit comments

Comments
 (0)