diff options
Diffstat (limited to 'vcpkg/ports/spz')
| -rw-r--r-- | vcpkg/ports/spz/portfile.cmake | 43 | ||||
| -rw-r--r-- | vcpkg/ports/spz/tools-improvements.patch | 35 | ||||
| -rw-r--r-- | vcpkg/ports/spz/vcpkg.json | 23 |
3 files changed, 101 insertions, 0 deletions
diff --git a/vcpkg/ports/spz/portfile.cmake b/vcpkg/ports/spz/portfile.cmake new file mode 100644 index 0000000..90227a9 --- /dev/null +++ b/vcpkg/ports/spz/portfile.cmake @@ -0,0 +1,43 @@ +if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO nianticlabs/spz
+ REF v${VERSION}
+ SHA512 0e6bd1dd3f8625cc6730c0cc3a53f65a414a0504c463ca108ac972e4f09e949c49fd98d1033e27947080ead573695747c2a0b9c1a3d8aac7a39351abeb70bfc6
+ HEAD_REF main
+ PATCHES
+ tools-improvements.patch
+)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ tools BUILD_TOOLS
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+)
+
+vcpkg_cmake_install()
+
+if("tools" IN_LIST FEATURES)
+ vcpkg_copy_tools(
+ TOOL_NAMES
+ ply_to_spz
+ spz_to_ply
+ spz_info
+ AUTO_CLEAN
+ )
+endif()
+
+vcpkg_copy_pdbs()
+vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/spz")
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/spz/tools-improvements.patch b/vcpkg/ports/spz/tools-improvements.patch new file mode 100644 index 0000000..ad2fd21 --- /dev/null +++ b/vcpkg/ports/spz/tools-improvements.patch @@ -0,0 +1,35 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 876e29f..998d86c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -78,6 +78,8 @@ install(EXPORT spzTargets + DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/spz" + ) + ++if(BUILD_TOOLS) ++ + # CLI Tools + add_executable(ply_to_spz cli_tools/src/ply_to_spz.cpp) + target_link_libraries(ply_to_spz PRIVATE spz) +@@ -95,6 +97,21 @@ install(TARGETS ply_to_spz spz_to_ply spz_info + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ) + ++set_target_properties(ply_to_spz PROPERTIES ++ CXX_STANDARD 17 ++ CXX_STANDARD_REQUIRED ON ++) ++set_target_properties(spz_to_ply PROPERTIES ++ CXX_STANDARD 17 ++ CXX_STANDARD_REQUIRED ON ++) ++set_target_properties(spz_info PROPERTIES ++ CXX_STANDARD 17 ++ CXX_STANDARD_REQUIRED ON ++) ++ ++endif() ++ + # --- Python Bindings Option --- + option(BUILD_PYTHON_BINDINGS "Build Python bindings using nanobind" OFF) + diff --git a/vcpkg/ports/spz/vcpkg.json b/vcpkg/ports/spz/vcpkg.json new file mode 100644 index 0000000..b46ed45 --- /dev/null +++ b/vcpkg/ports/spz/vcpkg.json @@ -0,0 +1,23 @@ +{ + "name": "spz", + "version": "2.1.0", + "description": "File format for 3D Gaussian splats.", + "homepage": "https://scaniverse.com/spz", + "license": "MIT", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, + "zlib" + ], + "features": { + "tools": { + "description": "Build tools" + } + } +} |