diff options
| author | Griffin Downs <35574547+grdowns@users.noreply.github.com> | 2019-04-12 02:30:59 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-04-12 02:30:59 -0700 |
| commit | 0e000644053015b7f7a0985e14f0bd384c847d17 (patch) | |
| tree | 7e456fd12b3bf281b28587338f1650017c8b32ab /ports/cppfs | |
| parent | 93ce6b4f27602cd18f4327c2cfd84093d472b8bb (diff) | |
| parent | 39ba5b2b30c9f7b49e777a62093cdd49d05b53a9 (diff) | |
| download | vcpkg-0e000644053015b7f7a0985e14f0bd384c847d17.tar.gz vcpkg-0e000644053015b7f7a0985e14f0bd384c847d17.zip | |
Merge branch 'master' into master
Diffstat (limited to 'ports/cppfs')
| -rw-r--r-- | ports/cppfs/CONTROL | 7 | ||||
| -rw-r--r-- | ports/cppfs/LibCrypto-fix.patch | 53 | ||||
| -rw-r--r-- | ports/cppfs/cmake-export-fix.patch | 46 | ||||
| -rw-r--r-- | ports/cppfs/portfile.cmake | 50 |
4 files changed, 156 insertions, 0 deletions
diff --git a/ports/cppfs/CONTROL b/ports/cppfs/CONTROL new file mode 100644 index 000000000..30ec75f00 --- /dev/null +++ b/ports/cppfs/CONTROL @@ -0,0 +1,7 @@ +Source: cppfs +Version: 1.2.0 +Description: Cross-platform C++ file system library supporting multiple backends + +Feature: ssh +Description: SSH backend for cppfs +Build-Depends: libssh2,openssl,zlib diff --git a/ports/cppfs/LibCrypto-fix.patch b/ports/cppfs/LibCrypto-fix.patch new file mode 100644 index 000000000..144d2aabe --- /dev/null +++ b/ports/cppfs/LibCrypto-fix.patch @@ -0,0 +1,53 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ea9fd15..af63d1e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -7,7 +7,7 @@ + cmake_minimum_required(VERSION 3.0 FATAL_ERROR) + + # Include cmake modules +-list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") ++# list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") + + include(GenerateExportHeader) + +diff --git a/source/cppfs/CMakeLists.txt b/source/cppfs/CMakeLists.txt +index aa37eda..d29176a 100644 +--- a/source/cppfs/CMakeLists.txt ++++ b/source/cppfs/CMakeLists.txt +@@ -4,18 +4,18 @@ + # + + find_package(LibSSH2) +-find_package(LibCrypto) ++# find_package(LibCrypto) + find_package(ZLIB) + find_package(OpenSSL) + +-if (LibSSH2_FOUND AND LibCrypto_FOUND AND ZLIB_FOUND AND OpenSSL_FOUND) ++if (LibSSH2_FOUND AND ZLIB_FOUND AND OpenSSL_FOUND) + set(SSH_DEPS_MET TRUE) + else() + set(SSH_DEPS_MET FALSE) + endif() + + if (OPTION_BUILD_SSH_BACKEND AND NOT SSH_DEPS_MET) +- message(FATAL_ERROR "Requested to build ssh module but not all dependencies are found! LibSSH2: ${LibSSH2_FOUND}, LibCrypto: ${LibCrypto_FOUND}, ZLIB: ${ZLIB_FOUND}, OpenSSL: ${OpenSSL_FOUND}") ++ message(FATAL_ERROR "Requested to build ssh module but not all dependencies are found! LibSSH2: ${LibSSH2_FOUND}, ZLIB: ${ZLIB_FOUND}, OpenSSL: ${OpenSSL_FOUND}") + endif() + + +@@ -207,10 +207,9 @@ target_link_libraries(${target} + if (OPTION_BUILD_SSH_BACKEND) + target_link_libraries(${target} + PRIVATE +- ${OPENSSL_LIBRARIES} +- ${LIBSSH2_LIBRARY} +- ${LIBCRYPTO_LIBRARY} +- ${ZLIB_LIBRARY} ++ Libssh2::libssh2 ++ OpenSSL::SSL OpenSSL::Crypto ++ ZLIB::ZLIB + ) + + if("${CMAKE_SYSTEM_NAME}" MATCHES "Windows") diff --git a/ports/cppfs/cmake-export-fix.patch b/ports/cppfs/cmake-export-fix.patch new file mode 100644 index 000000000..344700002 --- /dev/null +++ b/ports/cppfs/cmake-export-fix.patch @@ -0,0 +1,46 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ea9fd15..c62c6fd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -124,7 +124,7 @@ endif() + if((UNIX AND SYSTEM_DIR_INSTALL) OR OPTION_FORCE_SYSTEM_DIR_INSTALL) + # Install into the system (/usr/bin or /usr/local/bin) + set(INSTALL_ROOT "share/${project}") # /usr/[local]/share/<project> +- set(INSTALL_CMAKE "share/${project}/cmake") # /usr/[local]/share/<project>/cmake ++ set(INSTALL_CMAKE "share/${project}") # /usr/[local]/share/<project> + set(INSTALL_EXAMPLES "share/${project}") # /usr/[local]/share/<project> + set(INSTALL_DATA "share/${project}") # /usr/[local]/share/<project> + set(INSTALL_BIN "bin") # /usr/[local]/bin +@@ -183,7 +183,7 @@ add_subdirectory(deploy) + install(FILES "${PROJECT_BINARY_DIR}/VERSION" DESTINATION ${INSTALL_ROOT} COMPONENT runtime) + + # Install cmake find script for the project +-install(FILES ${META_PROJECT_NAME}-config.cmake DESTINATION ${INSTALL_ROOT} COMPONENT dev) ++# install(FILES ${META_PROJECT_NAME}-config.cmake DESTINATION ${INSTALL_ROOT} COMPONENT dev) + + # Install the project meta files + install(FILES AUTHORS DESTINATION ${INSTALL_ROOT} COMPONENT runtime) +diff --git a/source/cppfs/CMakeLists.txt b/source/cppfs/CMakeLists.txt +index aa37eda..e8a59e0 100644 +--- a/source/cppfs/CMakeLists.txt ++++ b/source/cppfs/CMakeLists.txt +@@ -283,7 +283,7 @@ perform_health_checks( + + # Library + install(TARGETS ${target} +- EXPORT "${target}-export" COMPONENT dev ++ EXPORT "${target}-config" COMPONENT dev + RUNTIME DESTINATION ${INSTALL_BIN} COMPONENT runtime + LIBRARY DESTINATION ${INSTALL_SHARED} COMPONENT runtime + ARCHIVE DESTINATION ${INSTALL_LIB} COMPONENT dev +@@ -302,8 +302,8 @@ install(DIRECTORY + ) + + # CMake config +-install(EXPORT ${target}-export ++install(EXPORT ${target}-config + NAMESPACE ${META_PROJECT_NAME}:: +- DESTINATION ${INSTALL_CMAKE}/${target} ++ DESTINATION ${INSTALL_CMAKE} + COMPONENT dev + ) diff --git a/ports/cppfs/portfile.cmake b/ports/cppfs/portfile.cmake new file mode 100644 index 000000000..33ea7e605 --- /dev/null +++ b/ports/cppfs/portfile.cmake @@ -0,0 +1,50 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO cginternals/cppfs + REF v1.2.0 + SHA512 2e831978dd87bd40d14e5b6f5089f3a962481d41959bfd62db543339d05e306315a1167c3bc06b372517357cc314f7d06ac19605f9a2d5b4edddc9a1f3fa8d03 + HEAD_REF master + PATCHES + LibCrypto-fix.patch + cmake-export-fix.patch +) + +if(${TARGET_TRIPLET} MATCHES "uwp") + message(FATAL_ERROR "cppfs does not support uwp") +endif() + +set(SHARED_LIBS Off) +if(${VCPKG_LIBRARY_LINKAGE} STREQUAL "dynamic") + set(SHARED_LIBS On) +endif() + +set(SSH_BACKEND OFF) +if("ssh" IN_LIST FEATURES) + set(SSH_BACKEND ON) + if("${VCPKG_TARGET_ARCHITECTURE}" STREQUAL "arm64") + message(FATAL_ERROR "SSH backend of cppfs does not support arm64.") + endif() +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DOPTION_BUILD_SSH_BACKEND=${SSH_BACKEND} + -DOPTION_BUILD_TESTS=Off + -DBUILD_SHARED_LIBS=${SHARED_LIBS} + -DOPTION_FORCE_SYSTEM_DIR_INSTALL=On +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +vcpkg_fixup_cmake_targets() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/cppfs RENAME copyright) + +vcpkg_test_cmake(PACKAGE_NAME cppfs) |
