1
0
mirror of https://github.com/libssh2/libssh2.git synced 2025-10-27 13:52:22 +03:00

build: tidy-up libssh2.pc.in variable names

- prefix with `LIBSSH2_PC_`

- match with the names of `pkg-config` values.

- use the same names in autotools and CMake scripts.

- use `LIBSSH2_VERSION` for the version number in autotools scripts,
  to match the name used in CMake.

Closes #1125
This commit is contained in:
Viktor Szakats
2023-07-18 15:21:43 +00:00
parent 624abe275f
commit 5720dd9fe0
5 changed files with 34 additions and 34 deletions

View File

@@ -302,13 +302,13 @@ if(CRYPTO_BACKEND STREQUAL "OpenSSL" OR NOT CRYPTO_BACKEND)
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_OPENSSL")
set(CRYPTO_BACKEND_INCLUDE_DIR ${OPENSSL_INCLUDE_DIR})
list(APPEND LIBRARIES ${OPENSSL_LIBRARIES})
list(APPEND PC_REQUIRES_PRIVATE libssl libcrypto)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE libssl libcrypto)
if(WIN32)
# Statically linking to OpenSSL requires crypt32 for some Windows APIs.
# This should really be handled by FindOpenSSL.cmake.
list(APPEND LIBRARIES crypt32 bcrypt)
list(APPEND PC_LIBS -lcrypt32 -lbcrypt)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lcrypt32 -lbcrypt)
#set(CMAKE_FIND_DEBUG_MODE TRUE)
@@ -362,12 +362,12 @@ if(CRYPTO_BACKEND STREQUAL "wolfSSL" OR NOT CRYPTO_BACKEND)
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_WOLFSSL")
set(CRYPTO_BACKEND_INCLUDE_DIR ${WOLFSSL_INCLUDE_DIR} ${WOLFSSL_INCLUDE_DIR}/wolfssl)
list(APPEND LIBRARIES ${WOLFSSL_LIBRARIES})
list(APPEND PC_REQUIRES_PRIVATE wolfssl)
list(APPEND PC_LIBS -lwolfssl)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE wolfssl)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lwolfssl)
if(WIN32)
list(APPEND LIBRARIES crypt32)
list(APPEND PC_LIBS -lcrypt32)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lcrypt32)
endif()
find_package(ZLIB)
@@ -388,8 +388,8 @@ if(CRYPTO_BACKEND STREQUAL "Libgcrypt" OR NOT CRYPTO_BACKEND)
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_LIBGCRYPT")
set(CRYPTO_BACKEND_INCLUDE_DIR ${LIBGCRYPT_INCLUDE_DIRS})
list(APPEND LIBRARIES ${LIBGCRYPT_LIBRARIES})
list(APPEND PC_REQUIRES_PRIVATE libgcrypt)
list(APPEND PC_LIBS -lgcrypt)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE libgcrypt)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lgcrypt)
endif()
endif()
@@ -402,7 +402,7 @@ if(CRYPTO_BACKEND STREQUAL "mbedTLS" OR NOT CRYPTO_BACKEND)
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_MBEDTLS")
set(CRYPTO_BACKEND_INCLUDE_DIR ${MBEDTLS_INCLUDE_DIR})
list(APPEND LIBRARIES ${MBEDTLS_LIBRARIES})
list(APPEND PC_LIBS -lmbedcrypto)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lmbedcrypto)
link_directories(${MBEDTLS_LIBRARY_DIR})
endif()
endif()
@@ -416,7 +416,7 @@ if(CRYPTO_BACKEND STREQUAL "WinCNG" OR NOT CRYPTO_BACKEND)
set(CRYPTO_BACKEND_INCLUDE_DIR "")
list(APPEND LIBRARIES crypt32 bcrypt)
list(APPEND PC_LIBS -lcrypt32 -lbcrypt)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lcrypt32 -lbcrypt)
elseif(${SPECIFIC_CRYPTO_REQUIREMENT} STREQUAL ${REQUIRED})
message(FATAL_ERROR "WinCNG not available")
endif()

View File

@@ -778,7 +778,7 @@ m4_case([$1],
[openssl], [
LIBSSH2_LIB_HAVE_LINKFLAGS([ssl], [crypto], [#include <openssl/ssl.h>], [
AC_DEFINE(LIBSSH2_OPENSSL, 1, [Use $1])
LIBSREQUIRED="$LIBSREQUIRED${LIBSREQUIRED:+,}libssl,libcrypto"
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}libssl,libcrypto"
found_crypto="$1"
found_crypto_str="OpenSSL"
])
@@ -792,7 +792,7 @@ m4_case([$1],
fi
LIBSSH2_LIB_HAVE_LINKFLAGS([wolfssl], [], [#include <wolfssl/options.h>], [
AC_DEFINE(LIBSSH2_WOLFSSL, 1, [Use $1])
LIBSREQUIRED="$LIBSREQUIRED${LIBSREQUIRED:+,}wolfssl"
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}wolfssl"
found_crypto="$1"
])
],
@@ -800,7 +800,7 @@ m4_case([$1],
[libgcrypt], [
LIBSSH2_LIB_HAVE_LINKFLAGS([gcrypt], [], [#include <gcrypt.h>], [
AC_DEFINE(LIBSSH2_LIBGCRYPT, 1, [Use $1])
LIBSREQUIRED="$LIBSREQUIRED${LIBSREQUIRED:+,}libgcrypt"
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}libgcrypt"
found_crypto="$1"
])
],

View File

