X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-pq;a=blobdiff_plain;f=config9.m4;h=8064df9d3346562c99ff573a737de484978d5065;hp=3847c544fb89833058a775aecf5baf37498ceb4d;hb=d6c8226407001736e86b4e0328a224e2b6fd1aa3;hpb=1d6985aa62b36962f7780a51cc6fa1d941ad7999 diff --git a/config9.m4 b/config9.m4 index 3847c54..8064df9 100644 --- a/config9.m4 +++ b/config9.m4 @@ -2,54 +2,46 @@ PHP_ARG_WITH(pq, [whether to enable libpq (PostgreSQL) support], [ --with-pq[=DIR] Include libpq support]) if test "$PHP_PQ" != "no"; then + SEARCH_PATH="/usr/local /usr /opt" if test "$PHP_PQ" != "yes"; then SEARCH_PATH="$PHP_PQ $SEARCH_PATH" fi + + AC_MSG_CHECKING(for pg_config) for i in $SEARCH_PATH; do - dnl for Debian - AC_MSG_CHECKING(for $i/include/postgresql/libpq-events.h) - if test -f "$i/include/postgresql/libpq-events.h"; then - PQ_INCDIR=$i/include/postgresql - AC_MSG_RESULT(yep) - break - fi - AC_MSG_RESULT(nope) - - AC_MSG_CHECKING(for $i/include/libpq-events.h) - if test -f "$i/include/libpq-events.h"; then - PQ_INCDIR=$i/include - AC_MSG_RESULT(yep) + if test -x "$i/bin/pg_config"; then + PG_CONFIG="$i/bin/pg_config" break fi - AC_MSG_RESULT(nope) done - - if test -z "$PQ_INCDIR"; then - AC_MSG_ERROR(could not find include/libpq-events.h) + + if test -z "$PG_CONFIG"; then + AC_PATH_PROG(PG_CONFIG, pg_config, no) fi - - for i in $SEARCH_PATH; do - AC_MSG_CHECKING(for $i/$PHP_LIBDIR/libpq.$SHLIB_SUFFIX_NAME) - if test -f "$i/$PHP_LIBDIR/libpq.$SHLIB_SUFFIX_NAME"; then - PQ_LIBDIR=$i/$PHP_LIBDIR - AC_MSG_RESULT(yep) - break + + AC_MSG_RESULT($PG_CONFIG) + + if test "$PG_CONFIG" = "no"; then + AC_MSG_ERROR(could not find a usable pg_config in $SEARCH_PATH) + else + if test "$PHP_PQ" != "yes" -a "$PHP_PQ/bin/pg_config" != "$PG_CONFIG"; then + AC_MSG_WARN(Found pg_config is not in $PHP_PQ) fi - AC_MSG_RESULT(nope) + + AC_MSG_CHECKING(for PostgreSQL version) + PQ_VERSION=$($PG_CONFIG --version | $SED 's/PostgreSQL //') - dnl for Debian - AC_MSG_CHECKING(for $i/$PHP_LIBDIR/x86_64-linux-gnu/libpq.$SHLIB_SUFFIX_NAME) - if test -f "$i/$PHP_LIBDIR/x86_64-linux-gnu/libpq.$SHLIB_SUFFIX_NAME"; then - PQ_LIBDIR=$i/$PHP_LIBDIR/x86_64-linux-gnu - AC_MSG_RESULT(yep) - break + if test -z "$PQ_VERSION"; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(\`$PG_CONFIG --version\` did not provide any meaningful output, please reinstall postgresql/libpq) + else + AC_MSG_RESULT($PQ_VERSION) + AC_DEFINE_UNQUOTED(PHP_PQ_LIBVERSION, "$PQ_VERSION", [ ]) fi - AC_MSG_RESULT(nope) - done - - if test -z "$PQ_LIBDIR"; then - AC_MSG_ERROR(could not find libpq.$SHLIB_SUFFIX_NAME) + + PQ_INCDIR=$($PG_CONFIG --includedir) + PQ_LIBDIR=$($PG_CONFIG --libdir) fi PHP_ADD_INCLUDE($PQ_INCDIR)