diff options
Diffstat (limited to 'vcpkg/ports/uvatlas')
| -rw-r--r-- | vcpkg/ports/uvatlas/portfile.cmake | 64 | ||||
| -rw-r--r-- | vcpkg/ports/uvatlas/usage | 4 | ||||
| -rw-r--r-- | vcpkg/ports/uvatlas/vcpkg.json | 54 |
3 files changed, 122 insertions, 0 deletions
diff --git a/vcpkg/ports/uvatlas/portfile.cmake b/vcpkg/ports/uvatlas/portfile.cmake new file mode 100644 index 0000000..fd635a2 --- /dev/null +++ b/vcpkg/ports/uvatlas/portfile.cmake @@ -0,0 +1,64 @@ +set(UVATLAS_TAG oct2025) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Microsoft/UVAtlas + REF ${UVATLAS_TAG} + SHA512 fab41c955944f1ca39d23e08e7d9addd04f018a26aba393b74d6e6631403d369b1134395e514b02f90ef70a21fbef0c2550e246575206b6b389af7182e052f8f + HEAD_REF main +) + +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + eigen ENABLE_USE_EIGEN + spectre ENABLE_SPECTRE_MITIGATION + tools BUILD_TOOLS +) + +if (VCPKG_HOST_IS_LINUX) + message(WARNING "Build ${PORT} requires GCC version 9 or later") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS ${FEATURE_OPTIONS} +) + +vcpkg_cmake_install() +vcpkg_fixup_pkgconfig() +vcpkg_cmake_config_fixup(CONFIG_PATH share/uvatlas) + +if("tools" IN_LIST FEATURES) + + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/uvatlas/") + + if((VCPKG_TARGET_ARCHITECTURE STREQUAL x64) AND (NOT ("eigen" IN_LIST FEATURES))) + + vcpkg_download_distfile( + UVATLASTOOL_EXE + URLS "https://github.com/Microsoft/UVAtlas/releases/download/${UVATLAS_TAG}/uvatlastool.exe" + FILENAME "uvatlastool-${UVATLAS_TAG}.exe" + SHA512 f751a4b26388a582aa80a4491a58b7b65b78ebd0607f824e15a1deff8239d96c934f6ebe06537d4cfe3e0a5280f16d28c801db0bce1125fb315d861d96d7c47e + ) + + file(INSTALL + "${UVATLASTOOL_EXE}" + DESTINATION "${CURRENT_PACKAGES_DIR}/tools/uvatlas/") + + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool-${UVATLAS_TAG}.exe" "${CURRENT_PACKAGES_DIR}/tools/uvatlas/uvatlastool.exe") + + else() + + vcpkg_copy_tools( + TOOL_NAMES uvatlastool + SEARCH_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/bin" + ) + + endif() +endif() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/vcpkg/ports/uvatlas/usage b/vcpkg/ports/uvatlas/usage new file mode 100644 index 0000000..a5fb208 --- /dev/null +++ b/vcpkg/ports/uvatlas/usage @@ -0,0 +1,4 @@ +The UVAtlas package provides CMake targets:
+
+ find_package(uvatlas CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE Microsoft::UVAtlas)
diff --git a/vcpkg/ports/uvatlas/vcpkg.json b/vcpkg/ports/uvatlas/vcpkg.json new file mode 100644 index 0000000..c434fbe --- /dev/null +++ b/vcpkg/ports/uvatlas/vcpkg.json @@ -0,0 +1,54 @@ +{ + "name": "uvatlas", + "version-date": "2025-10-28", + "description": "UVAtlas isochart texture atlas", + "homepage": "https://github.com/Microsoft/UVAtlas", + "documentation": "https://github.com/Microsoft/UVAtlas/wiki", + "license": "MIT", + "supports": "(windows & !arm32) | linux", + "dependencies": [ + { + "name": "directx-headers", + "platform": "mingw | linux" + }, + "directxmath", + { + "name": "ms-gdkx", + "platform": "xbox" + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "eigen": { + "description": "Use Eigen & Spectra for eigen-value computations", + "dependencies": [ + "eigen3", + "spectra" + ] + }, + "spectre": { + "description": "Build Spectre-mitigated library" + }, + "tools": { + "description": "uvatlas command-line tool", + "supports": "windows & !uwp & !xbox", + "dependencies": [ + { + "name": "directxmesh", + "default-features": false + }, + { + "name": "directxtex", + "default-features": false + } + ] + } + } +} |