]>
Commit | Line | Data |
---|---|---|
c638a5d4 | 1 | #!/bin/sh |
2 | # inter-dependencies checker. | |
3 | ||
4 | with_mysqlnd=mysqlnd | |
5 | ||
6 | dep_spl="pcre simplexml" | |
7 | dep_session="spl $dep_spl" | |
8 | dep_filter='pcre' | |
9 | dep_eaccelerator='session' | |
10 | dep_mysql="$with_mysqlnd" | |
11 | dep_mysqli="$dep_spl spl $with_mysqlnd" | |
12 | dep_pdo="$dep_spl spl" | |
13 | dep_pdo_sqlite="$dep_pdo pdo" | |
14 | dep_pdo_pgsql="$dep_pdo pdo" | |
15 | dep_pdo_oci="$dep_pdo pdo" | |
16 | dep_pdo_odbc="$dep_pdo pdo" | |
17 | dep_pdo_firebird="$dep_pdo pdo" | |
18 | dep_pdo_dblib="$dep_pdo pdo" | |
19 | dep_pdo_mysql="$dep_pdo pdo $with_mysqlnd" | |
20 | dep_simplexml="$dep_spl spl" | |
21 | dep_imap="pcre" | |
22 | dep_phar="$dep_spl spl" | |
23 | dep_sqlite="$dep_pdo pdo" | |
24 | dep_fileinfo="pcre" | |
25 | dep_wddx='xml' | |
26 | dep_xmlreader='dom' | |
27 | dep_xmlrpc='xml' | |
28 | dep_xsl='dom' | |
bbbe06cd | 29 | dep_snmp="$dep_spl spl snmp" |
c638a5d4 | 30 | |
31 | php=${PHP:-$(php-config --php-binary)} | |
32 | ext_dir=${EXTENSION_DIR:-$(php-config --extension-dir)} | |
33 | conf_dir=${CONFIG_DIR:-$(php-config --sysconfdir)/conf.d $(php-config --sysconfdir)/cli.d} | |
34 | tmpini=$(mktemp) | |
35 | ||
36 | # poldek --sn ac-ready -u php-* | |
37 | for ext in $ext_dir/*.so; do | |
38 | [ -f $ext ] || continue | |
39 | ext=${ext##*/}; ext=${ext%.so} | |
40 | ||
41 | deps=$(eval echo \$dep_$ext) | |
42 | # add ext itself, if already not in list (spl case) | |
43 | [[ $deps = *\ $ext\ * ]] || deps="$deps $ext" | |
44 | ||
45 | echo -n "$ext (deps: ${deps# })..." | |
46 | ||
47 | grep -rlE '^extension=('$(echo "${deps# }" | tr ' ' '|')').so$' $conf_dir | LC_CTYPE=C LC_ALL= sort | xargs cat > $tmpini | |
48 | $php -n -d extension_dir=$ext_dir -c $tmpini -r "exit(extension_loaded('${ext}') ? 0 : 1);" | |
49 | rc=$? | |
50 | if [ $rc = 0 ]; then | |
51 | echo OK | |
52 | else | |
53 | echo FAIL | |
54 | echo "Failed config was:" | |
55 | cat $tmpini | |
56 | fi | |
57 | done | |
58 | rm -f $t |