From b7678882b73b3ec90329fae58fc724102ffa9cac Mon Sep 17 00:00:00 2001 From: Chuck Walbourn Date: Fri, 30 Apr 2021 11:19:40 -0700 Subject: [PATCH] [dxsdk-d3dx] Add new port (#17175) * [dxsdk-d3dx] port added * Added deprecation warning * Added basline * Convert CONTROL to vcpkg.json * Update baseline * Updated unsupported platform port logic per feedback * Update baseline * Use version constraint * Update baseline --- ports/dxsdk-d3dx/portfile.cmake | 44 +++++++++++++++++++++++++++++++++ ports/dxsdk-d3dx/vcpkg.json | 7 ++++++ versions/baseline.json | 4 +++ versions/d-/dxsdk-d3dx.json | 9 +++++++ 4 files changed, 64 insertions(+) create mode 100644 ports/dxsdk-d3dx/portfile.cmake create mode 100644 ports/dxsdk-d3dx/vcpkg.json create mode 100644 versions/d-/dxsdk-d3dx.json diff --git a/ports/dxsdk-d3dx/portfile.cmake b/ports/dxsdk-d3dx/portfile.cmake new file mode 100644 index 00000000000..7061c52db61 --- /dev/null +++ b/ports/dxsdk-d3dx/portfile.cmake @@ -0,0 +1,44 @@ +vcpkg_fail_port_install(ON_ARCH "arm" "arm64" ON_TARGET "UWP") + +if(NOT VCPKG_TARGET_IS_WINDOWS) + message(FATAL_ERROR "${PORT} only supports Windows.") +endif() + +message(WARNING "Use of ${PORT} is not recommended for new projects. See https://aka.ms/dxsdk for more information.") + +vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) + +set(VCPKG_POLICY_ALLOW_OBSOLETE_MSVCRT enabled) + +vcpkg_download_distfile(ARCHIVE + URLS "https://www.nuget.org/api/v2/package/Microsoft.DXSDK.D3DX/9.29.952.8" + FILENAME "dxsdk-d3dx.9.29.952.8.zip" + SHA512 9f6a95ed858555c1c438a85219ede32c82729068b21dd7ecf11de01cf3cdd525b2f04a58643bfcc14c48a29403dc1c80246f0a12a1ef4377b91b855f6d6d7986 +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH PACKAGE_PATH + ARCHIVE ${ARCHIVE} + NO_REMOVE_ONE_LEVEL +) + +file(GLOB HEADER_FILES ${PACKAGE_PATH}/build/native/include/*.h ${PACKAGE_PATH}/build/native/include/*.inl) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT}) + +file(COPY ${PACKAGE_PATH}/build/native/release/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx9.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/) +file(COPY ${PACKAGE_PATH}/build/native/release/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx10.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/) +file(COPY ${PACKAGE_PATH}/build/native/release/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx11.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/) +file(COPY ${PACKAGE_PATH}/build/native/debug/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx9d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/) +file(COPY ${PACKAGE_PATH}/build/native/debug/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx10d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/) +file(COPY ${PACKAGE_PATH}/build/native/debug/lib/${VCPKG_TARGET_ARCHITECTURE}/d3dx11d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/) + +file(COPY ${PACKAGE_PATH}/build/native/release/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DCompiler_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin/) +file(COPY ${PACKAGE_PATH}/build/native/release/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DX9_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin/) +file(COPY ${PACKAGE_PATH}/build/native/release/bin/${VCPKG_TARGET_ARCHITECTURE}/d3dx10_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin/) +file(COPY ${PACKAGE_PATH}/build/native/release/bin/${VCPKG_TARGET_ARCHITECTURE}/d3dx11_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin/) +file(COPY ${PACKAGE_PATH}/build/native/debug/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DCompiler_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/) +file(COPY ${PACKAGE_PATH}/build/native/debug/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DX9d_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/) +file(COPY ${PACKAGE_PATH}/build/native/debug/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DX10d_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/) +file(COPY ${PACKAGE_PATH}/build/native/debug/bin/${VCPKG_TARGET_ARCHITECTURE}/D3DX11d_43.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/) + +file(INSTALL ${PACKAGE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/dxsdk-d3dx/vcpkg.json b/ports/dxsdk-d3dx/vcpkg.json new file mode 100644 index 00000000000..93a3ccaa366 --- /dev/null +++ b/ports/dxsdk-d3dx/vcpkg.json @@ -0,0 +1,7 @@ +{ + "name": "dxsdk-d3dx", + "version": "9.29.952.8", + "description": "Redistributable package for the legacy DirectX SDK's D3DX9, D3DX10, and/or D3DX11 utility libraries.", + "homepage": "https://walbourn.github.io/legacy-d3dx-on-nuget/", + "supports": "windows & !arm & !uwp & !static" +} diff --git a/versions/baseline.json b/versions/baseline.json index 6987b3bd067..64d044e4661 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -1744,6 +1744,10 @@ "baseline": "1.0.1-1", "port-version": 0 }, + "dxsdk-d3dx": { + "baseline": "9.29.952.8", + "port-version": 0 + }, "dxut": { "baseline": "11.25", "port-version": 0 diff --git a/versions/d-/dxsdk-d3dx.json b/versions/d-/dxsdk-d3dx.json new file mode 100644 index 00000000000..9c5b277d6e5 --- /dev/null +++ b/versions/d-/dxsdk-d3dx.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "38ff04dcf269c835a7f5c03d50a1a457350bde49", + "version": "9.29.952.8", + "port-version": 0 + } + ] +}