summaryrefslogtreecommitdiff
path: root/ext/pdo/config.m4
blob: 786c70382abfcf7aa1c67a81ad799585820cc379 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
dnl $Id$
dnl config.m4 for extension pdo
dnl vim:se ts=2 sw=2 et:

AC_DEFUN([PHP_PDO_PEAR_CHECK],[
  pdo_running_under_pear=0
  case `pwd` in
    /var/tmp/pear-build-*)
      pdo_running_under_pear=1
      ;;
  esac

  if test "$pdo_running_under_pear$PHP_PEAR_VERSION" = "1"; then
    # we're running in an environment that smells like pear,
    # and the PHP_PEAR_VERSION env var is not set.  That implies
    # that we're running under a slightly broken pear installer
    AC_MSG_ERROR([
PDO requires that you upgrade your PEAR installer tools. Please
do so now by running:

  % sudo pear upgrade pear

or by manually downloading and installing PEAR version 1.3.5 or higher.

Once you've upgraded, please re-try your PDO install.
    ])
  fi
])

PHP_ARG_ENABLE(pdo, whether to enable PDO support,
[  --disable-pdo           Disable PHP Data Objects support], yes)

if test "$PHP_PDO" != "no"; then

  dnl Make sure $PHP_PDO is 'yes' when it's not 'no' :)
  PHP_PDO=yes

  PHP_PDO_PEAR_CHECK

  if test "$ext_shared" = "yes" ; then
    case $host_alias in
      *darwin*)
          AC_MSG_ERROR([
Due to the way that loadable modules work on OSX/Darwin, you need to
compile the PDO package statically into the PHP core.

Please follow the instructions at: http://netevil.org/node.php?nid=202
for more detail on this issue.
          ])
        ext_shared=no
        ;;
    esac
  fi
  PHP_NEW_EXTENSION(pdo, pdo.c pdo_dbh.c pdo_stmt.c pdo_sql_parser.c pdo_sqlstate.c, $ext_shared)
  ifdef([PHP_ADD_EXTENSION_DEP],
  [
    PHP_ADD_EXTENSION_DEP(pdo, spl, true)
  ])
  
  ifdef([PHP_INSTALL_HEADERS],
  [
    dnl Sadly, this is a complete NOP for pecl extensions
    PHP_INSTALL_HEADERS(ext/pdo, [php_pdo.h php_pdo_driver.h php_pdo_error.h])
  ])

  dnl so we always include the known-good working hack.
  PHP_ADD_MAKEFILE_FRAGMENT
fi