1diff -urN sqlite-2.8.17.orig/main.mk sqlite-2.8.17/main.mk
2--- sqlite-2.8.17.orig/main.mk	2005-04-23 22:43:23.000000000 +0000
3+++ sqlite-2.8.17/main.mk	2009-04-02 20:10:36.000000000 +0000
4@@ -139,7 +139,7 @@
5 # This is the default Makefile target.  The objects listed here
6 # are what get build when you type just "make" with no arguments.
7 #
8-all:	sqlite.h config.h libsqlite.a sqlite$(EXE)
9+all:   sqlite.h config.h libsqlite.so sqlite$(EXE)
10
11 # Generate the file "last_change" which contains the date of change
12 # of the most recently modified source code file
13@@ -148,13 +148,12 @@
14 	cat $(SRC) | grep '$$Id: ' | sort +4 | tail -1 \
15           | awk '{print $$5,$$6}' >last_change
16
17-libsqlite.a:	$(LIBOBJ)
18-	$(AR) libsqlite.a $(LIBOBJ)
19-	$(RANLIB) libsqlite.a
20-
21-sqlite$(EXE):	$(TOP)/src/shell.c libsqlite.a sqlite.h
22-	$(TCCX) $(READLINE_FLAGS) -o sqlite$(EXE) $(TOP)/src/shell.c \
23-		libsqlite.a $(LIBREADLINE) $(THREADLIB)
24+libsqlite.so:	$(LIBOBJ)
25+	$(CC) $(LDFLAGS) -shared -o libsqlite.so -Wl,-soname,libsqlite.so.0 $(LIBOBJ)
26+
27+sqlite$(EXE):	$(TOP)/src/shell.c libsqlite.so sqlite.h
28+	$(TCCX) $(LDFLAGS) $(READLINE_FLAGS) -o sqlite$(EXE) $(TOP)/src/shell.c \
29+		-lsqlite $(LIBREADLINE) $(THREADLIB)
30
31 sqlite_analyzer$(EXE):	$(TOP)/src/tclsqlite.c libsqlite.a $(TESTSRC) \
32 			$(TOP)/tool/spaceanal.tcl
33