From cd1510ed9b5ba4a79afef809efe3cfb4bcfdb8af Mon Sep 17 00:00:00 2001 From: John McNamara Date: Wed, 12 Feb 2025 19:44:01 +0000 Subject: [PATCH] cmake: fix pkgconfig and cmake interaction Issue #454 --- CMakeLists.txt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6fb67588..b859bc43 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,8 +207,10 @@ if(MSVC AND USE_STATIC_MSVC_RUNTIME) endforeach() endif() -# Configure pkg-config -find_package(PkgConfig) +if(NOT MSVC) + find_package(PkgConfig) +endif() + file(READ "include/xlsxwriter.h" ver) string(REGEX MATCH "LXW_VERSION \"([^\"]+)\"" _ ${ver}) @@ -228,7 +230,8 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) if(PKG_CONFIG_FOUND) pkg_check_modules(ZLIB zlib) list(APPEND LXW_PRIVATE_INCLUDE_DIRS ${ZLIB_INCLUDE_DIRS}) -else(NOT ZLIB_FOUND) +endif() +if(NOT ZLIB_FOUND) find_package(ZLIB "1.0" REQUIRED) list(APPEND LXW_PRIVATE_INCLUDE_DIRS ${ZLIB_INCLUDE_DIRS}) message("zlib version: " ${ZLIB_VERSION}) @@ -239,7 +242,8 @@ if(USE_SYSTEM_MINIZIP) if(PKG_CONFIG_FOUND) pkg_check_modules(MINIZIP minizip) list(APPEND LXW_PRIVATE_INCLUDE_DIRS ${MINIZIP_INCLUDE_DIRS}/..) - else(NOT MINIZIP_FOUND) + endif() + if(NOT MINIZIP_FOUND) find_package(MINIZIP "1.0" REQUIRED) list(APPEND LXW_PRIVATE_INCLUDE_DIRS ${MINIZIP_INCLUDE_DIRS}) endif() @@ -288,7 +292,7 @@ if(USE_OPENSSL_MD5) if(PKG_CONFIG_FOUND) pkg_check_modules(LIBCRYPTO libcrypto) include_directories(${LIBCRYPTO_INCLUDE_DIRS}) - else(NOT LIBCRYPTO_FOUND) + else() find_package(OpenSSL REQUIRED) include_directories(${OPENSSL_INCLUDE_DIR}) message(STATUS "OpenSSL version: ${OPENSSL_VERSION}")