blob: 6f39ae26634cd2577df2b8b362a9dd041da3916c [file] [log] [blame]
From ede5db83e38cc8ad8c9be291cd8985f7ad99f291 Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com>
Date: Tue, 16 Feb 2016 14:00:00 -0800
Subject: [PATCH] fix --disable-static-shell
Upstream sqlite seems to be moving further and further away from
allowing the sqlite3 command line tool to be dynamically linked with
sqlite.
The --disable-static-shell configure option added in 3.10.0 no longer
has any effect in 3.11.0. For now patch things up and make it work.
Upstream-Status: Pending
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
Makefile.am | 13 +++++++++++--
configure.ac | 2 +-
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 0e09cfc..608c0fd 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,9 +6,18 @@ libsqlite3_la_SOURCES = sqlite3.c
libsqlite3_la_LDFLAGS = -no-undefined -version-info 8:6:8
bin_PROGRAMS = sqlite3
-sqlite3_SOURCES = shell.c sqlite3.c sqlite3.h
-sqlite3_LDADD = @READLINE_LIBS@
+sqlite3_SOURCES = shell.c sqlite3.h
+EXTRA_sqlite3_SOURCES = sqlite3.c
+sqlite3_LDADD = @EXTRA_SHELL_OBJ@ @READLINE_LIBS@
sqlite3_DEPENDENCIES = @EXTRA_SHELL_OBJ@
+
+# Warning: Adding SQLITE_ENABLE_EXPLAIN_COMMENTS to sqlite3_CFLAGS doesn't
+# actually have any effect if we link the sqlite3 command line tool with the
+# libsqlite3.so shared library (which will contain a version of sqlite3.c
+# compiled with the default AM_CFLAGS above). If SQLITE_ENABLE_EXPLAIN_COMMENTS
+# debug is required, then sqlite3 must not be configured with
+# --disable-static-shell
+
sqlite3_CFLAGS = $(AM_CFLAGS) -DSQLITE_ENABLE_EXPLAIN_COMMENTS
include_HEADERS = sqlite3.h sqlite3ext.h
diff --git a/configure.ac b/configure.ac
index 8e7fd69..ada559e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -130,7 +130,7 @@ AC_ARG_ENABLE(static-shell, [AS_HELP_STRING(
[statically link libsqlite3 into shell tool [default=yes]])],
[], [enable_static_shell=yes])
if test x"$enable_static_shell" == "xyes"; then
- EXTRA_SHELL_OBJ=sqlite3.$OBJEXT
+ EXTRA_SHELL_OBJ=sqlite3-sqlite3.$OBJEXT
else
EXTRA_SHELL_OBJ=libsqlite3.la
fi
--
1.9.1