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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
dnl $Id$
dnl config.m4 for extension sqlite
dnl vim:et:ts=2:sw=2
PHP_ARG_ENABLE(sqlite-utf8, whether to enable UTF-8 support in sqlite (default: ISO-8859-1),
[ --enable-sqlite-utf8 Enable UTF-8 support for SQLite], no, no)
PHP_ARG_WITH(sqlite, for sqlite support,
[ --without-sqlite Do not include sqlite support.
Use --with-sqlite=DIR to specify DIR where
Sqlite include and library files are located,
if not using bundled library.], yes)
if test "$PHP_SQLITE" != "no"; then
AC_MSG_CHECKING([for PDO includes])
if test -f $abs_srcdir/include/php/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$abs_srcdir/ext
elif test -f $abs_srcdir/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$abs_srcdir/ext
elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$prefix/include/php/ext
else
AC_MSG_WARN([Cannot find php_pdo_driver.h.])
pdo_inc_path=""
fi
if test -n "$pdo_inc_path"; then
AC_DEFINE([PHP_SQLITE2_HAVE_PDO], [1], [Have PDO])
pdo_inc_path="-I$pdo_inc_path"
fi
AC_MSG_RESULT($pdo_inc_path)
if test "$PHP_SQLITE" != "yes"; then
SEARCH_PATH="/usr/local /usr"
SEARCH_FOR="/include/sqlite.h"
if test -r $PHP_SQLITE/; then # path given as parameter
SQLITE_DIR=$PHP_SQLITE
else # search default path list
AC_MSG_CHECKING([for sqlite files in default path])
for i in $SEARCH_PATH ; do
if test -r $i/$SEARCH_FOR; then
SQLITE_DIR=$i
AC_MSG_RESULT(found in $i)
fi
done
fi
if test -z "$SQLITE_DIR"; then
AC_MSG_RESULT([not found])
AC_MSG_ERROR([Please reinstall the sqlite distribution from http://www.sqlite.org])
fi
PHP_ADD_INCLUDE($SQLITE_DIR/include)
LIBNAME=sqlite
LIBSYMBOL=sqlite_open
PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
[
PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $SQLITE_DIR/$PHP_LIBDIR, SQLITE_SHARED_LIBADD)
AC_DEFINE(HAVE_SQLITELIB,1,[ ])
],[
AC_MSG_ERROR([wrong sqlite lib version or lib not found])
],[
-L$SQLITE_DIR/$PHP_LIBDIR -lm
])
PHP_SUBST(SQLITE_SHARED_LIBADD)
PHP_NEW_EXTENSION(sqlite, sqlite.c sess_sqlite.c pdo_sqlite2.c libsqlite/src/encode.c, $ext_shared,,$pdo_inc_path)
else
# use bundled library
PHP_SQLITE_CFLAGS="-I@ext_srcdir@/libsqlite/src $pdo_inc_path"
sources="libsqlite/src/opcodes.c
libsqlite/src/parse.c libsqlite/src/encode.c \
libsqlite/src/auth.c libsqlite/src/btree.c libsqlite/src/build.c \
libsqlite/src/delete.c libsqlite/src/expr.c libsqlite/src/func.c \
libsqlite/src/hash.c libsqlite/src/insert.c libsqlite/src/main.c \
libsqlite/src/os.c libsqlite/src/pager.c \
libsqlite/src/printf.c libsqlite/src/random.c \
libsqlite/src/select.c libsqlite/src/table.c libsqlite/src/tokenize.c \
libsqlite/src/update.c libsqlite/src/util.c libsqlite/src/vdbe.c \
libsqlite/src/attach.c libsqlite/src/btree_rb.c libsqlite/src/pragma.c \
libsqlite/src/vacuum.c libsqlite/src/copy.c \
libsqlite/src/vdbeaux.c libsqlite/src/date.c \
libsqlite/src/where.c libsqlite/src/trigger.c"
PHP_NEW_EXTENSION(sqlite, sqlite.c sess_sqlite.c pdo_sqlite2.c $sources, $ext_shared,,$PHP_SQLITE_CFLAGS)
PHP_ADD_EXTENSION_DEP(sqlite, spl)
PHP_ADD_EXTENSION_DEP(sqlite, pdo)
PHP_ADD_BUILD_DIR($ext_builddir/libsqlite)
PHP_ADD_BUILD_DIR($ext_builddir/libsqlite/src)
AC_CHECK_SIZEOF(char *,4)
AC_DEFINE(SQLITE_PTR_SZ, SIZEOF_CHAR_P, [Size of a pointer])
dnl use latin 1 for SQLite older than 2.8.9; the utf-8 handling
dnl in funcs.c uses assert(), which is a bit silly and something
dnl we want to avoid. This assert() was removed in SQLite 2.8.9.
if test "$PHP_SQLITE_UTF8" = "yes"; then
SQLITE_ENCODING="UTF8"
AC_DEFINE(SQLITE_UTF8, 1, [ ])
else
SQLITE_ENCODING="ISO8859"
fi
PHP_SUBST(SQLITE_ENCODING)
SQLITE_VERSION=`cat $ext_srcdir/libsqlite/VERSION`
PHP_SUBST(SQLITE_VERSION)
sed -e s/--VERS--/$SQLITE_VERSION/ -e s/--ENCODING--/$SQLITE_ENCODING/ $ext_srcdir/libsqlite/src/sqlite.h.in >$ext_srcdir/libsqlite/src/sqlite.h
if test "$ext_shared" = "no" -o "$ext_srcdir" != "$abs_srcdir"; then
echo '#include <php_config.h>' > $ext_srcdir/libsqlite/src/config.h
else
echo "#include \"$abs_builddir/config.h\"" > $ext_srcdir/libsqlite/src/config.h
fi
cat >> $ext_srcdir/libsqlite/src/config.h <<EOF
#if ZTS
# define THREADSAFE 1
#endif
#if !ZEND_DEBUG
# define NDEBUG
#endif
EOF
fi
AC_CHECK_FUNCS(usleep nanosleep)
AC_CHECK_HEADERS(time.h)
fi
|