From d679c5731f700bb1e8dd25fd1fc466b3069c7364 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 27 Jul 2024 22:49:53 +0200 Subject: [PATCH] Use pkg-config to find libgcrypt build configs Fixes #401 --- cmake/Modules/FindLibGcrypt.cmake | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/cmake/Modules/FindLibGcrypt.cmake b/cmake/Modules/FindLibGcrypt.cmake index 1cbc10a0..bc673bc3 100644 --- a/cmake/Modules/FindLibGcrypt.cmake +++ b/cmake/Modules/FindLibGcrypt.cmake @@ -11,8 +11,6 @@ # Redistribution and use is allowed according to the terms of the BSD license. # For details see the accompanying COPYING-CMAKE-SCRIPTS file. -# libgcrypt is moving to pkg-config, but earlier version don't have it - #search in typical paths for libgcrypt-config FIND_PROGRAM(LIBGCRYPTCONFIG_EXECUTABLE NAMES libgcrypt-config) @@ -27,18 +25,23 @@ IF(LIBGCRYPTCONFIG_EXECUTABLE) EXEC_PROGRAM(${LIBGCRYPTCONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE LIBGCRYPT_CFLAGS) - string(REPLACE "fgrep: warning: fgrep is obsolescent; using grep -F" "" LIBGCRYPT_LIBRARIES "${LIBGCRYPT_LIBRARIES}") - string(STRIP "${LIBGCRYPT_LIBRARIES}" LIBGCRYPT_LIBRARIES) +ELSE() + # libgcrypt is moving to pkg-config, but earlier version don't have it + MESSAGE(STATUS "Couldn't find libgcrypt-config, using pkg-config instead...") + EXEC_PROGRAM("pkg-config" ARGS libgcrypt --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE LIBGCRYPT_LIBRARIES) + EXEC_PROGRAM("pkg-config" ARGS libgcrypt --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE LIBGCRYPT_CFLAGS) +ENDIF(LIBGCRYPTCONFIG_EXECUTABLE) + +string(REPLACE "fgrep: warning: fgrep is obsolescent; using grep -F" "" LIBGCRYPT_LIBRARIES "${LIBGCRYPT_LIBRARIES}") +string(STRIP "${LIBGCRYPT_LIBRARIES}" LIBGCRYPT_LIBRARIES) - IF(${LIBGCRYPT_CFLAGS} MATCHES "\n") +IF(${LIBGCRYPT_CFLAGS} MATCHES "\n") SET(LIBGCRYPT_CFLAGS " ") - ENDIF(${LIBGCRYPT_CFLAGS} MATCHES "\n") +ENDIF(${LIBGCRYPT_CFLAGS} MATCHES "\n") - IF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS) +IF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS) SET(LIBGCRYPT_FOUND TRUE) - ENDIF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS) - -ENDIF(LIBGCRYPTCONFIG_EXECUTABLE) +ENDIF(LIBGCRYPT_LIBRARIES AND LIBGCRYPT_CFLAGS) if (LIBGCRYPT_FOUND) if (NOT LibGcrypt_FIND_QUIETLY)