php-src/ext/pdo_dblib/config.m4
Nikita Popov 47fe412518 Allow building dblib with machine-dependent libdir
Use the same approach as for GMP: If no explicit directory is
given, assume it must be on the default include path and libdir.
Otherwise use the provided path. It does not look like libsybdb
has support for pkg-config.
2020-12-14 10:25:03 +01:00

56 lines
2.1 KiB
Plaintext

PHP_ARG_WITH([pdo-dblib],
[for PDO_DBLIB support via FreeTDS],
[AS_HELP_STRING([[--with-pdo-dblib[=DIR]]],
[PDO: DBLIB-DB support. DIR is the FreeTDS home directory])])
if test "$PHP_PDO_DBLIB" != "no"; then
if test "$PHP_PDO" = "no" && test "$ext_shared" = "no"; then
AC_MSG_ERROR([PDO is not enabled! Add --enable-pdo to your configure line.])
fi
if test "$PHP_PDO_DBLIB" = "yes"; then
dnl FreeTDS must be on the default system include/library path.
dnl Only perform a sanity check that this is really the case.
PHP_CHECK_LIBRARY(sybdb, dbsqlexec,
[],[
AC_MSG_ERROR([Cannot find FreeTDS in known installation directories])
])
PHP_ADD_LIBRARY(sybdb,,GMP_SHARED_LIBADD)
elif test "$PHP_PDO_DBLIB" != "no"; then
if test -f $PHP_PDO_DBLIB/include/sybdb.h; then
PDO_FREETDS_INSTALLATION_DIR=$PHP_PDO_DBLIB
PDO_FREETDS_INCLUDE_DIR=$PHP_PDO_DBLIB/include
elif test -f $PHP_PDO_DBLIB/include/freetds/sybdb.h; then
PDO_FREETDS_INSTALLATION_DIR=$PHP_PDO_DBLIB
PDO_FREETDS_INCLUDE_DIR=$PHP_PDO_DBLIB/include/freetds
else
AC_MSG_ERROR(Directory $PHP_PDO_DBLIB is not a FreeTDS installation directory)
fi
if test "x$PHP_LIBDIR" = "x" ; then
PHP_LIBDIR=lib
fi
if test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.a" && test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.so"; then
AC_MSG_ERROR(Could not find $PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.[a|so])
fi
PHP_ADD_INCLUDE($PDO_FREETDS_INCLUDE_DIR)
PHP_ADD_LIBRARY_WITH_PATH(sybdb, $PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR, PDO_DBLIB_SHARED_LIBADD)
fi
PHP_CHECK_PDO_INCLUDES
PDO_DBLIB_DEFS="-DPDO_DBLIB_FLAVOUR=\\\"freetds\\\""
PHP_NEW_EXTENSION(pdo_dblib, pdo_dblib.c dblib_driver.c dblib_stmt.c, $ext_shared,,-I$pdo_cv_inc_path $PDO_DBLIB_DEFS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
AC_CHECK_LIB(dnet_stub, dnet_addr, [
PHP_ADD_LIBRARY_WITH_PATH(dnet_stub,,PDO_DBLIB_SHARED_LIBADD)
])
AC_DEFINE(HAVE_PDO_DBLIB,1,[ ])
PHP_SUBST(PDO_DBLIB_SHARED_LIBADD)
PHP_ADD_EXTENSION_DEP(pdo_dblib, pdo)
fi