mirror of
https://github.com/php/php-src.git
synced 2024-11-28 12:26:37 +08:00
move oci8 from oracle to it's own ext-directory - configure stuff needs more work - but it configures and compiles
This commit is contained in:
parent
f04567b09e
commit
dc8d4f89c7
6
ext/oci8/Makefile.am
Normal file
6
ext/oci8/Makefile.am
Normal file
@ -0,0 +1,6 @@
|
||||
# $Id$
|
||||
|
||||
INCLUDES=@INCLUDES@ -I@top_srcdir@ -I@top_srcdir@/libzend
|
||||
noinst_LIBRARIES=libphpext_oci8.a
|
||||
libphpext_oci8_a_SOURCES=oci8.c
|
||||
|
4
ext/oci8/config.h.stub
Normal file
4
ext/oci8/config.h.stub
Normal file
@ -0,0 +1,4 @@
|
||||
/* define if you want to use the oci8 extension */
|
||||
/* #undef HAVE_LIBOCI8 */
|
||||
#define HAVE_OCI8 0
|
||||
|
163
ext/oci8/config.m4
Normal file
163
ext/oci8/config.m4
Normal file
@ -0,0 +1,163 @@
|
||||
dnl $Id$
|
||||
|
||||
AC_DEFUN(AC_ORACLE_VERSION,[
|
||||
AC_MSG_CHECKING([Oracle version])
|
||||
if test -f "$ORACLEINST_TOP/orainst/unix.rgs"
|
||||
then
|
||||
ORACLE_VERSION=`grep '"ocommon"' $ORACLEINST_TOP/orainst/unix.rgs | sed 's/[ ][ ]*/:/g' | cut -d: -f 6 | cut -c 2-4`
|
||||
test -z "$ORACLE_VERSION" && ORACLE_VERSION=7.3
|
||||
else
|
||||
ORACLE_VERSION=8.0
|
||||
fi
|
||||
AC_MSG_RESULT($ORACLE_VERSION)
|
||||
])
|
||||
|
||||
AC_MSG_CHECKING(for Oracle-OCI8 support)
|
||||
AC_ARG_WITH(oci8,
|
||||
[ --with-oci8[=DIR] Include Oracle database support. DIR is Oracle's
|
||||
home directory, defaults to \$ORACLE_HOME.],
|
||||
[
|
||||
case "$withval" in
|
||||
yes)
|
||||
ORACLEINST_TOP=$ORACLE_HOME
|
||||
AC_MSG_RESULT(yes)
|
||||
PHP_EXTENSION(oci8)
|
||||
;;
|
||||
no)
|
||||
ORACLEINST_TOP=
|
||||
AC_MSG_RESULT(no)
|
||||
;;
|
||||
*)
|
||||
ORACLEINST_TOP=$withval
|
||||
AC_MSG_RESULT(yes)
|
||||
PHP_EXTENSION(oci8)
|
||||
;;
|
||||
esac
|
||||
|
||||
if test "$ORACLEINST_TOP" != ""
|
||||
then
|
||||
|
||||
# Oracle include files
|
||||
|
||||
if test -f "$ORACLEINST_TOP/rdbms/public/ocidfn.h"
|
||||
then
|
||||
# V8.0.5
|
||||
ORACLE_INCLUDE="$ORACLE_INCLUDE -I$ORACLEINST_TOP/rdbms/public"
|
||||
elif test -f "$ORACLEINST_TOP/rdbms/demo/ocidfn.h"
|
||||
then
|
||||
# V7.[0123]
|
||||
ORACLE_INCLUDE=-I$ORACLEINST_TOP/rdbms/demo
|
||||
fi
|
||||
|
||||
if test -d "$ORACLEINST_TOP/network/public"
|
||||
then
|
||||
# V8
|
||||
ORACLE_INCLUDE="$ORACLE_INCLUDE -I$ORACLEINST_TOP/network/public"
|
||||
fi
|
||||
|
||||
if test -d "$ORACLEINST_TOP/plsql/public"
|
||||
then
|
||||
# V8
|
||||
ORACLE_INCLUDE="$ORACLE_INCLUDE -I$ORACLEINST_TOP/plsql/public"
|
||||
fi
|
||||
|
||||
# Need to know the version, otherwhise we will mixup nlsrtl
|
||||
AC_ORACLE_VERSION($ORACLEINST_TOP)
|
||||
|
||||
# Oracle libs - nightmare :-)
|
||||
|
||||
ORACLE_LIBDIR=lib
|
||||
ORACLE_LFLAGS="-L$ORACLEINST_TOP/$ORACLE_LIBDIR ${ld_runpath_switch}$ORACLEINST_TOP/$ORACLE_LIBDIR"
|
||||
if test -f "$ORACLEINST_TOP/rdbms/lib/sysliblist"
|
||||
then
|
||||
ORA_SYSLIB="`cat $ORACLEINST_TOP/rdbms/lib/sysliblist`"
|
||||
else
|
||||
ORA_SYSLIB="-lm"
|
||||
fi
|
||||
|
||||
# Oracle Static libs
|
||||
case $ORACLE_VERSION in
|
||||
7.0|7.1)
|
||||
ORACLE_STLIBS="-locic $ORACLEINST_TOP/$ORACLE_LIBDIR/osntab.o \
|
||||
-lsqlnet -lora -lsqlnet -lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6 \
|
||||
-lcore $ORA_SYSLIB -lcore $ORA_SYSLIB"
|
||||
if test "`uname -s 2>/dev/null`" = "AIX"; then
|
||||
ORACLE_STLIBS="$ORACLE_STLIBS -bI:$ORACLE_HOME/lib/mili.exp"
|
||||
fi
|
||||
;;
|
||||
7.2)
|
||||
ORACLE_STLIBS="-locic $ORACLEINST_TOP/$ORACLE_LIBDIR/osntab.o \
|
||||
-lsqlnet -lora -lsqlnet -lora -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 \
|
||||
-lcore3 $ORA_SYSLIB -lcore3 $ORA_SYSLIB"
|
||||
;;
|
||||
7.3)
|
||||
ORACLE_STLIBS="-lclient -lsqlnet -lncr -lsqlnet -lclient -lcommon \
|
||||
-lgeneric -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric \
|
||||
-lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3 -lnlsrtl3 \
|
||||
$ORA_SYSLIB -lcore3 $ORA_SYSLIB"
|
||||
;;
|
||||
8.0)
|
||||
ORACLE_STLIBS="-lclient -lsqlnet -lncr -lsqlnet -lclient -lcommon \
|
||||
-lgeneric -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric \
|
||||
-lepc -lnlsrtl3 -lc3v6 -lcore4 -lnlsrtl3 -lcore4 -lnlsrtl3 \
|
||||
$ORA_SYSLIB -lcore3 $ORA_SYSLIB"
|
||||
;;
|
||||
*)
|
||||
ORACLE_STLIBS=
|
||||
;;
|
||||
esac
|
||||
|
||||
# Oracle shared libs
|
||||
case $ORACLE_VERSION in
|
||||
7.0)
|
||||
# shared libs not supported
|
||||
ORACLE_SHLIBS="$ORACLE_STLIBS"
|
||||
;;
|
||||
7.1)
|
||||
if test -f $ORACLEINST_TOP/$ORACLE_LIBDIR/liboracle.s?
|
||||
then
|
||||
ORACLE_SHLIBS="-loracle $ORA_SYSLIB"
|
||||
else
|
||||
ORACLE_SHLIBS="$ORACLE_STLIBS"
|
||||
fi
|
||||
;;
|
||||
7.2|7.3)
|
||||
if test -f $ORACLEINST_TOP/$ORACLE_LIBDIR/libclntsh.s?
|
||||
then
|
||||
ORACLE_SHLIBS="-lclntsh $ORA_SYSLIB"
|
||||
else
|
||||
ORACLE_SHLIBS="$ORACLE_STLIBS"
|
||||
fi
|
||||
;;
|
||||
8.0)
|
||||
if test -f $ORACLEINST_TOP/$ORACLE_LIBDIR/libclntsh.s? -o \
|
||||
-f $ORACLEINST_TOP/$ORACLE_LIBDIR/libclntsh.a # AIX
|
||||
then
|
||||
if test "$CC" = "gcc" -a "`uname -sv`" = "AIX 4"; then
|
||||
# for Oracle 8 on AIX 4
|
||||
ORA_SYSLIB="$ORA_SYSLIB -nostdlib /lib/crt0_r.o /usr/lib/libpthreads.a /usr/lib/libc_r.a -lgcc"
|
||||
fi
|
||||
ORACLE_SHLIBS="-lclntsh -lpsa -lcore4 -lnlsrtl3 -lclntsh $ORA_SYSLIB"
|
||||
else
|
||||
ORACLE_SHLIBS="$ORACLE_STLIBS"
|
||||
fi
|
||||
AC_DEFINE(HAVE_OCI8)
|
||||
;;
|
||||
*)
|
||||
ORACLE_SHLIBS=
|
||||
;;
|
||||
esac
|
||||
|
||||
# only using shared libs right now
|
||||
ORACLE_LIBS=$ORACLE_SHLIBS
|
||||
|
||||
AC_DEFINE(HAVE_ORACLE)
|
||||
|
||||
fi
|
||||
|
||||
],[AC_MSG_RESULT(no)])
|
||||
#EXTRA_LIBS="$EXTRA_LIBS $ORACLE_SHLIBS $ORACLE_STLIBS $ORACLE_LIBS $ORACLE_LFLAGS"
|
||||
EXTRA_LIBS="$EXTRA_LIBS $ORACLE_LIBS $ORACLE_LFLAGS"
|
||||
INCLUDES="$INCLUDES $ORACLE_INCLUDE"
|
||||
AC_SUBST(ORACLE_HOME)
|
||||
AC_SUBST(ORACLE_VERSION)
|
@ -175,6 +175,7 @@ typedef struct {
|
||||
|
||||
extern php3_module_entry oci8_module_entry;
|
||||
#define oci8_module_ptr &oci8_module_entry
|
||||
#define phpext_oci8_ptr &oci8_module_entry
|
||||
|
||||
#define OCI8_MAX_NAME_LEN 64
|
||||
#define OCI8_MAX_DATA_SIZE 2097152 /* two megs */
|
6
ext/oci8/setup.stub
Normal file
6
ext/oci8/setup.stub
Normal file
@ -0,0 +1,6 @@
|
||||
# $Source$
|
||||
# $Id$
|
||||
|
||||
define_option with-oci8 'oci8 support?' yesnodir no \
|
||||
' Whether to build the oci8 extension.'
|
||||
|
@ -2,4 +2,4 @@
|
||||
|
||||
INCLUDES=@INCLUDES@ -I@top_srcdir@ -I@top_srcdir@/libzend
|
||||
noinst_LIBRARIES=libphpext_oracle.a
|
||||
libphpext_oracle_a_SOURCES=oracle.c oci8.c
|
||||
libphpext_oracle_a_SOURCES=oracle.c
|
||||
|
@ -1,6 +1,2 @@
|
||||
/* Define if you have the Oracle database client libraries */
|
||||
#define HAVE_ORACLE 0
|
||||
|
||||
/* Define if you have the Oracle version 8 database client libraries */
|
||||
#define HAVE_OCI8 0
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user