vcpkg_fail_port_install(ON_TARGET "LINUX" "OSX" "UWP" "ANDROID" ON_ARCH "arm") message(WARNING "Build ${PORT} is deprecated, untested in CI, and requires the use of the DirectSetup legacy REDIST solution. See https://aka.ms/dxsdk for more information.") vcpkg_download_distfile(ARCHIVE URLS "https://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe" FILENAME "DXSDK_Jun10_SHA256.exe" SHA512 24e1e9bda319b780124b865f4640822cfc44e4d18fbdcc8456d48fe54081652ce4ddb63d3bd8596351057cbae50fc824b8297e99f0f7c97547153162562ba73f ) vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} ) # See https://walbourn.github.io/the-zombie-directx-sdk/ set(INC_DIR "${SOURCE_PATH}/Include") set(LIB_DIR "${SOURCE_PATH}/Lib/${VCPKG_TARGET_ARCHITECTURE}") set(HEADERS ${INC_DIR}/audiodefs.h ${INC_DIR}/comdecl.h ${INC_DIR}/D3DX10.h ${INC_DIR}/d3dx10async.h ${INC_DIR}/D3DX10core.h ${INC_DIR}/D3DX10math.h ${INC_DIR}/D3DX10math.inl ${INC_DIR}/D3DX10mesh.h ${INC_DIR}/D3DX10tex.h ${INC_DIR}/D3DX11.h ${INC_DIR}/D3DX11async.h ${INC_DIR}/D3DX11core.h ${INC_DIR}/D3DX11tex.h ${INC_DIR}/d3dx9.h ${INC_DIR}/d3dx9anim.h ${INC_DIR}/d3dx9core.h ${INC_DIR}/d3dx9effect.h ${INC_DIR}/d3dx9math.h ${INC_DIR}/d3dx9math.inl ${INC_DIR}/d3dx9mesh.h ${INC_DIR}/d3dx9shader.h ${INC_DIR}/d3dx9shape.h ${INC_DIR}/d3dx9tex.h ${INC_DIR}/d3dx9xof.h ${INC_DIR}/D3DX_DXGIFormatConvert.inl ${INC_DIR}/dsetup.h ${INC_DIR}/dxdiag.h ${INC_DIR}/DxErr.h ${INC_DIR}/dxfile.h ${INC_DIR}/dxsdkver.h ${INC_DIR}/PIXPlugin.h ${INC_DIR}/rmxfguid.h ${INC_DIR}/rmxftmpl.h ${INC_DIR}/xact3.h ${INC_DIR}/xact3d3.h ${INC_DIR}/xact3wb.h ${INC_DIR}/XDSP.h ${INC_DIR}/xma2defs.h) set(DEBUG_LIBS ${LIB_DIR}/d3dx10d.lib ${LIB_DIR}/d3dx11d.lib ${LIB_DIR}/d3dx9d.lib ) set(RELEASE_LIBS ${LIB_DIR}/d3dx10.lib ${LIB_DIR}/d3dx11.lib ${LIB_DIR}/d3dx9.lib ) set(OTHER_LIBS ${LIB_DIR}/d3dxof.lib ${LIB_DIR}/DxErr.lib ) if(${VCPKG_TARGET_ARCHITECTURE} STREQUAL "x86") list(APPEND OTHER_LIBS ${LIB_DIR}/dsetup.lib) endif() set(XINPUT13_HEADER ${INC_DIR}/XInput.h) set(XINPUT13_LIB ${LIB_DIR}/XInput.lib) set(XAUDIO27_HEADERS ${INC_DIR}/X3DAudio.h ${INC_DIR}/XAPO.h ${INC_DIR}/XAPOBase.h ${INC_DIR}/XAPOFX.h ${INC_DIR}/XAudio2.h ${INC_DIR}/XAudio2fx.h) set(XAUDIO27_DEBUG_LIBS ${LIB_DIR}/xapobased.lib) set(XAUDIO27_RELEASE_LIBS ${LIB_DIR}/xapobase.lib) set(XAUDIO27_OTHER_LIBS ${LIB_DIR}/X3DAudio.lib ${LIB_DIR}/XAPOFX.lib ) set(XP_HEADERS ${INC_DIR}/D3D10.h ${INC_DIR}/D3D10effect.h ${INC_DIR}/d3d10misc.h ${INC_DIR}/d3d10sdklayers.h ${INC_DIR}/D3D10shader.h ${INC_DIR}/D3D10_1.h ${INC_DIR}/D3D10_1shader.h ${INC_DIR}/D3D11.h ${INC_DIR}/D3D11SDKLayers.h ${INC_DIR}/D3D11Shader.h ${INC_DIR}/D3Dcommon.h ${INC_DIR}/D3Dcompiler.h ${INC_DIR}/D3DCSX.h ${INC_DIR}/D3DX_DXGIFormatConvert.inl ${INC_DIR}/xnamath.h ${INC_DIR}/xnamathconvert.inl ${INC_DIR}/xnamathmatrix.inl ${INC_DIR}/xnamathmisc.inl ${INC_DIR}/xnamathvector.inl) set(XP_DEBUG_LIBS ${LIB_DIR}/D3DCSXd.lib) set(XP_RELEASE_LIBS ${LIB_DIR}/D3DCSX.lib) set(XP_OTHER_LIBS ${LIB_DIR}/d3dcompiler.lib ${LIB_DIR}/dxguid.lib ) #install(DIRECTORY "${SOURCE_PATH}/Include" DESTINATION ${CURRENT_PACKAGES_DIR}/include) file(COPY ${HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT}) file(COPY ${RELEASE_LIBS} ${OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(COPY ${DEBUG_LIBS} ${OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) if(("xinput1-3" IN_LIST FEATURES) OR ("xp" IN_LIST FEATURES)) file(COPY ${XINPUT13_HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT}) file(COPY ${XINPUT13_LIB} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(COPY ${XINPUT13_LIB} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) endif() if(("xaudio2-7" IN_LIST FEATURES) OR ("xp" IN_LIST FEATURES)) file(COPY ${XAUDIO27_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT}) file(COPY ${XAUDIO27_RELEASE_LIBS} ${XAUDIO27_OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(COPY ${XAUDIO27_DEBUG_LIBS} ${XAUDIO27_OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) endif() if("xp" IN_LIST FEATURES) file(COPY ${XP_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/${PORT}) file(COPY ${XP_RELEASE_LIBS} ${XP_OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(COPY ${XP_DEBUG_LIBS} ${XP_OTHER_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) endif() # # Handle copyright file(INSTALL "${SOURCE_PATH}/Documentation/License Agreements/DirectX SDK EULA.txt" DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)