@@ -22,12 +22,12 @@ if test "x$SED" = "xsed-was-not-found-by-configure"; then
fi
dnl figure out the libssh2 version
LIBSSH2VER=`$SED -ne 's/^#define LIBSSH2_VERSION *"\(.*\)"/\1/p' ${srcdir}/include/libssh2.h`
LIBSSH2_VERSION=`$SED -ne 's/^#define LIBSSH2_VERSION *"\(.*\)"/\1/p' ${srcdir}/include/libssh2.h`
AM_INIT_AUTOMAKE
AC_MSG_CHECKING([libssh2 version])
AC_MSG_RESULT($LIBSSH2VER)
AC_MSG_RESULT($LIBSSH2_VERSION)
AC_SUBST(LIBSSH2VER)
AC_SUBST(LIBSSH2_VERSION)
# Check for the OS.
# Daniel's note: this should not be necessary and we need to work to
@@ -146,12 +146,12 @@ Try --with-libz-prefix=PATH if you know that you have it."
fi
else
AC_DEFINE(LIBSSH2_HAVE_ZLIB, 1, [Compile in zlib support])
LIBSREQUIRED="$LIBSREQUIRED${LIBSREQUIRED:+,}zlib"
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}zlib"
found_libz="yes"
fi
fi
AC_SUBST(LIBSREQUIRED)
AC_SUBST(LIBSSH2_PC_REQUIRES_PRIVATE)
#
# Optional Settings
@@ -392,13 +392,16 @@ fi
LIBS="${LIBS} ${LTLIBZ}"
LIBSSH2_PC_LIBS_PRIVATE=$LIBS
AC_SUBST(LIBSSH2_PC_LIBS_PRIVATE)
dnl merge the pkg-config private fields into public ones when static-only
if test "x$enable_shared" = "xyes"; then
LIBSSH2_PC_REQUIRES=
LIBSSH2_PC_LIBS=
else
LIBSSH2_PC_REQUIRES=$LIBSREQUIRED
LIBSSH2_PC_LIBS=$LIBS
LIBSSH2_PC_REQUIRES=$LIBSSH2_PC_REQUIRES_PRIVATE
LIBSSH2_PC_LIBS=$LIBSSH2_PC_LIBS_PRIVATE
fi
AC_SUBST(LIBSSH2_PC_REQUIRES)
AC_SUBST(LIBSSH2_PC_LIBS)
@@ -414,7 +417,7 @@ AC_OUTPUT
AC_MSG_NOTICE([summary of build options:
version: ${LIBSSH2VER}
version: ${LIBSSH2_VERSION}
Host type: ${host}
Install prefix: ${prefix}
Compiler: ${CC}

View File

@@ -13,9 +13,9 @@ includedir=@includedir@
Name: libssh2
URL: https://www.libssh2.org/
Description: Library for SSH-based communication
Version: @LIBSSH2VER@
Version: @LIBSSH2_VERSION@
Requires: @LIBSSH2_PC_REQUIRES@
Requires.private: @LIBSREQUIRED@
Requires.private: @LIBSSH2_PC_REQUIRES_PRIVATE@
Libs: -L${libdir} -lssh2 @LIBSSH2_PC_LIBS@
Libs.private: @LIBS@
Libs.private: @LIBSSH2_PC_LIBS_PRIVATE@
Cflags: -I${includedir}

View File

@@ -58,7 +58,7 @@ if(ENABLE_ZLIB_COMPRESSION)
list(APPEND libssh2_INCLUDE_DIRS ${ZLIB_INCLUDE_DIRS})
list(APPEND LIBRARIES ${ZLIB_LIBRARIES})
list(APPEND PC_REQUIRES_PRIVATE zlib)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE zlib)
if(ZLIB_FOUND)
list(APPEND libssh2_DEFINITIONS LIBSSH2_HAVE_ZLIB)
endif()
@@ -67,7 +67,7 @@ endif()
list(APPEND LIBRARIES ${SOCKET_LIBRARIES})
if(WIN32)
list(APPEND PC_LIBS -lws2_32)
list(APPEND LIBSSH2_PC_LIBS_PRIVATE -lws2_32)
endif()
# to find generated header
@@ -180,22 +180,19 @@ install(
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libssh2)
## Export a .pc file for client projects not using CMaek
if(PC_REQUIRES_PRIVATE)
string(REPLACE ";" "," PC_REQUIRES_PRIVATE "${PC_REQUIRES_PRIVATE}")
if(LIBSSH2_PC_REQUIRES_PRIVATE)
string(REPLACE ";" "," LIBSSH2_PC_REQUIRES_PRIVATE "${LIBSSH2_PC_REQUIRES_PRIVATE}")
endif()
if(PC_LIBS)
string(REPLACE ";" " " PC_LIBS "${PC_LIBS}")
if(LIBSSH2_PC_LIBS_PRIVATE)
string(REPLACE ";" " " LIBSSH2_PC_LIBS_PRIVATE "${LIBSSH2_PC_LIBS_PRIVATE}")
endif()
set(LIBSSH2VER ${LIBSSH2_VERSION})
set(LIBSREQUIRED ${PC_REQUIRES_PRIVATE})
set(LIBS ${PC_LIBS})
# merge the pkg-config private fields into public ones when static-only
if(BUILD_SHARED_LIBS)
set(LIBSSH2_PC_REQUIRES "")
set(LIBSSH2_PC_LIBS "")
else()
set(LIBSSH2_PC_REQUIRES "${PC_REQUIRES_PRIVATE}")
set(LIBSSH2_PC_LIBS "${PC_LIBS}")
set(LIBSSH2_PC_REQUIRES "${LIBSSH2_PC_REQUIRES_PRIVATE}")
set(LIBSSH2_PC_LIBS "${LIBSSH2_PC_LIBS_PRIVATE}")
endif()
set(prefix ${CMAKE_INSTALL_PREFIX})
set(exec_prefix "\${prefix}")