From b065d5fec011e480ab36ab766c87b8830b3626cd Mon Sep 17 00:00:00 2001 From: Maki Date: Fri, 3 Apr 2020 18:24:16 +0100 Subject: [PATCH] [openvr] Added Linux support and updated to v1.10.30 (#10629) * [openvr] Added Linux support * [openvr] Updated to v1.10.30 * [openvr] Updated port file with modern variables and better platform checking * [openvr] Updated ci.baseline.txt as Linux is supported now --- ports/openvr/CONTROL | 3 +- ports/openvr/portfile.cmake | 60 +++++++++++++++++-------------------- scripts/ci.baseline.txt | 1 - 3 files changed, 29 insertions(+), 35 deletions(-) diff --git a/ports/openvr/CONTROL b/ports/openvr/CONTROL index 545e0f341..ada8687b5 100644 --- a/ports/openvr/CONTROL +++ b/ports/openvr/CONTROL @@ -1,4 +1,5 @@ Source: openvr -Version: 1.9.16 +Version: 1.10.30 Homepage: https://github.com/ValveSoftware/openvr Description: an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting. +Supports: !(arm|uwp|osx|android) \ No newline at end of file diff --git a/ports/openvr/portfile.cmake b/ports/openvr/portfile.cmake index e021d8eb2..0fb02dde1 100644 --- a/ports/openvr/portfile.cmake +++ b/ports/openvr/portfile.cmake @@ -1,47 +1,41 @@ -include(vcpkg_common_functions) +vcpkg_fail_port_install(ON_ARCH "arm" ON_TARGET "uwp" "osx") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ValveSoftware/openvr - REF 39205f6b281a6131d1373d0217c1ab9ed19735ea # v1.9.16 - SHA512 f609a25aaae42e23d8c1b89e9f7d7f5e0e18e52cd3b3125044fdfa348c0f0e8b1e9c9d884a8014bb5dbc07c4d2635a9852d229ba95568b6c33f86b6afb27140f + REF 26fa19eb86ab3c589af2bdbc77449d61a8ff799b # v1.10.30 + SHA512 821e113c6a847a244cd138869b5c8192c67054e6b8d39c0764d4e88f7a839146e9d9ec1f189cd5566f8954ad07ee0c86cbf8d353806c9bceb0f0a45def1a0ca2 HEAD_REF master ) set(VCPKG_LIBRARY_LINKAGE dynamic) -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") - set(ARCH_PATH "win64") -elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") - set(ARCH_PATH "win32") +if(VCPKG_TARGET_IS_WINDOWS) + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(ARCH_PATH "win64") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + set(ARCH_PATH "win32") + else() + message(FATAL_ERROR "Package only supports x64 and x86 Windows.") + endif() +elseif(VCPKG_TARGET_IS_LINUX) + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(ARCH_PATH "linux64") + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + set(ARCH_PATH "linux32") + else() + message(FATAL_ERROR "Package only supports x64 and x86 Linux.") + endif() else() - message(FATAL_ERROR "Package only supports x64 and x86 windows.") + message(FATAL_ERROR "Package only supports Windows and Linux.") endif() -if(VCPKG_CMAKE_SYSTEM_NAME) - message(FATAL_ERROR "Package only supports windows desktop.") -endif() +file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -file(MAKE_DIRECTORY - ${CURRENT_PACKAGES_DIR}/lib - ${CURRENT_PACKAGES_DIR}/bin - ${CURRENT_PACKAGES_DIR}/debug/lib - ${CURRENT_PACKAGES_DIR}/debug/bin -) -file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/openvr_api.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(COPY ${SOURCE_PATH}/lib/${ARCH_PATH}/openvr_api.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -file(COPY - ${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.dll - ${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.pdb - DESTINATION ${CURRENT_PACKAGES_DIR}/bin -) -file(COPY - ${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.dll - ${SOURCE_PATH}/bin/${ARCH_PATH}/openvr_api.pdb - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin -) -file(COPY ${SOURCE_PATH}/headers DESTINATION ${CURRENT_PACKAGES_DIR}) -file(RENAME ${CURRENT_PACKAGES_DIR}/headers ${CURRENT_PACKAGES_DIR}/include) +file(COPY ${SOURCE_PATH}/bin/${ARCH_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/bin) +file(COPY ${SOURCE_PATH}/bin/${ARCH_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openvr) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/openvr/LICENSE ${CURRENT_PACKAGES_DIR}/share/openvr/copyright) +file(INSTALL ${SOURCE_PATH}/headers DESTINATION ${CURRENT_PACKAGES_DIR} RENAME include) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 3fa5958d7..0ddb8dcc6 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -1314,7 +1314,6 @@ openvdb:x64-windows-static=fail openvpn3:x64-osx=fail openvr:arm64-windows=fail openvr:arm-uwp=fail -openvr:x64-linux=fail openvr:x64-osx=fail openvr:x64-uwp=fail openxr-loader:arm64-windows=fail