aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/ms-gltf
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/ms-gltf')
-rw-r--r--vcpkg/ports/ms-gltf/fix-install.patch44
-rw-r--r--vcpkg/ports/ms-gltf/portfile.cmake39
-rw-r--r--vcpkg/ports/ms-gltf/vcpkg.json30
3 files changed, 113 insertions, 0 deletions
diff --git a/vcpkg/ports/ms-gltf/fix-install.patch b/vcpkg/ports/ms-gltf/fix-install.patch
new file mode 100644
index 0000000..59b5eeb
--- /dev/null
+++ b/vcpkg/ports/ms-gltf/fix-install.patch
@@ -0,0 +1,44 @@
+diff --git a/Build/CMake/Modules/GLTFPlatform.cmake b/Build/CMake/Modules/GLTFPlatform.cmake
+index 3d940f5..322f029 100644
+--- a/Build/CMake/Modules/GLTFPlatform.cmake
++++ b/Build/CMake/Modules/GLTFPlatform.cmake
+@@ -55,14 +55,14 @@ endfunction(GetGLTFPlatform)
+ function(CreateGLTFInstallTargets target platform)
+
+ install(TARGETS ${target}
+- ARCHIVE DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${platform}/$<CONFIG>/${PROJECT_NAME}
+- LIBRARY DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${platform}/$<CONFIG>/${PROJECT_NAME}
+- RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${platform}/$<CONFIG>/${PROJECT_NAME}
+- BUNDLE DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${platform}/$<CONFIG>/${PROJECT_NAME}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib
++ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib
++ RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
++ BUNDLE DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
+ )
+
+ if (MSVC)
+- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${PROJECT_NAME}.pdb DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${platform}/$<CONFIG>/${PROJECT_NAME})
++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${PROJECT_NAME}.pdb DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
+ endif()
+
+ endfunction(CreateGLTFInstallTargets)
+diff --git a/GLTFSDK.Test/CMakeLists.txt b/GLTFSDK.Test/CMakeLists.txt
+index 5c8eca7..a0752a3 100644
+--- a/GLTFSDK.Test/CMakeLists.txt
++++ b/GLTFSDK.Test/CMakeLists.txt
+@@ -46,4 +46,4 @@ add_custom_command(TARGET GLTFSDK.Test
+ AddGLTFIOSAppProperties(GLTFSDK.Test)
+ CreateGLTFInstallTargets(GLTFSDK.Test ${Platform})
+
+-install(FILES ${PROJECT_BINARY_DIR}/$<CONFIG>/Resources/ DESTINATION ${CMAKE_SOURCE_DIR}/Built/Out/${Platform}/$<CONFIG>/${PROJECT_NAME}/Resources)
++install(FILES ${PROJECT_BINARY_DIR}/$<CONFIG>/Resources/ DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
+diff --git a/GLTFSDK/CMakeLists.txt b/GLTFSDK/CMakeLists.txt
+index 3c53c74..1e8d223 100644
+--- a/GLTFSDK/CMakeLists.txt
++++ b/GLTFSDK/CMakeLists.txt
+@@ -46,4 +46,5 @@ target_include_directories(GLTFSDK
+ PRIVATE "${CMAKE_BINARY_DIR}/GeneratedFiles"
+ )
+
++install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/Inc/GLTFSDK DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
+ CreateGLTFInstallTargets(GLTFSDK ${Platform})
diff --git a/vcpkg/ports/ms-gltf/portfile.cmake b/vcpkg/ports/ms-gltf/portfile.cmake
new file mode 100644
index 0000000..169eb21
--- /dev/null
+++ b/vcpkg/ports/ms-gltf/portfile.cmake
@@ -0,0 +1,39 @@
+if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO microsoft/glTF-SDK
+ REF 4888f0a386e174af6170c3c53b3396945f4a65a0 # 05-09-2024
+ SHA512 5bee9c056d3d6eb809d8336cedc0fad58bc5b33128d4094cccfca5d0180b78e237d63c2c7c7beb08dd09f49a613a35bc0c08642b150ae8482ef9643165d7822b
+ HEAD_REF master
+ PATCHES
+ fix-install.patch
+)
+
+# note: Test/Sample executables won't be installed
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ test ENABLE_UNIT_TESTS
+ samples ENABLE_SAMPLES
+)
+
+# note: Platform-native buildsystem will be more helpful to launch/debug the tests/samples.
+# note: The PDB file path is making Ninja fails to install.
+# For Windows, we rely on /MP. The other platforms should be able to build with PREFER_NINJA.
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ WINDOWS_USE_MSBUILD
+ OPTIONS
+ ${FEATURE_OPTIONS}
+)
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
+endif()
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/ms-gltf/vcpkg.json b/vcpkg/ports/ms-gltf/vcpkg.json
new file mode 100644
index 0000000..8a0eb8b
--- /dev/null
+++ b/vcpkg/ports/ms-gltf/vcpkg.json
@@ -0,0 +1,30 @@
+{
+ "name": "ms-gltf",
+ "version-date": "2024-09-05",
+ "description": "glTF-SDK is a C++ Software Development Kit for glTF",
+ "homepage": "https://github.com/microsoft/glTF-SDK",
+ "license": "MIT",
+ "supports": "!linux",
+ "dependencies": [
+ "rapidjson",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ }
+ ],
+ "default-features": [
+ "test"
+ ],
+ "features": {
+ "samples": {
+ "description": "Build with GLTF samples",
+ "supports": "!osx & !ios & !android"
+ },
+ "test": {
+ "description": "Build test programs",
+ "dependencies": [
+ "gtest"
+ ]
+ }
+ }
+}