aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/vsg
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/vsg
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/vsg')
-rw-r--r--vcpkg/ports/vsg/cmakedefine01.diff13
-rw-r--r--vcpkg/ports/vsg/portfile.cmake35
-rw-r--r--vcpkg/ports/vsg/vcpkg.json46
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)"
+ }
+ ]
+ }
+ }
+}