mirror of
https://github.com/microsoft/vcpkg.git
synced 2026-01-18 01:11:23 +01:00
[gameinput] Update for GameInput v3 (#48275)
This commit is contained in:
15
ports/gameinput/CMakeLists.txt.in
Normal file
15
ports/gameinput/CMakeLists.txt.in
Normal file
@@ -0,0 +1,15 @@
|
||||
cmake_minimum_required (VERSION 3.21)
|
||||
project(GameInput LANGUAGES CXX)
|
||||
|
||||
add_library(${PROJECT_NAME} STATIC GameInput.cpp)
|
||||
|
||||
if(WIN32)
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE _UNICODE UNICODE _WIN32_WINNT=0x0A00)
|
||||
endif()
|
||||
|
||||
include(GNUInstallDirs)
|
||||
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
@@ -1,7 +1,7 @@
|
||||
get_filename_component(_gameinput_root "${CMAKE_CURRENT_LIST_DIR}" PATH)
|
||||
get_filename_component(_gameinput_root "${_gameinput_root}" PATH)
|
||||
|
||||
set(_gameinput_root_lib "${_gameinput_root}/lib/gameinput.lib")
|
||||
set(_gameinput_root_lib "${_gameinput_root}/lib/@LIB_NAME@")
|
||||
|
||||
add_library(Microsoft::GameInput INTERFACE IMPORTED)
|
||||
set_target_properties(Microsoft::GameInput PROPERTIES
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
if(VCPKG_TARGET_IS_XBOX)
|
||||
|
||||
cmake_path(SET GameDKXboxLatest "$ENV{GameDKXboxLatest}")
|
||||
cmake_path(SET GRDKLatest "$ENV{GRDKLatest}")
|
||||
cmake_path(SET GXDKLatest "$ENV{GXDKLatest}")
|
||||
|
||||
find_file(GAMEINPUT_H
|
||||
NAMES GameInput.h
|
||||
PATHS "${GRDKLatest}/gameKit/Include"
|
||||
PATHS "${GameDKXboxLatest}/xbox/include"
|
||||
"${GRDKLatest}/gameKit/Include"
|
||||
"${GXDKLatest}/gameKit/Include"
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
find_library(GAMEINPUT_LIB
|
||||
NAMES GameInput.lib
|
||||
PATHS "${GRDKLatest}/gameKit/Lib/amd64"
|
||||
PATHS "${GameDKXboxLatest}/xbox/lib/x64"
|
||||
"${GRDKLatest}/gameKit/Lib/amd64"
|
||||
"${GXDKLatest}/gameKit/Lib/amd64"
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
@@ -22,14 +25,14 @@ if(VCPKG_TARGET_IS_XBOX)
|
||||
endif()
|
||||
|
||||
# Output user-friendly status message for installed edition.
|
||||
if(${GXDKLatest} MATCHES ".*/([0-9][0-9])([0-9][0-9])([0-9][0-9])/.*")
|
||||
set(_months "null" "January" "February" "March" "April" "May" "June" "July" "August" "September" "October" "November" "December")
|
||||
list(GET _months ${CMAKE_MATCH_2} month)
|
||||
set(update "")
|
||||
if(${CMAKE_MATCH_3} GREATER 0)
|
||||
set(update " Update ${CMAKE_MATCH_3}")
|
||||
endif()
|
||||
message(STATUS "Found the Microsoft GDK with Xbox Extensions (${month} 20${CMAKE_MATCH_1}${update})")
|
||||
if(${GAMEINPUT_H} MATCHES ".*/([0-9][0-9])([0-9][0-9])([0-9][0-9])/.*")
|
||||
set(_months "null" "January" "February" "March" "April" "May" "June" "July" "August" "September" "October" "November" "December")
|
||||
list(GET _months ${CMAKE_MATCH_2} month)
|
||||
set(update "")
|
||||
if(${CMAKE_MATCH_3} GREATER 0)
|
||||
set(update " Update ${CMAKE_MATCH_3}")
|
||||
endif()
|
||||
message(STATUS "Found the Microsoft GDK with Xbox Extensions (${month} 20${CMAKE_MATCH_1}${update})")
|
||||
endif()
|
||||
|
||||
file(INSTALL ${GAMEINPUT_H} DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
||||
@@ -43,7 +46,7 @@ else()
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://www.nuget.org/api/v2/package/Microsoft.GameInput/${VERSION}"
|
||||
FILENAME "gameinput.${VERSION}.zip"
|
||||
SHA512 144cff0bfe9ba9e66d3641bdaed5cf8445bcfe52e83c7c160c111b983545f5346304821200acefe3aed0913ab14f3a9a17f7da1f67b6f75e36bad259f1b312c5
|
||||
SHA512 7377a8cf9291318b99db4f94b6e2db6d8bd2a5afdac0b35bd38b3f51c75948a247e74dab155f2ba67d4ece78899e87c3e0e35510f1547bbc9b7c8202573a8ff6
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive(
|
||||
@@ -53,17 +56,34 @@ else()
|
||||
)
|
||||
|
||||
file(INSTALL "${PACKAGE_PATH}/native/include/gameinput.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
||||
file(INSTALL "${PACKAGE_PATH}/native/lib/${VCPKG_TARGET_ARCHITECTURE}/gameinput.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/lib")
|
||||
file(INSTALL "${PACKAGE_PATH}/native/lib/${VCPKG_TARGET_ARCHITECTURE}/gameinput.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib")
|
||||
|
||||
file(INSTALL "${PACKAGE_PATH}/redist/GameInputRedist.msi" DESTINATION "${CURRENT_PACKAGES_DIR}/tools")
|
||||
|
||||
vcpkg_install_copyright(FILE_LIST "${PACKAGE_PATH}/LICENSE.txt")
|
||||
|
||||
if(VCPKG_TARGET_IS_MINGW)
|
||||
# "Thick" GameInput.lib is not compatible with MinGW
|
||||
|
||||
file(COPY "${PACKAGE_PATH}/native/lib/x64/GameInput.cpp" DESTINATION "${CURRENT_BUILDTREES_DIR}/fixlib")
|
||||
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt.in"
|
||||
"${CURRENT_BUILDTREES_DIR}/fixlib/CMakeLists.txt"
|
||||
COPYONLY)
|
||||
|
||||
vcpkg_cmake_configure(SOURCE_PATH "${CURRENT_BUILDTREES_DIR}/fixlib")
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
set(LIB_NAME "libGameInput.a")
|
||||
else()
|
||||
file(INSTALL "${PACKAGE_PATH}/native/lib/${VCPKG_TARGET_ARCHITECTURE}/gameinput.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/lib")
|
||||
file(INSTALL "${PACKAGE_PATH}/native/lib/${VCPKG_TARGET_ARCHITECTURE}/gameinput.lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib")
|
||||
set(LIB_NAME "gameinput.lib")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
configure_file("${CMAKE_CURRENT_LIST_DIR}/gameinput-config.cmake.in"
|
||||
"${CURRENT_PACKAGES_DIR}/share/${PORT}/${PORT}-config.cmake"
|
||||
COPYONLY)
|
||||
@ONLY)
|
||||
|
||||
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||
|
||||
@@ -1,8 +1,18 @@
|
||||
{
|
||||
"name": "gameinput",
|
||||
"version": "2.2.26100.6114",
|
||||
"version": "3.1.26100.6879",
|
||||
"description": "GameInput",
|
||||
"homepage": "https://aka.ms/gameinput",
|
||||
"license": null,
|
||||
"supports": "windows & x64 & !uwp"
|
||||
"supports": "windows & x64 & !uwp",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -3181,7 +3181,7 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"gameinput": {
|
||||
"baseline": "2.2.26100.6114",
|
||||
"baseline": "3.1.26100.6879",
|
||||
"port-version": 0
|
||||
},
|
||||
"gamenetworkingsockets": {
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "e7eca0e7d1866ac7c18a817bec8e1b8df92ab5da",
|
||||
"version": "3.1.26100.6879",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "9d4a382441b215a535cf212671e87daa224782bb",
|
||||
"version": "2.2.26100.6114",
|
||||
|
||||
Reference in New Issue
Block a user