Skip to content

Commit

Permalink
Merge pull request #6269 from offroad-bis/main
Browse files Browse the repository at this point in the history
Issue #6239. If pg_config is found, cmake searches paths specified by pg_config.
  • Loading branch information
jmckenna committed Mar 21, 2021
2 parents 7e9b694 + f6bbb0d commit 0949d8e
Showing 1 changed file with 36 additions and 27 deletions.
63 changes: 36 additions & 27 deletions cmake/FindPostgreSQL.cmake
Expand Up @@ -17,37 +17,46 @@ find_program(PG_CONFIG NAMES pg_config
if (PG_CONFIG)
exec_program( ${PG_CONFIG} ARGS "--includedir" OUTPUT_VARIABLE PG_INC_PATH )
exec_program( ${PG_CONFIG} ARGS "--libdir" OUTPUT_VARIABLE PG_LIB_PATH )
find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h
PATHS
${PG_INC_PATH}
NO_DEFAULT_PATH
)
find_library(POSTGRESQL_LIBRARY NAMES pq libpq
PATHS
${PG_LIB_PATH}
NO_DEFAULT_PATH
)
else()
message(WARNING "pg_config not found, will try some defaults")
find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h
${PG_INC_PATH}
/usr/include/server
/usr/include/postgresql
/usr/include/pgsql/server
/usr/local/include/pgsql/server
/usr/include/postgresql/server
/usr/include/postgresql/*/server
/usr/local/include/postgresql/server
/usr/local/include/postgresql/*/server
$ENV{ProgramFiles}/PostgreSQL/*/include/server
$ENV{SystemDrive}/PostgreSQL/*/include/server
)

find_library(POSTGRESQL_LIBRARY NAMES pq libpq
PATHS
${PG_LIB_PATH}
/usr/lib
/usr/local/lib
/usr/lib/postgresql
/usr/lib64
/usr/local/lib64
/usr/lib64/postgresql
$ENV{ProgramFiles}/PostgreSQL/*/lib/ms
$ENV{SystemDrive}/PostgreSQL/*/lib/ms
)
endif()

find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h
${PG_INC_PATH}
/usr/include/server
/usr/include/postgresql
/usr/include/pgsql/server
/usr/local/include/pgsql/server
/usr/include/postgresql/server
/usr/include/postgresql/*/server
/usr/local/include/postgresql/server
/usr/local/include/postgresql/*/server
$ENV{ProgramFiles}/PostgreSQL/*/include/server
$ENV{SystemDrive}/PostgreSQL/*/include/server
)

find_library(POSTGRESQL_LIBRARY NAMES pq libpq
PATHS
${PG_LIB_PATH}
/usr/lib
/usr/local/lib
/usr/lib/postgresql
/usr/lib64
/usr/local/lib64
/usr/lib64/postgresql
$ENV{ProgramFiles}/PostgreSQL/*/lib/ms
$ENV{SystemDrive}/PostgreSQL/*/lib/ms
)

set(POSTGRESQL_INCLUDE_DIRS ${POSTGRESQL_INCLUDE_DIR})
set(POSTGRESQL_LIBRARIES ${POSTGRESQL_LIBRARY})
include(FindPackageHandleStandardArgs)
Expand Down

0 comments on commit 0949d8e

Please sign in to comment.