config.w32 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // vim:ft=javascript
  2. ARG_WITH("pdo-oci", "Oracle OCI support for PDO", "no");
  3. if (PHP_PDO_OCI != "no") {
  4. pdo_oci_dirs = new Array(
  5. PHP_PDO_OCI,
  6. PHP_PDO_OCI + "\\oci",
  7. PHP_PHP_BUILD + "\\instantclient10_*\\sdk",
  8. PHP_PHP_BUILD + "\\oci92"
  9. );
  10. pdo_oci_lib_paths = "";
  11. pdo_oci_inc_paths = "";
  12. // find the oracle install
  13. for (i = 0; i < pdo_oci_dirs.length; i++) {
  14. pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib;";
  15. pdo_oci_lib_paths += pdo_oci_dirs[i] + "\\lib\\msvc;";
  16. pdo_oci_inc_paths += pdo_oci_dirs[i] + "\\include;";
  17. }
  18. pdo_oci_inc_paths += PHP_PHP_BUILD + "\\include\\instantclient;"
  19. pdo_oci_lib_paths += PHP_PHP_BUILD + "\\lib\\instantclient;";
  20. pdo_oci_header = CHECK_HEADER_ADD_INCLUDE("oci.h", "CFLAGS_PDO_OCI", pdo_oci_inc_paths, null, null, true);
  21. if (pdo_oci_header && CHECK_LIB("oci.lib", "pdo_oci", pdo_oci_lib_paths)) {
  22. pdo_oci_inc_dir = FSO.GetParentFolderName(pdo_oci_header);
  23. EXTENSION('pdo_oci', 'pdo_oci.c oci_driver.c oci_statement.c');
  24. /* probe for some functions not present in older versions */
  25. pdo_oci_inc_dir = FSO.GetFolder(pdo_oci_header);
  26. CHECK_FUNC_IN_HEADER('oci.h', 'OCIEnvCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
  27. CHECK_FUNC_IN_HEADER('ociap.h', 'OCIStmtFetch2', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
  28. CHECK_FUNC_IN_HEADER('ociap.h', 'OCIEnvNlsCreate', pdo_oci_inc_dir, 'CFLAGS_PDO_OCI');
  29. } else {
  30. WARNING("pdo-oci not enabled; libraries and headers not found");
  31. }
  32. ADD_EXTENSION_DEP('pdo_oci', 'pdo');
  33. }