1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00

cmake: use pkg_check_modules() for GnuTLS

Remove the local cmake file and associated hacks used to manage GnuTLS.
This gives us less build-system glue code and makes it easier to enforce
a minimum version for GnuTLS.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
This commit is contained in:
Emil Velikov
2024-09-29 14:01:14 +01:00
committed by Sébastien Helleu
parent 51dfb1fb78
commit 19cb459685
5 changed files with 5 additions and 86 deletions
+3 -5
View File
@@ -211,11 +211,9 @@ include_directories(${LIBGCRYPT_INCLUDE_DIRS})
list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS})
# Check for GnuTLS
find_package(GnuTLS REQUIRED)
string(REGEX REPLACE "/[^/]*$" "" GNUTLS_LIBRARY_PATH "${GNUTLS_LIBRARY}")
include_directories(${GNUTLS_INCLUDE_PATH})
set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}")
list(APPEND EXTRA_LIBS gnutls)
pkg_check_modules(GNUTLS REQUIRED gnutls)
include_directories(${GNUTLS_INCLUDE_DIRS})
list(APPEND EXTRA_LIBS ${GNUTLS_LDFLAGS})
# Check for zlib
find_package(ZLIB REQUIRED)
-75
View File
@@ -1,75 +0,0 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
# - Find GnuTLS
# This module finds if libgnutls is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GNUTLS_INCLUDE_PATH = path to where <gnutls/gnutls.h> can be found
# GNUTLS_LIBRARY = path to where libgnutls.so* can be found
# GNUTLS_CFLAGS = cflags to use to compile
# GNUTLS_LDFLAGS = ldflags to use to compile
if(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
# Already in cache, be silent
set(GNUTLS_FIND_QUIETLY TRUE)
endif()
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config)
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=prefix gnutls
OUTPUT_VARIABLE GNUTLS_PREFIX
)
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --cflags gnutls
OUTPUT_VARIABLE GNUTLS_CFLAGS
)
string(REGEX REPLACE "[\r\n]" "" GNUTLS_CFLAGS "${GNUTLS_CFLAGS}")
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --libs gnutls
OUTPUT_VARIABLE GNUTLS_LDFLAGS
)
string(REGEX REPLACE "[\r\n]" "" GNUTLS_LDFLAGS "${GNUTLS_LDFLAGS}")
set(GNUTLS_POSSIBLE_INCLUDE_PATH "${GNUTLS_PREFIX}/include")
set(GNUTLS_POSSIBLE_LIB_DIR "${GNUTLS_PREFIX}/lib")
find_path(GNUTLS_INCLUDE_PATH
NAMES gnutls/gnutls.h
PATHS GNUTLS_POSSIBLE_INCLUDE_PATH
)
find_library(GNUTLS_LIBRARY
NAMES gnutls
PATHS GNUTLS_POSSIBLE_LIB_DIR
)
if(NOT GNUTLS_INCLUDE_PATH OR NOT GNUTLS_LIBRARY)
message(FATAL_ERROR "GnuTLS was not found")
endif()
mark_as_advanced(
GNUTLS_INCLUDE_PATH
GNUTLS_LIBRARY
GNUTLS_CFLAGS
GNUTLS_LDFLAGS
)
-2
View File
@@ -87,8 +87,6 @@ else()
check_symbol_exists(backtrace "execinfo.h" HAVE_BACKTRACE)
endif()
include_directories(${GNUTLS_INCLUDE_PATH})
if(ENABLE_ZSTD)
include_directories(${LIBZSTD_INCLUDE_DIRS})
endif()
+1 -2
View File
@@ -53,8 +53,7 @@ set_target_properties(irc PROPERTIES PREFIX "")
set(LINK_LIBS)
include_directories(${GNUTLS_INCLUDE_PATH})
list(APPEND LINK_LIBS ${GNUTLS_LIBRARY})
list(APPEND LINK_LIBS ${GNUTLS_LDFLAGS})
list(APPEND LINK_LIBS ${LIBGCRYPT_LDFLAGS})
+1 -2
View File
@@ -61,8 +61,7 @@ set_target_properties(relay PROPERTIES PREFIX "")
set(LINK_LIBS)
include_directories(${GNUTLS_INCLUDE_PATH})
list(APPEND LINK_LIBS ${GNUTLS_LIBRARY})
list(APPEND LINK_LIBS ${GNUTLS_LDFLAGS})
list(APPEND LINK_LIBS ${LIBGCRYPT_LDFLAGS})