2 # inter-dependencies checker.
4 # spl must be loaded before simplexml, therefore spl has itself before its deps
5 dep_spl="pcre spl simplexml"
7 dep_eaccelerator='session'
10 dep_pdo_sqlite="$dep_pdo pdo"
11 dep_pdo_pgsql="$dep_pdo pdo"
12 dep_pdo_odbc="$dep_pdo pdo"
13 dep_pdo_firebird="$dep_pdo pdo"
14 dep_pdo_dblib="$dep_pdo pdo"
15 dep_pdo_mysql="$dep_pdo pdo"
16 dep_simplexml="$dep_spl"
17 dep_sqlite="$dep_pdo pdo"
23 php=${PHP:-$(php-config --php-binary)}
24 ext_dir=${EXTENSION_DIR:-$(php-config --extension-dir)}
25 conf_dir=${CONFIG_DIR:-$(php-config --sysconfdir)/conf.d}
27 # poldek --sn ac-ready -u php-*
28 for ext in $ext_dir/*.so; do
29 [ -f $ext ] || continue
30 ext=${ext##*/}; ext=${ext%.so}
31 deps=$(eval echo \$dep_$ext)
32 # add ext itself, if already not in list (spl case)
33 [[ $deps = *$ext* ]] || deps="$deps $ext"
35 args=$(for e in $deps; do echo -d extension=$e.so; done)
36 echo -n "$ext (deps: ${deps# })..."
37 $php -n -d extension_dir=$ext_dir $args -r "exit(extension_loaded('${ext}') ? 0 : 1);" && echo OK || echo FAIL