diff options
| -rw-r--r-- | ports/libffi/CMakeLists.txt | 11 | ||||
| -rw-r--r-- | ports/libffi/libffiConfig.cmake.in | 7 | ||||
| -rw-r--r-- | ports/libffi/portfile.cmake | 2 |
3 files changed, 20 insertions, 0 deletions
diff --git a/ports/libffi/CMakeLists.txt b/ports/libffi/CMakeLists.txt index 29e14bdac..ae57e7b1a 100644 --- a/ports/libffi/CMakeLists.txt +++ b/ports/libffi/CMakeLists.txt @@ -122,10 +122,21 @@ endif() add_library(libffi ${FFI_SOURCES}) install(TARGETS libffi + EXPORT ${PROJECT_NAME}Targets RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +include(CMakePackageConfigHelpers) + +configure_package_config_file(${PROJECT_NAME}Config.cmake.in + "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake" + INSTALL_DESTINATION share/${PROJECT_NAME}) +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake" + DESTINATION share/${PROJECT_NAME}) +install(EXPORT ${PROJECT_NAME}Targets + DESTINATION share/${PROJECT_NAME}) + if(NOT FFI_SKIP_HEADERS) install(FILES ${CMAKE_BINARY_DIR}/include/ffi.h diff --git a/ports/libffi/libffiConfig.cmake.in b/ports/libffi/libffiConfig.cmake.in new file mode 100644 index 000000000..ebdf1488a --- /dev/null +++ b/ports/libffi/libffiConfig.cmake.in @@ -0,0 +1,7 @@ +@PACKAGE_INIT@ + +include(CMakeFindDependencyMacro) + +if(NOT TARGET libffi) + include("${CMAKE_CURRENT_LIST_DIR}/libffiTargets.cmake") +endif() diff --git a/ports/libffi/portfile.cmake b/ports/libffi/portfile.cmake index bc3084e74..f023521c8 100644 --- a/ports/libffi/portfile.cmake +++ b/ports/libffi/portfile.cmake @@ -17,6 +17,7 @@ vcpkg_from_github( ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/libffiConfig.cmake.in DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -29,6 +30,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() file(READ ${CURRENT_PACKAGES_DIR}/include/ffi.h FFI_H) string(REPLACE "/* *know* they are going to link with the static library. */" |
