| From 4900c27cc284ba2f671ae92e6ffb4ab391f9507a Mon Sep 17 00:00:00 2001 |
| From: Robert Middleton <rm5248@users.noreply.github.com> |
| Date: Mon, 6 Feb 2023 20:39:02 -0500 |
| Subject: [PATCH] Make ODBC and SMTP opt-in (#191) |
| |
| See #189 |
| |
| Upstream: afeaab6d0f0107c77dfadcbe3708f170c48d5ed9 |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
| --- |
| src/main/include/CMakeLists.txt | 40 ++++++++++++++++++++++++--------- |
| 1 file changed, 30 insertions(+), 10 deletions(-) |
| |
| diff --git a/src/main/include/CMakeLists.txt b/src/main/include/CMakeLists.txt |
| index e31443fb..d6835293 100644 |
| --- a/src/main/include/CMakeLists.txt |
| +++ b/src/main/include/CMakeLists.txt |
| @@ -85,22 +85,42 @@ include(CheckIncludeFiles) |
| include(CheckIncludeFileCXX) |
| include(CheckLibraryExists) |
| |
| -if(WIN32) |
| - CHECK_INCLUDE_FILES(sqlext.h HAS_ODBC) |
| +option(LOG4CXX_ENABLE_ODBC "Support logging via ODBC" OFF) |
| +if(LOG4CXX_ENABLE_ODBC) |
| + if(WIN32) |
| + CHECK_INCLUDE_FILES(sqlext.h HAS_ODBC) |
| + else() |
| + include(FindPkgConfig) |
| + |
| + pkg_check_modules( odbc odbc ) |
| + if(${odbc_FOUND}) |
| + set(HAS_ODBC 1) |
| + else() |
| + set(HAS_ODBC 0) |
| + endif(${odbc_FOUND}) |
| + endif(WIN32) |
| + |
| + if(NOT ${HAS_ODBC}) |
| + message(SEND_ERROR "ODBC not found but requested") |
| + endif() |
| else() |
| - include(FindPkgConfig) |
| - |
| - pkg_check_modules( odbc QUIET odbc ) |
| - if(${odbc_FOUND}) |
| - set(HAS_ODBC 1) |
| - endif(${odbc_FOUND}) |
| -endif(WIN32) |
| + set(HAS_ODBC 0) |
| +endif(LOG4CXX_ENABLE_ODBC) |
| + |
| +option(LOG4CXX_ENABLE_ESMTP "Support logging via libesmtp" OFF) |
| +if(LOG4CXX_ENABLE_ESMTP) |
| + CHECK_LIBRARY_EXISTS(esmtp smtp_create_session "" HAS_LIBESMTP) |
| + if(NOT HAS_LIBESMTP) |
| + message(SEND_ERROR "SMTP support with libesmtp not found but requested") |
| + endif() |
| +else() |
| + set(HAS_LIBESMTP 0) |
| +endif(LOG4CXX_ENABLE_ESMTP) |
| |
| CHECK_INCLUDE_FILE_CXX(locale HAS_STD_LOCALE) |
| CHECK_FUNCTION_EXISTS(mbsrtowcs HAS_MBSRTOWCS) |
| CHECK_FUNCTION_EXISTS(wcstombs HAS_WCSTOMBS) |
| CHECK_FUNCTION_EXISTS(fwide HAS_FWIDE) |
| -CHECK_LIBRARY_EXISTS(esmtp smtp_create_session "" HAS_LIBESMTP) |
| CHECK_FUNCTION_EXISTS(syslog HAS_SYSLOG) |
| if(UNIX) |
| set(CMAKE_REQUIRED_LIBRARIES "pthread") |
| -- |
| 2.41.0 |
| |