aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Delacourt <christophe.delacourt.perso@gmail.com>2018-10-09 09:37:32 +0200
committerRobert Schumacher <roschuma@microsoft.com>2018-10-09 00:37:32 -0700
commit6ca2efc631d93b2034ace02c04923b0952756757 (patch)
tree2d552e69bd79825cb3132a18139560cc49266595
parent0e50a41922739bdede7200bc9e8103328cb3e7cc (diff)
downloadvcpkg-6ca2efc631d93b2034ace02c04923b0952756757.tar.gz
vcpkg-6ca2efc631d93b2034ace02c04923b0952756757.zip
spirv-cross port (#4426)
* spirv-cross port * disable exceptions to assertion compilation flag * [spirv-cross] Fixup cmake targets
-rw-r--r--ports/spirv-cross/CONTROL3
-rw-r--r--ports/spirv-cross/portfile.cmake30
2 files changed, 33 insertions, 0 deletions
diff --git a/ports/spirv-cross/CONTROL b/ports/spirv-cross/CONTROL
new file mode 100644
index 000000000..cfba267dd
--- /dev/null
+++ b/ports/spirv-cross/CONTROL
@@ -0,0 +1,3 @@
+Source: spirv-cross
+Version: 2018-08-07-1
+Description: SPIRV-Cross is a practical tool and library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.
diff --git a/ports/spirv-cross/portfile.cmake b/ports/spirv-cross/portfile.cmake
new file mode 100644
index 000000000..8ed881d41
--- /dev/null
+++ b/ports/spirv-cross/portfile.cmake
@@ -0,0 +1,30 @@
+include(vcpkg_common_functions)
+
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO KhronosGroup/SPIRV-Cross
+ REF 2018-08-07
+ SHA512 1ac6ee6b2864d950199d4e856ae1576f9435827501baa5d53821a973cd68aaa03ec428094bf74c570784997baac5b2e3802ddc7f02844e2ee546741fa726bf91
+ HEAD_REF master
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS -DSPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=OFF
+)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+
+foreach(COMPONENT core cpp glsl hlsl msl reflect util)
+ vcpkg_fixup_cmake_targets(CONFIG_PATH share/spirv_cross_${COMPONENT}/cmake TARGET_PATH share/spirv_cross_${COMPONENT})
+endforeach()
+
+# cleanup
+configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/spirv-cross/copyright COPYONLY)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)