Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion ports/openvdb/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ vcpkg_check_features(
"tools" OPENVDB_BUILD_TOOLS
"ax" OPENVDB_BUILD_AX
"nanovdb" OPENVDB_BUILD_NANOVDB
"nanovdb-tools" NANOVDB_BUILD_TOOLS
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this produce new executable files? I'd expect that the vcpkg_copy_tools line below would need to include these new tools.

Copy link
Contributor

@dg0yt dg0yt Mar 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this feature depends on feature nanovdb? No dependency is declared ATM.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, building with NANOVDB_BUILD_TOOLS builds executable files. @vicroms, I conditionally added them to vcpkg_copy_tools below as you mentioned.

@dg0yt, I updated the vcpkg.json to include the feature dependency, so now the nanovdb-tools feature depends on the nanovdb feature via openvdb[nanovdb].

I also added a check below to fail configuration if someone attempts to build with nanovdb-tools but without nanovdb. I believe the vcpkg.json dependency should preclude that now.

)

if (OPENVDB_BUILD_NANOVDB)
set(NANOVDB_OPTIONS
-DNANOVDB_BUILD_TOOLS=OFF
-DNANOVDB_USE_INTRINSICS=ON
-DNANOVDB_USE_CUDA=ON
-DNANOVDB_CUDA_KEEP_PTX=ON
Expand Down Expand Up @@ -68,6 +68,10 @@ if (OPENVDB_BUILD_TOOLS)
vcpkg_copy_tools(TOOL_NAMES vdb_print vdb_render vdb_view vdb_lod AUTO_CLEAN)
endif()

if (NANOVDB_BUILD_TOOLS)
vcpkg_copy_tools(TOOL_NAMES nanovdb_convert nanovdb_print nanovdb_validate AUTO_CLEAN)
endif()

configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/openvdb/openvdb/COPYRIGHT")
12 changes: 12 additions & 0 deletions ports/openvdb/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"name": "openvdb",
"version": "12.0.0",
"port-version": 1,
"description": "Sparse volume data structure and tools",
"homepage": "https://github.com/dreamworksanimation/openvdb",
"license": "MPL-2.0",
Expand Down Expand Up @@ -44,6 +45,17 @@
"cuda"
]
},
"nanovdb-tools": {
"description": "NanoVDB tools: print, validate, and convert.",
"dependencies": [
{
"name": "openvdb",
"features": [
"nanovdb"
]
}
]
},
"tools": {
"description": "OpenVDB utilities: view, print and render",
"dependencies": [
Expand Down
2 changes: 1 addition & 1 deletion versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -6878,7 +6878,7 @@
},
"openvdb": {
"baseline": "12.0.0",
"port-version": 0
"port-version": 1
},
"openvino": {
"baseline": "2025.0.0",
Expand Down
5 changes: 5 additions & 0 deletions versions/o-/openvdb.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "0a440c407a2282daceb06a6d4cd539a8ba067872",
"version": "12.0.0",
"port-version": 1
},
{
"git-tree": "bb88224f64822d690b692169cbcdb87ffdb9d597",
"version": "12.0.0",
Expand Down