[libffi] Support arm/arm64 (#10485)

* [libffi] Support arm/arm64

* [libffi] Use VCPKG_TARGET_ARCHITECTURE to determine triplet

* [libffi] Use VCPKG_TARGET_ARCHITECTURE in CMakeLists.txt

* update baseline

* re-trigger ci test
This commit is contained in:
Jack·Boos·Yu 2020-04-07 05:17:22 +08:00 committed by GitHub
parent f2023a7f35
commit 6283a51112
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 12 additions and 14 deletions

View File

@ -21,13 +21,13 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "ARM")
set(TARGET ARM)
elseif(CMAKE_SYSTEM_NAME MATCHES "BSD" AND CMAKE_SIZEOF_VOID_P EQUAL 4)
set(TARGET X86_FREEBSD)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "ARM")
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
set(TARGET ARM_WIN32)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "ARM64")
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
set(TARGET ARM_WIN64)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SIZEOF_VOID_P EQUAL 4)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
set(TARGET X86_WIN32)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SIZEOF_VOID_P EQUAL 8)
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
set(TARGET X86_WIN64)
elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin" AND CMAKE_SIZEOF_VOID_P EQUAL 4)
set(TARGET X86_DARWIN)

View File

@ -1,5 +1,4 @@
Source: libffi
Version: 3.3
Version: 3.3-1
Homepage: https://github.com/libffi/libffi
Description: Portable, high level programming interface to various calling conventions
Supports: !arm
Description: Portable, high level programming interface to various calling conventions

View File

@ -23,13 +23,13 @@ vcpkg_copy_pdbs()
vcpkg_fixup_cmake_targets()
if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(READ ${CURRENT_PACKAGES_DIR}/include/ffi.h FFI_H)
string(REPLACE " *know* they are going to link with the static library. */"
" *know* they are going to link with the static library. */
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/include/ffi.h
" *know* they are going to link with the static library. */"
" *know* they are going to link with the static library. */
#define FFI_BUILDING
" FFI_H "${FFI_H}")
file(WRITE ${CURRENT_PACKAGES_DIR}/include/ffi.h "${FFI_H}")
"
)
endif()
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

View File

@ -749,7 +749,6 @@ libfabric:x64-linux=fail
libfabric:x64-osx=fail
libfabric:x64-uwp=fail
libfabric:x64-windows=ignore
libffi:arm-uwp=fail
libfreenect2:arm64-windows=fail
libgd:x64-linux=ignore
libgit2:arm64-windows=fail