aboutsummaryrefslogtreecommitdiff
path: root/ports
diff options
context:
space:
mode:
authorpastdue <30942300+past-due@users.noreply.github.com>2021-01-19 15:00:59 -0500
committerGitHub <noreply@github.com>2021-01-19 12:00:59 -0800
commit2ac5b0564c9bd703cdc8d1acb31b721326e54227 (patch)
tree433bc387ebc6f8dd2a46a02b6d17f113a431548f /ports
parentd33b06d80867f870afc7322423bc93de6cf6fc71 (diff)
downloadvcpkg-2ac5b0564c9bd703cdc8d1acb31b721326e54227.tar.gz
vcpkg-2ac5b0564c9bd703cdc8d1acb31b721326e54227.zip
[physfs] Fix arm64-windows (#15684)
Diffstat (limited to 'ports')
-rw-r--r--ports/physfs/fix-lzmasdk-arm64-windows.patch20
-rw-r--r--ports/physfs/portfile.cmake5
-rw-r--r--ports/physfs/vcpkg.json3
3 files changed, 23 insertions, 5 deletions
diff --git a/ports/physfs/fix-lzmasdk-arm64-windows.patch b/ports/physfs/fix-lzmasdk-arm64-windows.patch
new file mode 100644
index 000000000..0fad2b580
--- /dev/null
+++ b/ports/physfs/fix-lzmasdk-arm64-windows.patch
@@ -0,0 +1,20 @@
+diff --git a/src/physfs_lzmasdk.h b/src/physfs_lzmasdk.h
+--- a/src/physfs_lzmasdk.h
++++ b/src/physfs_lzmasdk.h
+@@ -506,6 +506,7 @@ MY_CPU_LE_UNALIGN means that CPU is LITTLE ENDIAN and CPU supports unaligned mem
+ #endif
+
+ #if defined(MY_CPU_AMD64) \
++ || defined(_M_ARM64) \
+ || defined(_M_IA64) \
+ || defined(__AARCH64EL__) \
+ || defined(__AARCH64EB__)
+@@ -531,6 +532,8 @@ MY_CPU_LE_UNALIGN means that CPU is LITTLE ENDIAN and CPU supports unaligned mem
+
+ #if defined(_WIN32) && defined(_M_ARM)
+ #define MY_CPU_ARM_LE
++#elif defined(_WIN64) && defined(_M_ARM64)
++#define MY_CPU_ARM_LE
+ #endif
+
+ #if defined(_WIN32) && defined(_M_IA64)
diff --git a/ports/physfs/portfile.cmake b/ports/physfs/portfile.cmake
index 18080f5e6..2ce216e4d 100644
--- a/ports/physfs/portfile.cmake
+++ b/ports/physfs/portfile.cmake
@@ -1,6 +1,3 @@
-if(VCPKG_TARGET_IS_WINDOWS AND ${VCPKG_TARGET_ARCHITECTURE} MATCHES "arm64")
- message(FATAL_ERROR "Architecture 'arm64' not supported on target 'Windows' by physfs!\n")
-endif()
set(PHYSFS_VERSION 3.0.2)
vcpkg_download_distfile(ARCHIVE
@@ -14,6 +11,8 @@ vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${PHYSFS_VERSION}
+ PATCHES
+ "fix-lzmasdk-arm64-windows.patch"
)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" PHYSFS_STATIC)
diff --git a/ports/physfs/vcpkg.json b/ports/physfs/vcpkg.json
index 7eb40b2a7..0c0dfceb9 100644
--- a/ports/physfs/vcpkg.json
+++ b/ports/physfs/vcpkg.json
@@ -1,10 +1,9 @@
{
"name": "physfs",
"version-string": "3.0.2",
- "port-version": 3,
+ "port-version": 4,
"description": "a library to provide abstract access to various archives",
"homepage": "https://icculus.org/physfs/",
- "supports": "!(arm64 & windows)",
"dependencies": [
"zlib"
]