aboutsummaryrefslogtreecommitdiff
path: root/ports/libssh
diff options
context:
space:
mode:
authorMatthew Oliver <protogonoi@gmail.com>2021-04-08 03:06:55 +1000
committerGitHub <noreply@github.com>2021-04-07 10:06:55 -0700
commit85a48c1ed558210cab67a03209510c4bf6e5e285 (patch)
treea09d9080713e8979579d35e8540eb59bbafeadb0 /ports/libssh
parent4278a5f9eafbdadfaa65d7aafd914964841cba42 (diff)
downloadvcpkg-85a48c1ed558210cab67a03209510c4bf6e5e285.tar.gz
vcpkg-85a48c1ed558210cab67a03209510c4bf6e5e285.zip
[ffmpeg] Add support for dav1d,fontconfig,freetype,fribidi,ilbc,modplug,opengl,openjpeg,libssh,tensorflow,tesseract,webp,libxml2 dependencies. (#15787)
* [tesseract] Use vcpkg_fixup_pkgconfig. * [libxml2] Correct pkgconfig lib name. * [libwebp] Use vcpkg_fixup_pkgconfig. * [libssh] Export pkgconfig on windows. Also move to using git to get source. * [modplug] Export pkgconfig on windows. * [ffmpeg] Add support for fontconfig,freetype,fribidi,modplug,openjpeg,libssh,tesseract,libxml2 dependencies. * [openjpeg] Correct required static link libs in pkgconfig. * [modplug] Combine vcpkg_from_github using variable. * Update ports/libssh/CONTROL * Improve portfile.cmake * update version records. * [openjpeg] Update libs in pkgcfg. Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> * update version records * [libssh] Add pthread to pkgconfig when using mbedtls. * [libssh] Correct pthread naming on windows. * [fontconfig] Add libintl to pkgconfig on windows. * update version records * [ffmpeg] Fixup FindFFmpeg. * [ffmpeg] speex now supports non-windows. * [ffmpeg] Add feature libass. * [ffmpeg] Add dav1d feature. * [ffmpeg] Add feature ilbc. * [ffmpeg] Add tensorflow feature. * [ffmpeg] update version record. * [ffmpeg] Add CI feature test. * [ffmpeg] Limit features based on CI failures. * [ffmpeg] Update version record. * [ffmpeg] limit features based on ci.baseline. * [various ports] Update supports field. * [ffmpeg] Limit features more based on CI. * update version records. * [ffmpeg] Add detection of additional non target deps.. select_library_configurations_from_names currently detects the debug libs even for release builds as _IMPORT_PREFIX was not being set. * [aubio] Silence warning about FindFFMPEG. * [pangolin] Use vcpkg supplied FindFFMPEG. * update version files. * [ffnvcodec] Set as not supporting uwp. ffnvcodec will build under uwp as its a header only lib, but it can not be used as it requires dynamic dll loading. * [ffmpeg] Update feature all. * update version records * [tesseract] Wrap debug pkgcfg update. * [libssh,libxml2,openjpeg,fontconfig] Fix pkg-config for release only triplets. * [libssh] Correct port version after merge. * [ffmpeg] Fixup after merge. * Update version files. * [ffmpeg] Add opengl support. * [ffmpeg] Update package version. * [ffmpeg] Fix ffnvcodec support. * [ffmpeg] Fix x265 detection on osx. * [libvpx] Enable arm-uwp build. * [ffmpeg] Fixup x265 patch. * trigger sdl rebuild * [ffmpeg] Disable opengl on osx. * Revert "trigger sdl rebuild" This reverts commit 94065bfe8414259ad5a5576bd4ac0b7ab4b97c6b. * [ffmpeg] Disable failing features on osx. * Update ports/ffmpeg/FindFFMPEG.cmake.in Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com> * [ffmpeg] Add ass dependencies to FindFFmpeg. * Update ports/ffmpeg/FindFFMPEG.cmake.in Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com> * update version * [fontconfig] disable pthread/json as they are not needed for lib builds. Only used for tests. * [ffmpeg] Enable fontconfig on static+windows. * update versions * update versions. * Fix incorrectly included commits * revert pangolin commit Reverts most of 2543be2edf60bf38511c2d477bb17b617398a108 * update versions * Correct port version after merge. * update versions. * [ffmpeg] Fix cmake dependency detection on non-windows. * Revert "revert pangolin commit" This reverts commit f59bc5a53ea74fd9df17fc368886e9d1a80ac42f. * [ffmpeg] Fix dependency loading that does not define separate debug/release libs. * update versions. * [ffmpeg] set CMP0072 policy. * [wavpack] Fix cmake config export. * [ffmpeg] Add optional system dependent libraries. * update versions after merge. * update versions. Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com> Co-authored-by: Matthias C. M. Troffaes <matthias.troffaes@gmail.com>
Diffstat (limited to 'ports/libssh')
-rw-r--r--ports/libssh/0001-export-pkgconfig-file.patch43
-rw-r--r--ports/libssh/CONTROL4
-rw-r--r--ports/libssh/portfile.cmake24
3 files changed, 59 insertions, 12 deletions
diff --git a/ports/libssh/0001-export-pkgconfig-file.patch b/ports/libssh/0001-export-pkgconfig-file.patch
new file mode 100644
index 000000000..c84510ce5
--- /dev/null
+++ b/ports/libssh/0001-export-pkgconfig-file.patch
@@ -0,0 +1,43 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1f5b0bf5..c51fb0d3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -111,8 +111,28 @@ add_subdirectory(include)
+ add_subdirectory(src)
+
+ # pkg-config file
+-if (UNIX)
+ configure_file(libssh.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc "Requires:")
++ if (WITH_ZLIB)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc " zlib")
++ endif ()
++ if (WITH_GCRYPT)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc "\nLibs.private: -lgcrypt")
++ elseif (WITH_MBEDTLS)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc "\nLibs.private: -lmbedcrypto -lpthread")
++ else ()
++ if (WIN32)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc "\nLibs.private: -llibcrypto -lUser32 -lCrypt32")
++ else ()
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc " libcrypto\nLibs.private:")
++ endif ()
++ endif ()
++ if (CMAKE_USE_PTHREADS_INIT)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc " -lpthread")
++ endif ()
++ if (WIN32)
++ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc " -lws2_32 -lShell32 -lAdvapi32")
++ endif ()
+ install(
+ FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/libssh.pc
+@@ -121,7 +141,6 @@ install(
+ COMPONENT
+ pkgconfig
+ )
+-endif (UNIX)
+
+ # CMake config files
+ include(CMakePackageConfigHelpers)
+
diff --git a/ports/libssh/CONTROL b/ports/libssh/CONTROL
index d1e607e8c..0a138fcd9 100644
--- a/ports/libssh/CONTROL
+++ b/ports/libssh/CONTROL
@@ -1,11 +1,11 @@
Source: libssh
Version: 0.9.5
-Port-Version: 1
+Port-Version: 2
Homepage: https://www.libssh.org/
Build-Depends: libssh[core,mbedtls] (android)
Description: libssh is a multiplatform C library implementing the SSHv2 protocol on client and server side
Default-Features: crypto
-Supports: !uwp
+Supports: !(uwp | arm)
Feature: crypto
Build-Depends: libssh[mbedtls]
diff --git a/ports/libssh/portfile.cmake b/ports/libssh/portfile.cmake
index ee7f0ac8f..a35ee1162 100644
--- a/ports/libssh/portfile.cmake
+++ b/ports/libssh/portfile.cmake
@@ -1,16 +1,12 @@
vcpkg_fail_port_install(ON_TARGET "UWP")
-set(VERSION 0.9.5)
-vcpkg_download_distfile(ARCHIVE
- URLS "https://www.libssh.org/files/0.9/libssh-${VERSION}.tar.xz"
- FILENAME "libssh-${VERSION}.tar.xz"
- SHA512 64e692a0bfa7f73585ea7b7b8b1d4c9a7f9be59565bfd4de32ca8cd9db121f87e7ad51f5c80269fbd99545af34dcf1894374ed8a6d6c1ac5f8601c026572ac18
-)
-
-vcpkg_extract_source_archive_ex(
+vcpkg_from_git(
OUT_SOURCE_PATH SOURCE_PATH
- ARCHIVE ${ARCHIVE}
- REF ${VERSION}
+ URL https://git.libssh.org/projects/libssh.git
+ REF 9c4af47965d284b2de26407bcd80473aba4ee4c9 # REFERENCE VERSION 0.9.5
+ SHA512 64e692a0bfa7f73585ea7b7b8b1d4c9a7f9be59565bfd4de32ca8cd9db121f87e7ad51f5c80269fbd99545af34dcf1894374ed8a6d6c1ac5f8601c026572ac18
+ PATCHES
+ 0001-export-pkgconfig-file.patch
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
@@ -40,6 +36,14 @@ vcpkg_configure_cmake(
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT})
vcpkg_copy_pdbs()
+#Fixup pthread naming
+if(NOT VCPKG_TARGET_IS_MINGW AND VCPKG_TARGET_IS_WINDOWS)
+ if(NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libssh.pc" "-lpthread" "-lpthreadVC3d")
+ endif()
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libssh.pc" "-lpthread" "-lpthreadVC3")
+endif()
+vcpkg_fixup_pkgconfig()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)