Ok, done, is this better?
In config.m4 I am doing 2 things.
First, I am using "uname" to get the platform being compiled on, then using
this info to set the appropriate define needed by RDM Server, i.e. LINUX,
SOLARIS, etc.
Secondly, because RDM Server library names changed when 64-bit support was
added, I added a test to figure out which libraries to link to.
In php_odbc.h I simply added birdstep to the list of db's for which
PHP_ODBC_HAVE_FETCH_HASH needs to be define.....
cvs diff: Diffing ext/odbc
Index: ext/odbc/config.m4
===================================================================
RCS file: /repository/php-src/ext/odbc/config.m4,v
retrieving revision 1.55.2.10
diff -u -r1.55.2.10 config.m4
--- ext/odbc/config.m4 18 Jan 2005 21:21:16 -0000 1.55.2.10
+++ ext/odbc/config.m4 5 Apr 2005 22:25:01 -0000
@@ -1,11 +1,11 @@
dnl
-dnl $Id: config.m4,v 1.55.2.10 2005/01/18 21:21:16 tony2001 Exp $
+dnl $Id: config.m4,v 1.55.2.8 2003/11/25 08:08:30 sniper Exp $
dnl
dnl
dnl Figure out which library file to link with for the Solid support.
dnl
-AC_DEFUN([AC_FIND_SOLID_LIBS],[
+AC_DEFUN(AC_FIND_SOLID_LIBS,[
AC_MSG_CHECKING([Solid library file])
ac_solid_uname_r=`uname -r 2>/dev/null`
ac_solid_uname_s=`uname -s 2>/dev/null`
@@ -71,7 +71,7 @@
dnl
dnl Figure out which library file to link with for the Empress support.
dnl
-AC_DEFUN([AC_FIND_EMPRESS_LIBS],[
+AC_DEFUN(AC_FIND_EMPRESS_LIBS,[
AC_MSG_CHECKING([Empress library file])
ODBC_LIBS=`echo $1/libempodbccl.so | cut -d' ' -f1`
if test ! -f $ODBC_LIBS; then
@@ -80,7 +80,7 @@
AC_MSG_RESULT(`echo $ODBC_LIBS | sed -e 's!.*/!!'`)
])
-AC_DEFUN([AC_FIND_EMPRESS_BCS_LIBS],[
+AC_DEFUN(AC_FIND_EMPRESS_BCS_LIBS,[
AC_MSG_CHECKING([Empress local access library file])
ODBCBCS_LIBS=`echo $1/libempodbcbcs.a | cut -d' ' -f1`
if test ! -f $ODBCBCS_LIBS; then
@@ -194,15 +194,6 @@
ODBC_INCDIR=$withval/include
ODBC_LIBDIR=$withval/lib
fi
-
- if ! test -f "$ODBC_INCDIR/sqlcli1.h"; then
- AC_MSG_ERROR([IBM DB2 header files not found])
- fi
-
- if ! test -f "$ODBC_LIBDIR/libdb2.so"; then
- AC_MSG_ERROR([IBM DB2 required libraries not found])
- fi
-
ODBC_INCLUDE=-I$ODBC_INCDIR
ODBC_LFLAGS=-L$ODBC_LIBDIR
ODBC_TYPE=db2
@@ -304,7 +295,21 @@
install directory, defaults to
/usr/local/birdstep.],
[
PHP_WITH_SHARED
-
+ ac_birdstep_uname_s=`uname -s 2>/dev/null`
+ ac_birdstep_uname_p=`uname -p 2>/dev/null`
+ case $ac_birdstep_uname_s in
+ AIX) AC_DEFINE(AIX,1,[ ]);;
+ HP-UX) AC_DEFINE(HPUX,1,[ ]);;
+ Linux) AC_DEFINE(LINUX,1,[ ]);;
+ QNX) AC_DEFINE(NEUTRINO,1,[ ]);;
+ SunOS)
+ if test "$ac_birdstep_uname_p" == "i386"; then
+ AC_DEFINE(ISOLARIS,1,[ ])
+ elif test "$ac_birdstep_uname_p" == "sparc"; then
+ AC_DEFINE(SOLARIS,1,[ ])
+ fi;;
+ UnixWare) AC_DEFINE(UNIXWARE,1,[ ]);;
+ esac
if test "$withval" != "no"; then
if test "$withval" = "yes"; then
ODBC_INCDIR=/usr/local/birdstep/include
@@ -316,9 +321,12 @@
ODBC_INCLUDE=-I$ODBC_INCDIR
ODBC_TYPE=birdstep
ODBC_LFLAGS=-L$ODBC_LIBDIR
-
ODBC_LIBS="-lCadm -lCdict -lCenc -lCrdm -lCrpc -lCrdbc -lCrm -lCuapi -lutil"
+ if test -e "$ODBC_LIBDIR/libCrdbc32.so" -o -e
"$ODBC_LIBDIR/libCrdbc32.sl"; then
+
ODBC_LIBS="-lCrdbc32 -lCadm32 -lCncp32 -lCrm32 -lCsql32 -lCdict32 -lCrdm32
-lCrpc32 -lutil"
+ elif test -e "$ODBC_LIBDIR/libCrdbc.so" -o -e
"$ODBC_LIBDIR/libCrdbc.sl"; then
+
ODBC_LIBS="-lCrdbc -lCadm -lCncp -lCrm -lCsql -lCdict -lCrdm -lCrpc -lutil"
+ fi
AC_DEFINE(HAVE_BIRDSTEP,1,[ ])
-
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
@@ -512,9 +520,11 @@
if test -n "$ODBC_TYPE"; then
if test "$ODBC_TYPE" != "dbmaker"; then
- ext_shared=$shared
- PHP_EVAL_LIBLINE([$ODBC_LFLAGS $ODBC_LIBS], ODBC_SHARED_LIBADD)
- AC_DEFINE(HAVE_SQLDATASOURCES,1,[ ])
+ ext_shared=$shared
+ PHP_EVAL_LIBLINE([$ODBC_LFLAGS $ODBC_LIBS], ODBC_SHARED_LIBADD)
+ if test "$ODBC_TYPE" != "birdstep"; then
+ AC_DEFINE(HAVE_SQLDATASOURCES,1,[ ])
+ fi
fi
AC_DEFINE(HAVE_UODBC,1,[ ])
Index: ext/odbc/php_odbc.h
===================================================================
RCS file: /repository/php-src/ext/odbc/php_odbc.h,v
retrieving revision 1.48.4.5
diff -u -r1.48.4.5 php_odbc.h
--- ext/odbc/php_odbc.h 14 Jul 2003 16:13:30 -0000 1.48.4.5
+++ ext/odbc/php_odbc.h 5 Apr 2005 22:25:01 -0000
@@ -33,7 +33,7 @@
extern zend_module_entry odbc_module_entry;
#define odbc_module_ptr &odbc_module_entry
-#if defined(HAVE_DBMAKER) || defined(PHP_WIN32) || defined(HAVE_IBMDB2) ||
defined(HAVE_UNIXODBC)
+#if defined(HAVE_DBMAKER) || defined(PHP_WIN32) || defined(HAVE_IBMDB2) ||
defined(HAVE_UNIXODBC) || defined(HAVE_BIRDSTEP)
# define PHP_ODBC_HAVE_FETCH_HASH 1
#endif
"Derick Rethans" <derick@php.net> wrote in message
news:Pine.LNX.4.62.0504052355120.4513@localhost...