summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac116
1 files changed, 100 insertions, 16 deletions
diff --git a/configure.ac b/configure.ac
index fe5b3b8..59d1b44 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,11 +4,13 @@
#
# --enable-threadsafe
# --enable-readline
+# --enable-editline
+# --enable-static-shell
# --enable-dynamic-extensions
#
AC_PREREQ(2.61)
-AC_INIT(sqlite, 3.8.8.1, http://www.sqlite.org)
+AC_INIT(sqlite, 3.20.1, http://www.sqlite.org)
AC_CONFIG_SRCDIR([sqlite3.c])
# Use automake.
@@ -18,7 +20,6 @@ AC_SYS_LARGEFILE
# Check for required programs.
AC_PROG_CC
-AC_PROG_RANLIB
AC_PROG_LIBTOOL
AC_PROG_MKDIR_P
@@ -29,22 +30,52 @@ AC_FUNC_STRERROR_R
AC_CONFIG_FILES([Makefile sqlite3.pc])
AC_SUBST(BUILD_CFLAGS)
-#-----------------------------------------------------------------------
+#-------------------------------------------------------------------------
+# Two options to enable readline compatible libraries:
+#
+# --enable-editline
# --enable-readline
#
-AC_ARG_ENABLE(readline, [AS_HELP_STRING(
- [--enable-readline],
- [use readline in shell tool (yes, no) [default=yes]])],
- [], [enable_readline=yes])
-if test x"$enable_readline" != xno ; then
- sLIBS=$LIBS
- LIBS=""
- AC_SEARCH_LIBS(tgetent, curses ncurses ncursesw, [], [])
- AC_SEARCH_LIBS(readline, readline, [], [enable_readline=no])
- AC_CHECK_FUNCS(readline, [], [])
- READLINE_LIBS=$LIBS
- LIBS=$sLIBS
-fi
+# Both are enabled by default. If, after command line processing both are
+# still enabled, the script searches for editline first and automatically
+# disables readline if it is found. So, to use readline explicitly, the
+# user must pass "--disable-editline". To disable command line editing
+# support altogether, "--disable-editline --disable-readline".
+#
+# When searching for either library, check for headers before libraries
+# as some distros supply packages that contain libraries but not header
+# files, which come as a separate development package.
+#
+AC_ARG_ENABLE(editline, [AS_HELP_STRING([--enable-editline],[use BSD libedit])])
+AC_ARG_ENABLE(readline, [AS_HELP_STRING([--enable-readline],[use readline])])
+
+AS_IF([ test x"$enable_editline" != xno ],[
+ AC_CHECK_HEADERS([editline/readline.h],[
+ sLIBS=$LIBS
+ LIBS=""
+ AC_SEARCH_LIBS([readline],[edit],[
+ AC_DEFINE([HAVE_EDITLINE],1,Define to use BSD editline)
+ READLINE_LIBS="$LIBS -ltinfo"
+ enable_readline=no
+ ],[],[-ltinfo])
+ AS_UNSET(ac_cv_search_readline)
+ LIBS=$sLIBS
+ ])
+])
+
+AS_IF([ test x"$enable_readline" != xno ],[
+ AC_CHECK_HEADERS([readline/readline.h],[
+ sLIBS=$LIBS
+ LIBS=""
+ AC_SEARCH_LIBS(tgetent, termcap curses ncurses ncursesw, [], [])
+ AC_SEARCH_LIBS(readline,[readline edit], [
+ AC_DEFINE([HAVE_READLINE],1,Define to use readline or wrapper)
+ READLINE_LIBS=$LIBS
+ ])
+ LIBS=$sLIBS
+ ])
+])
+
AC_SUBST(READLINE_LIBS)
#-----------------------------------------------------------------------
@@ -58,6 +89,7 @@ THREADSAFE_FLAGS=-DSQLITE_THREADSAFE=0
if test x"$enable_threadsafe" != "xno"; then
THREADSAFE_FLAGS="-D_REENTRANT=1 -DSQLITE_THREADSAFE=1"
AC_SEARCH_LIBS(pthread_create, pthread)
+ AC_SEARCH_LIBS(pthread_mutexattr_init, pthread)
fi
AC_SUBST(THREADSAFE_FLAGS)
#-----------------------------------------------------------------------
@@ -78,6 +110,58 @@ AC_MSG_RESULT($enable_dynamic_extensions)
AC_SUBST(DYNAMIC_EXTENSION_FLAGS)
#-----------------------------------------------------------------------
+#-----------------------------------------------------------------------
+# --enable-fts5
+#
+AC_ARG_ENABLE(fts5, [AS_HELP_STRING(
+ [--enable-fts5], [include fts5 support [default=no]])],
+ [], [enable_fts5=no])
+if test x"$enable_fts5" = "xyes"; then
+ AC_SEARCH_LIBS(log, m)
+ FTS5_FLAGS=-DSQLITE_ENABLE_FTS5
+fi
+AC_SUBST(FTS5_FLAGS)
+#-----------------------------------------------------------------------
+
+#-----------------------------------------------------------------------
+# --enable-json1
+#
+AC_ARG_ENABLE(json1, [AS_HELP_STRING(
+ [--enable-json1], [include json1 support [default=no]])],
+ [], [enable_json1=no])
+if test x"$enable_json1" = "xyes"; then
+ JSON1_FLAGS=-DSQLITE_ENABLE_JSON1
+fi
+AC_SUBST(JSON1_FLAGS)
+#-----------------------------------------------------------------------
+
+#-----------------------------------------------------------------------
+# --enable-session
+#
+AC_ARG_ENABLE(session, [AS_HELP_STRING(
+ [--enable-session], [enable the session extension [default=no]])],
+ [], [enable_session=no])
+if test x"$enable_session" = "xyes"; then
+ SESSION_FLAGS="-DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_PREUPDATE_HOOK"
+fi
+AC_SUBST(SESSION_FLAGS)
+#-----------------------------------------------------------------------
+
+#-----------------------------------------------------------------------
+# --enable-static-shell
+#
+AC_ARG_ENABLE(static-shell, [AS_HELP_STRING(
+ [--enable-static-shell],
+ [statically link libsqlite3 into shell tool [default=yes]])],
+ [], [enable_static_shell=yes])
+if test x"$enable_static_shell" = "xyes"; then
+ EXTRA_SHELL_OBJ=sqlite3-sqlite3.$OBJEXT
+else
+ EXTRA_SHELL_OBJ=libsqlite3.la
+fi
+AC_SUBST(EXTRA_SHELL_OBJ)
+#-----------------------------------------------------------------------
+
AC_CHECK_FUNCS(posix_fallocate)
#-----------------------------------------------------------------------