diff options
author | Pierre Joye <pajoye@php.net> | 2008-08-01 15:06:56 +0000 |
---|---|---|
committer | Pierre Joye <pajoye@php.net> | 2008-08-01 15:06:56 +0000 |
commit | 5550ef750b8798ec8dd001d30e0e7c8b9378329c (patch) | |
tree | 0dda463fa5f9f38446cc748622f94205e04b2b1d /ext/oci8/config.w32 | |
parent | d93a86b4d263014b3c7d1509fb02fad0ba97b8d8 (diff) | |
download | php-git-5550ef750b8798ec8dd001d30e0e7c8b9378329c.tar.gz |
- support for Oracle 11g (either 8 or 11g can be built but not both
Diffstat (limited to 'ext/oci8/config.w32')
-rw-r--r-- | ext/oci8/config.w32 | 74 |
1 files changed, 67 insertions, 7 deletions
diff --git a/ext/oci8/config.w32 b/ext/oci8/config.w32 index ab53d2f594..fdd7fa5e48 100644 --- a/ext/oci8/config.w32 +++ b/ext/oci8/config.w32 @@ -1,22 +1,82 @@ // $Id$ // vim:ft=javascript +if (PHP_OCI8 != "no" && PHP_OCI8_11G != "no") { + if (!PHP_OCI8_SHARED && !PHP_OCI8_11G_SHARED) { + WARNING("oci8 and oci8-11g provide the same extension and cannot both be built statically"); + PHP_OCI8 = "no" + PHP_OCI8_11G = "no" + } +} + ARG_WITH("oci8", "OCI8 support", "no"); if (PHP_OCI8 != "no") { - if (CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_OCI8", PHP_PHP_BUILD + "\\include\\instantclient;" + PHP_OCI8) && - CHECK_LIB("oci.lib", "oci8", PHP_PHP_BUILD + "\\lib\\instantclient;" + PHP_OCI8) - - ) { + oci8_dirs = new Array( + PHP_OCI8 + ); + + oci8_lib_paths = ""; + oci8_inc_paths = ""; + + // find the Oracle install + for (i = 0; i < oci8_dirs.length; i++) { + oci8_lib_paths += oci8_dirs[i] + "\\lib;"; + oci8_lib_paths += oci8_dirs[i] + "\\lib\\msvc;"; + oci8_inc_paths += oci8_dirs[i] + "\\include;"; + } + + oci8_inc_paths += PHP_PHP_BUILD + "\\include\\instantclient;" + oci8_lib_paths += PHP_PHP_BUILD + "\\lib\\instantclient;"; + + if (CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_OCI8", oci8_inc_paths) && + CHECK_LIB("oci.lib", "oci8", oci8_lib_paths)) + { EXTENSION('oci8', 'oci8.c oci8_lob.c oci8_statement.c oci8_collection.c oci8_interface.c'); - + AC_DEFINE('HAVE_OCI8', 1); AC_DEFINE('HAVE_OCI_INSTANT_CLIENT', 1); AC_DEFINE('HAVE_OCI_LOB_READ2', 1); - + } else { - WARNING("oci8 not enabled; Oracle Database libraries or Oracle 10g Instant Client not found"); + WARNING("oci8 not enabled: Oracle Database libraries or Oracle 10g Instant Client not found"); + PHP_OCI8 = "no" } } +ARG_WITH("oci8-11g", "OCI8 support using Oracle 11g Instant Client", "no"); + +if (PHP_OCI8_11G != "no") { + + oci8_11g_dirs = new Array( + PHP_OCI8_11G + ); + + oci8_11g_lib_paths = ""; + oci8_11g_inc_paths = ""; + + // find the Oracle install + for (i = 0; i < oci8_11g_dirs.length; i++) { + oci8_11g_lib_paths += oci8_11g_dirs[i] + "\\lib;"; + oci8_11g_lib_paths += oci8_11g_dirs[i] + "\\lib\\msvc;"; + oci8_11g_inc_paths += oci8_11g_dirs[i] + "\\include;"; + } + + oci8_11g_inc_paths += PHP_PHP_BUILD + "\\include\\instantclient_11;" + oci8_11g_lib_paths += PHP_PHP_BUILD + "\\lib\\instantclient_11;"; + + if (CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_OCI8_11G", oci8_11g_inc_paths) && + CHECK_LIB("oci.lib", "oci8_11g", oci8_11g_lib_paths)) + { + EXTENSION('oci8_11g', 'oci8.c oci8_lob.c oci8_statement.c oci8_collection.c oci8_interface.c', null, null, null, "ext\\oci8_11g") + + AC_DEFINE('HAVE_OCI8', 1); + AC_DEFINE('HAVE_OCI_INSTANT_CLIENT', 1); + AC_DEFINE('HAVE_OCI_LOB_READ2', 1); + + } else { + WARNING("oci8-11g not enabled: Oracle Database libraries or Oracle 11g Instant Client not found"); + PHP_OCI8_11G = "no" + } +} |