- PQ_SYM=PQregisterEventProc
- PHP_CHECK_LIBRARY(pq, $PQ_SYM, [
- PHP_ADD_LIBRARY_WITH_PATH(pq, $PQ_DIR/$PHP_LIBDIR, PQ_SHARED_LIBADD)
- PHP_SUBST(PQ_SHARED_LIBADD)
- ],[
- AC_MSG_ERROR(could not find $PQ_SYM in -lpq)
- ],[
- -L$PQ_DIR/$PHP_LIBDIR
+
+ dnl
+ dnl PQ_CHECK_FUNC(sym, fail-hard)
+ dnl
+ AC_DEFUN([PQ_CHECK_FUNC], [
+ FAIL_HARD=$2
+
+ PHP_CHECK_LIBRARY(pq, $1, [
+ AC_DEFINE([HAVE_]translit($1,a-z,A-Z), 1, Have $1)
+ ], [
+ if test -n "$FAIL_HARD"; then
+ if "$FAIL_HARD"; then
+ AC_MSG_ERROR(could not find $PQ_SYM in -lpq)
+ fi
+ fi
+ ], [
+ -L$PQ_DIR/$PHP_LIBDIR
+ ])
+ ])
+
+ PQ_CHECK_FUNC(PQregisterEventProc, true)
+ PHP_ADD_LIBRARY_WITH_PATH(pq, $PQ_DIR/$PHP_LIBDIR, PQ_SHARED_LIBADD)
+ PHP_SUBST(PQ_SHARED_LIBADD)
+
+ PQ_CHECK_FUNC(PQlibVersion)
+ PQ_CHECK_FUNC(PQconninfo)
+ PQ_CHECK_FUNC(PQsetSingleRowMode)
+
+ dnl
+ dnl PQ_HAVE_PHP_EXT(name[, code-if-yes[, code-if-not]])
+ dnl
+ AC_DEFUN([PQ_HAVE_PHP_EXT], [
+ extname=$1
+ haveext=$[PHP_]translit($1,a-z_-,A-Z__)
+ AC_MSG_CHECKING([for ext/$extname support])
+ if test -x "$PHP_EXECUTABLE"; then
+ grepext=`$PHP_EXECUTABLE -m | $EGREP ^$extname\$`
+ if test "$grepext" = "$extname"; then
+ [PHP_PQ_HAVE_EXT_]translit($1,a-z_-,A-Z__)=1
+ AC_MSG_RESULT([yes])
+ $2
+ else
+ [PHP_PQ_HAVE_EXT_]translit($1,a-z_-,A-Z__)=
+ AC_MSG_RESULT([no])
+ $3
+ fi
+ elif test "$haveext" != "no" && test "x$haveext" != "x"; then
+ [PHP_PQ_HAVE_EXT_]translit($1,a-z_-,A-Z__)=1
+ AC_MSG_RESULT([yes])
+ $2
+ else
+ [PHP_PQ_HAVE_EXT_]translit($1,a-z_-,A-Z__)=
+ AC_MSG_RESULT([no])
+ $3
+ fi