summaryrefslogtreecommitdiff
path: root/Modules/FindPostgreSQL.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2019-07-02 07:32:14 -0400
committerBrad King <brad.king@kitware.com>2019-07-02 07:32:14 -0400
commitd21b890a4c3d6c6d9a7457906fe8b1629eed41b0 (patch)
tree1b0dcafc35b5b9d503e81dc1dc24d6f81648ce71 /Modules/FindPostgreSQL.cmake
parent753373579e3dd8cf19f0fc18f4d9bec43a2d82e8 (diff)
downloadcmake-d21b890a4c3d6c6d9a7457906fe8b1629eed41b0.tar.gz
FindPostgreSQL: Fix regression in computation of library directory
Since commit 368bcba28a (FindPostgreSQL: Find debug lib, imported configs, 2019-05-09, v3.15.0-rc1~93^2) the `PostgreSQL_LIBRARY` variable may contain a list and therefore should not be passed to the `get_filename_component` command directly. Instead spell out the logic to compute `PostgreSQL_LIBRARY_DIR` from one of the per-configuration variables. Fixes: #19444
Diffstat (limited to 'Modules/FindPostgreSQL.cmake')
-rw-r--r--Modules/FindPostgreSQL.cmake9
1 files changed, 8 insertions, 1 deletions
diff --git a/Modules/FindPostgreSQL.cmake b/Modules/FindPostgreSQL.cmake
index 433eae73e9..dfece229e0 100644
--- a/Modules/FindPostgreSQL.cmake
+++ b/Modules/FindPostgreSQL.cmake
@@ -172,14 +172,21 @@ endfunction()
# any PostgreSQL_LIBRARY that is already specified and skip the search.
if(PostgreSQL_LIBRARY)
set(PostgreSQL_LIBRARIES "${PostgreSQL_LIBRARY}")
+ get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY}" PATH)
else()
__postgresql_find_library(PostgreSQL_LIBRARY_RELEASE ${PostgreSQL_LIBRARY_TO_FIND})
__postgresql_find_library(PostgreSQL_LIBRARY_DEBUG ${PostgreSQL_LIBRARY_TO_FIND}d)
include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
select_library_configurations(PostgreSQL)
mark_as_advanced(PostgreSQL_LIBRARY_RELEASE PostgreSQL_LIBRARY_DEBUG)
+ if(PostgreSQL_LIBRARY_RELEASE)
+ get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY_RELEASE}" PATH)
+ elseif(PostgreSQL_LIBRARY_DEBUG)
+ get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY_DEBUG}" PATH)
+ else()
+ set(PostgreSQL_LIBRARY_DIR "")
+ endif()
endif()
-get_filename_component(PostgreSQL_LIBRARY_DIR ${PostgreSQL_LIBRARY} PATH)
if (PostgreSQL_INCLUDE_DIR)
# Some platforms include multiple pg_config.hs for multi-lib configurations