diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/vsg | |
Diffstat (limited to 'vcpkg/ports/vsg')
| -rw-r--r-- | vcpkg/ports/vsg/cmakedefine01.diff | 13 | ||||
| -rw-r--r-- | vcpkg/ports/vsg/portfile.cmake | 35 | ||||
| -rw-r--r-- | vcpkg/ports/vsg/vcpkg.json | 46 |
3 files changed, 94 insertions, 0 deletions
diff --git a/vcpkg/ports/vsg/cmakedefine01.diff b/vcpkg/ports/vsg/cmakedefine01.diff new file mode 100644 index 0000000..1bf2bb9 --- /dev/null +++ b/vcpkg/ports/vsg/cmakedefine01.diff @@ -0,0 +1,13 @@ +diff --git a/src/vsg/core/Version.h.in b/src/vsg/core/Version.h.in +index 1926da82..2c492bdb 100644 +--- a/src/vsg/core/Version.h.in ++++ b/src/vsg/core/Version.h.in +@@ -43,7 +43,7 @@ extern "C" + #cmakedefine01 VSG_SUPPORTS_ShaderOptimizer + + /// Native Windowing support provided with vsg::Window::create(windowTraits) enabled when 1, disabled when 0 +- #define VSG_SUPPORTS_Windowing @VSG_SUPPORTS_Windowing@ ++ #cmakedefine01 VSG_SUPPORTS_Windowing + + struct VsgVersion + { diff --git a/vcpkg/ports/vsg/portfile.cmake b/vcpkg/ports/vsg/portfile.cmake new file mode 100644 index 0000000..3b71e0a --- /dev/null +++ b/vcpkg/ports/vsg/portfile.cmake @@ -0,0 +1,35 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO vsg-dev/VulkanSceneGraph + REF "v${VERSION}" + SHA512 997ba97c4860c2b9e79589358b1471df5ec14e64329bc8c5e23b1db2e855e63433cc5141f5fe34f785f88c9b3bcfc27f6aa8e9f5fc5d11cfdd1dab43f0e448cc + HEAD_REF master + PATCHES + cmakedefine01.diff +) + +vcpkg_check_features(OUT_FEATURE_OPTIONS options + FEATURES + shader-optimizer VSG_SUPPORTS_ShaderOptimizer + windowing VSG_SUPPORTS_Windowing +) + +if("windowing" IN_LIST FEATURES AND NOT (VCPKG_TARGET_IS_ANDROID OR VCPKG_TARGET_IS_IOS OR VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_WINDOWS)) + vcpkg_find_acquire_program(PKGCONFIG) + set(ENV{PKG_CONFIG} "${PKGCONFIG}") +endif() + +# added -DGLSLANG_MIN_VERSION=15 to sync with vcpkg version of glslang +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + ${options} + -DGLSLANG_MIN_VERSION= +) +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/vsg") +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md") diff --git a/vcpkg/ports/vsg/vcpkg.json b/vcpkg/ports/vsg/vcpkg.json new file mode 100644 index 0000000..f9e2edf --- /dev/null +++ b/vcpkg/ports/vsg/vcpkg.json @@ -0,0 +1,46 @@ +{ + "name": "vsg", + "version": "1.1.11", + "port-version": 1, + "description": "A modern, cross platform, high performance scene graph library built upon Vulkan.", + "homepage": "http://www.vulkanscenegraph.org/", + "license": "MIT", + "dependencies": [ + "glslang", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, + "vulkan", + { + "name": "xcb", + "platform": "!(android | windows | osx)" + } + ], + "features": { + "shader-optimizer": { + "description": "shader optimizer support", + "dependencies": [ + { + "name": "glslang", + "features": [ + "opt" + ] + } + ] + }, + "windowing": { + "description": "native windowing support providing a default implementation of vsg::Window::create()", + "dependencies": [ + { + "name": "xcb", + "platform": "!(android | ios | osx | windows)" + } + ] + } + } +} |