Annotation of embedaddon/php/ext/pdo_odbc/config.m4, revision 1.1

1.1     ! misho       1: dnl $Id: config.m4 311041 2011-05-15 05:49:34Z rasmus $
        !             2: dnl config.m4 for extension pdo_odbc
        !             3: dnl vim:et:sw=2:ts=2:
        !             4: 
        !             5: define([PDO_ODBC_HELP_TEXT],[[
        !             6:                             include and lib dirs are looked for under 'dir'.
        !             7:                             
        !             8:                             'flavour' can be one of:  ibm-db2, iODBC, unixODBC, generic
        !             9:                             If ',dir' part is omitted, default for the flavour 
        !            10:                             you have selected will used. e.g.:
        !            11:                             
        !            12:                               --with-pdo-odbc=unixODBC
        !            13:                               
        !            14:                             will check for unixODBC under /usr/local. You may attempt 
        !            15:                             to use an otherwise unsupported driver using the \"generic\" 
        !            16:                             flavour.  The syntax for generic ODBC support is:
        !            17:                             
        !            18:                               --with-pdo-odbc=generic,dir,libname,ldflags,cflags
        !            19: 
        !            20:                             When build as shared the extension filename is always pdo_odbc.so]])
        !            21: 
        !            22: PHP_ARG_WITH(pdo-odbc, for ODBC v3 support for PDO,
        !            23: [  --with-pdo-odbc=flavour,dir
        !            24:                             PDO: Support for 'flavour' ODBC driver.]PDO_ODBC_HELP_TEXT)
        !            25: 
        !            26: 
        !            27: AC_DEFUN([PDO_ODBC_CHECK_HEADER],[
        !            28:   AC_MSG_CHECKING([for $1 in $PDO_ODBC_INCDIR])
        !            29:   if test -f "$PDO_ODBC_INCDIR/$1"; then
        !            30:     php_pdo_have_header=yes
        !            31:     PHP_DEF_HAVE(translit($1,.,_))
        !            32:     AC_MSG_RESULT(yes)
        !            33:   else
        !            34:     AC_MSG_RESULT(no)
        !            35:   fi
        !            36: ])
        !            37:                                   
        !            38: if test "$PHP_PDO_ODBC" != "no"; then
        !            39: 
        !            40:   if test "$PHP_PDO" = "no" && test "$ext_shared" = "no"; then
        !            41:     AC_MSG_ERROR([PDO is not enabled! Add --enable-pdo to your configure line.])
        !            42:   fi
        !            43: 
        !            44:   ifdef([PHP_CHECK_PDO_INCLUDES],
        !            45:   [
        !            46:     PHP_CHECK_PDO_INCLUDES
        !            47:   ],[
        !            48:     AC_MSG_CHECKING([for PDO includes])
        !            49:     if test -f $abs_srcdir/include/php/ext/pdo/php_pdo_driver.h; then
        !            50:       pdo_inc_path=$abs_srcdir/ext
        !            51:     elif test -f $abs_srcdir/ext/pdo/php_pdo_driver.h; then
        !            52:       pdo_inc_path=$abs_srcdir/ext
        !            53:     elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
        !            54:       pdo_inc_path=$prefix/include/php/ext
        !            55:     else
        !            56:       AC_MSG_ERROR([Cannot find php_pdo_driver.h.])
        !            57:     fi
        !            58:     AC_MSG_RESULT($pdo_inc_path)
        !            59:   ])
        !            60: 
        !            61:   AC_MSG_CHECKING([for selected PDO ODBC flavour])
        !            62: 
        !            63:   pdo_odbc_flavour="`echo $PHP_PDO_ODBC | cut -d, -f1`"
        !            64:   pdo_odbc_dir="`echo $PHP_PDO_ODBC | cut -d, -f2`"
        !            65: 
        !            66:   if test "$pdo_odbc_dir" = "$PHP_PDO_ODBC" ; then
        !            67:     pdo_odbc_dir=
        !            68:   fi
        !            69: 
        !            70:   case $pdo_odbc_flavour in
        !            71:     ibm-db2)
        !            72:         pdo_odbc_def_libdir=/home/db2inst1/sqllib/lib
        !            73:         pdo_odbc_def_incdir=/home/db2inst1/sqllib/include
        !            74:         pdo_odbc_def_lib=db2
        !            75:         ;;
        !            76: 
        !            77:     iODBC|iodbc)
        !            78:         pdo_odbc_def_libdir=/usr/local/$PHP_LIBDIR
        !            79:         pdo_odbc_def_incdir=/usr/local/include
        !            80:         pdo_odbc_def_lib=iodbc
        !            81:         ;;
        !            82: 
        !            83:     unixODBC|unixodbc)
        !            84:         pdo_odbc_def_libdir=/usr/local/$PHP_LIBDIR
        !            85:         pdo_odbc_def_incdir=/usr/local/include
        !            86:         pdo_odbc_def_lib=odbc
        !            87:         ;;
        !            88: 
        !            89:     ODBCRouter|odbcrouter)
        !            90:         pdo_odbc_def_libdir=/usr/$PHP_LIBDIR
        !            91:         pdo_odbc_def_incdir=/usr/include
        !            92:         pdo_odbc_def_lib=odbcsdk
        !            93:         ;;
        !            94: 
        !            95:     generic)
        !            96:         pdo_odbc_def_lib="`echo $PHP_PDO_ODBC | cut -d, -f3`"
        !            97:         pdo_odbc_def_ldflags="`echo $PHP_PDO_ODBC | cut -d, -f4`"
        !            98:         pdo_odbc_def_cflags="`echo $PHP_PDO_ODBC | cut -d, -f5`"
        !            99:         pdo_odbc_flavour="generic-$pdo_odbc_def_lib"
        !           100:         ;;
        !           101: 
        !           102:       *)
        !           103:         AC_MSG_ERROR([Unknown ODBC flavour $pdo_odbc_flavour]PDO_ODBC_HELP_TEXT)
        !           104:         ;;
        !           105:   esac
        !           106: 
        !           107:   if test -n "$pdo_odbc_dir"; then
        !           108:     PDO_ODBC_INCDIR="$pdo_odbc_dir/include"
        !           109:     PDO_ODBC_LIBDIR="$pdo_odbc_dir/$PHP_LIBDIR"
        !           110:   else
        !           111:     PDO_ODBC_INCDIR="$pdo_odbc_def_incdir"
        !           112:     PDO_ODBC_LIBDIR="$pdo_odbc_def_libdir"
        !           113:   fi
        !           114:   
        !           115:   AC_MSG_RESULT([$pdo_odbc_flavour
        !           116:           libs       $PDO_ODBC_LIBDIR,
        !           117:           headers    $PDO_ODBC_INCDIR])
        !           118: 
        !           119:   if test ! -d "$PDO_ODBC_LIBDIR" ; then
        !           120:     AC_MSG_WARN([library dir $PDO_ODBC_LIBDIR does not exist])
        !           121:   fi
        !           122: 
        !           123:   PDO_ODBC_CHECK_HEADER(odbc.h)
        !           124:   PDO_ODBC_CHECK_HEADER(odbcsdk.h)
        !           125:   PDO_ODBC_CHECK_HEADER(iodbc.h)
        !           126:   PDO_ODBC_CHECK_HEADER(sqlunix.h)
        !           127:   PDO_ODBC_CHECK_HEADER(sqltypes.h)
        !           128:   PDO_ODBC_CHECK_HEADER(sqlucode.h)
        !           129:   PDO_ODBC_CHECK_HEADER(sql.h)
        !           130:   PDO_ODBC_CHECK_HEADER(isql.h)
        !           131:   PDO_ODBC_CHECK_HEADER(sqlext.h)
        !           132:   PDO_ODBC_CHECK_HEADER(isqlext.h)
        !           133:   PDO_ODBC_CHECK_HEADER(udbcext.h)
        !           134:   PDO_ODBC_CHECK_HEADER(sqlcli1.h)
        !           135:   PDO_ODBC_CHECK_HEADER(LibraryManager.h)
        !           136:   PDO_ODBC_CHECK_HEADER(cli0core.h)
        !           137:   PDO_ODBC_CHECK_HEADER(cli0ext.h)
        !           138:   PDO_ODBC_CHECK_HEADER(cli0cli.h)
        !           139:   PDO_ODBC_CHECK_HEADER(cli0defs.h)
        !           140:   PDO_ODBC_CHECK_HEADER(cli0env.h)
        !           141: 
        !           142:   if test "$php_pdo_have_header" != "yes"; then
        !           143:     AC_MSG_ERROR([Cannot find header file(s) for pdo_odbc])
        !           144:   fi
        !           145: 
        !           146:   PDO_ODBC_INCLUDE="$pdo_odbc_def_cflags -I$PDO_ODBC_INCDIR -DPDO_ODBC_TYPE=\\\"$pdo_odbc_flavour\\\""
        !           147:   PDO_ODBC_LDFLAGS="$pdo_odbc_def_ldflags -L$PDO_ODBC_LIBDIR -l$pdo_odbc_def_lib"
        !           148: 
        !           149:   PHP_EVAL_LIBLINE([$PDO_ODBC_LDFLAGS], [PDO_ODBC_SHARED_LIBADD])
        !           150: 
        !           151:   dnl Check first for an ODBC 1.0 function to assert that the libraries work
        !           152:   PHP_CHECK_LIBRARY($pdo_odbc_def_lib, SQLBindCol,
        !           153:   [
        !           154:     dnl And now check for an ODBC 3.0 function to assert that they're
        !           155:     dnl *good* libraries.
        !           156:     PHP_CHECK_LIBRARY($pdo_odbc_def_lib, SQLAllocHandle,
        !           157:     [], [
        !           158:       AC_MSG_ERROR([
        !           159: Your ODBC library does not appear to be ODBC 3 compatible.
        !           160: You should consider using iODBC or unixODBC instead, and loading your
        !           161: libraries as a driver in that environment; it will emulate the
        !           162: functions required for PDO support.
        !           163: ])], $PDO_ODBC_LDFLAGS)
        !           164:   ],[
        !           165:     AC_MSG_ERROR([Your ODBC library does not exist or there was an error. Check config.log for more information])
        !           166:   ], $PDO_ODBC_LDFLAGS)
        !           167: 
        !           168:   PHP_NEW_EXTENSION(pdo_odbc, pdo_odbc.c odbc_driver.c odbc_stmt.c, $ext_shared,,-I$pdo_inc_path $PDO_ODBC_INCLUDE)
        !           169:   PHP_SUBST(PDO_ODBC_SHARED_LIBADD)
        !           170:   ifdef([PHP_ADD_EXTENSION_DEP],
        !           171:   [
        !           172:     PHP_ADD_EXTENSION_DEP(pdo_odbc, pdo)
        !           173:   ])
        !           174: fi

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>