diff options
| author | Long Nguyen <nguyen.long.908132@gmail.com> | 2020-11-10 05:34:34 +0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-11-09 14:34:34 -0800 |
| commit | 1b59ca067cad83c9a51fddbb97230447b61eb5ad (patch) | |
| tree | cedced7c1f285130ec2ca19abac468ca887aa47d | |
| parent | 1b5e00a3e3acd51877cd0966f60fa78458c037e8 (diff) | |
| download | vcpkg-1b59ca067cad83c9a51fddbb97230447b61eb5ad.tar.gz vcpkg-1b59ca067cad83c9a51fddbb97230447b61eb5ad.zip | |
[libffi] mingw support (#14407)
| -rw-r--r-- | ports/libffi/CMakeLists.txt | 24 | ||||
| -rw-r--r-- | ports/libffi/CONTROL | 2 | ||||
| -rw-r--r-- | ports/libffi/portfile.cmake | 6 |
3 files changed, 27 insertions, 5 deletions
diff --git a/ports/libffi/CMakeLists.txt b/ports/libffi/CMakeLists.txt index 693fcc935..a021c9ffd 100644 --- a/ports/libffi/CMakeLists.txt +++ b/ports/libffi/CMakeLists.txt @@ -161,15 +161,31 @@ elseif("${TARGET}" STREQUAL "X86_64") add_assembly(src/x86/unix64.S) add_assembly(src/x86/win64.S) elseif("${TARGET}" STREQUAL "X86_WIN32") - add_assembly(src/x86/sysv_intel.S) + if(MSVC) + add_assembly(src/x86/sysv_intel.S) + else() + add_assembly(src/x86/sysv.S) + endif() elseif("${TARGET}" STREQUAL "X86_WIN64") - add_assembly(src/x86/win64_intel.S) + if(MSVC) + add_assembly(src/x86/win64_intel.S) + else() + add_assembly(src/x86/win64.S) + endif() elseif("${TARGET}" STREQUAL "ARM_WIN32") - add_assembly(src/arm/sysv_msvc_arm32.S) + if(MSVC) + add_assembly(src/arm/sysv_msvc_arm32.S) + else() + add_assembly(src/arm/sysv.S) + endif() elseif("${TARGET}" STREQUAL "ARM") add_assembly(src/arm/sysv.S) elseif("${TARGET}" STREQUAL "ARM_WIN64") - add_assembly(src/aarch64/win64_armasm.S) + if(MSVC) + add_assembly(src/aarch64/win64_armasm.S) + else() + add_assembly(src/aarch64/sysv.S) + endif() elseif("${TARGET}" STREQUAL "ARM64") add_assembly(src/aarch64/sysv.S) else() diff --git a/ports/libffi/CONTROL b/ports/libffi/CONTROL index 6f1154eda..477587af2 100644 --- a/ports/libffi/CONTROL +++ b/ports/libffi/CONTROL @@ -1,5 +1,5 @@ Source: libffi
Version: 3.3
-Port-Version: 5
+Port-Version: 6
Homepage: https://github.com/libffi/libffi
Description: Portable, high level programming interface to various calling conventions
diff --git a/ports/libffi/portfile.cmake b/ports/libffi/portfile.cmake index 7748d1cb6..da39de67d 100644 --- a/ports/libffi/portfile.cmake +++ b/ports/libffi/portfile.cmake @@ -47,6 +47,12 @@ endif() vcpkg_copy_pdbs() vcpkg_fixup_cmake_targets() +if(VCPKG_TARGET_IS_MINGW) + vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libffi.pc + "-lffi" "-llibffi") + vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libffi.pc + "-lffi" "-llibffi") +endif() vcpkg_fixup_pkgconfig() if (VCPKG_LIBRARY_LINKAGE STREQUAL static) |
