mirror of
https://github.com/php/php-src.git
synced 2024-12-15 04:45:03 +08:00
87 lines
2.8 KiB
JavaScript
Executable File
87 lines
2.8 KiB
JavaScript
Executable File
// $Id$
|
|
// vim:ft=javascript
|
|
|
|
ARG_WITH("pdo-oci", "Oracle OCI support for PDO", "no");
|
|
|
|
if (PHP_PDO_OCI != "no") {
|
|
|
|
pdo_oci_dirs = new Array(
|
|
PHP_PDO_OCI,
|
|
PHP_PDO_OCI + "\\oci",
|
|
PHP_PHP_BUILD + "\\instantclient10_*\\sdk",
|
|
PHP_PHP_BUILD + "\\oci92"
|
|
);
|
|
|
|
pdo_oci_lib_paths = "";
|
|
pdo_oci_inc_paths = "";
|
|
|
|
// find the oracle install
|
|
for (i = 0; i < pdo_oci_dirs.length; i++) {
|
|
pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib;";
|
|
pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib\\msvc;";
|
|
pdo_oci_inc_paths += pdo_oci_dirs[i] + "\\include;";
|
|
}
|
|
|
|
pdo_oci_inc_paths += PHP_PHP_BUILD + "\\include\\instantclient;"
|
|
pdo_oci_lib_paths += PHP_PHP_BUILD + "\\lib\\instantclient;";
|
|
|
|
pdo_oci_header = CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_PDO_OCI", pdo_oci_inc_paths, null, null, true);
|
|
|
|
if (pdo_oci_header && CHECK_LIB("oci.lib", "pdo_oci", pdo_oci_lib_paths)) {
|
|
|
|
pdo_oci_inc_dir = FSO.GetParentFolderName(pdo_oci_header);
|
|
|
|
EXTENSION('pdo_oci', 'pdo_oci.c oci_driver.c oci_statement.c');
|
|
ADD_FLAG('CFLAGS_PDO_OCI', "/I ..\\pecl");
|
|
|
|
/* probe for some functions not present in older versions */
|
|
pdo_oci_inc_dir = FSO.GetFolder(pdo_oci_header);
|
|
CHECK_FUNC_IN_HEADER('oci.h', 'OCIEnvCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
|
|
CHECK_FUNC_IN_HEADER('ociap.h', 'OCIStmtFetch2', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
|
|
CHECK_FUNC_IN_HEADER('ociap.h', 'OCIEnvNlsCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
|
|
|
|
} else {
|
|
WARNING("pdo-oci not enabled; libraries and headers not found");
|
|
}
|
|
ADD_EXTENSION_DEP('pdo_oci', 'pdo');
|
|
}
|
|
|
|
ARG_WITH("pdo-oci8", "Oracle OCI 8 (only) support for PDO", "no");
|
|
|
|
if (PHP_PDO_OCI8 != "no") {
|
|
pdo_oci_dirs = new Array(
|
|
PHP_PDO_OCI,
|
|
PHP_PHP_BUILD + "\\oci805"
|
|
);
|
|
|
|
pdo_oci_lib_paths = "";
|
|
pdo_oci_inc_paths = "";
|
|
|
|
// find the oracle install
|
|
for (i = 0; i < pdo_oci_dirs.length; i++) {
|
|
pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib;";
|
|
pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib\\msvc;";
|
|
pdo_oci_inc_paths += pdo_oci_dirs[i] + "\\include;";
|
|
}
|
|
|
|
pdo_oci_header = CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_PDO_OCI8", pdo_oci_inc_paths, null, null, true);
|
|
|
|
if (pdo_oci_header && CHECK_LIB("oci.lib", "pdo_oci8", pdo_oci_lib_paths)) {
|
|
pdo_oci_inc_dir = FSO.GetParentFolderName(pdo_oci_header);
|
|
|
|
EXTENSION('pdo_oci8', 'pdo_oci.c oci_driver.c oci_statement.c', null, null, null, "ext\\pdo_oci8");
|
|
ADD_FLAG('CFLAGS_PDO_OCI8', "/I ..\\pecl");
|
|
|
|
/* probe for some functions not present in older versions */
|
|
pdo_oci_inc_dir = FSO.GetFolder(pdo_oci_header);
|
|
CHECK_FUNC_IN_HEADER('oci.h', 'OCIEnvCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI8');
|
|
CHECK_FUNC_IN_HEADER('ociap.h', 'OCIStmtFetch2', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI8');
|
|
CHECK_FUNC_IN_HEADER('ociap.h', 'OCIEnvNlsCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI8');
|
|
|
|
} else {
|
|
WARNING("pdo-oci8 not enabled; libraries and headers not found");
|
|
}
|
|
ADD_EXTENSION_DEP('pdo_oci8', 'pdo');
|
|
}
|
|
|