Index: third_party/sqlite/src/mkdll.sh |
diff --git a/third_party/sqlite/src/mkdll.sh b/third_party/sqlite/src/mkdll.sh |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9e368d1d23bc5049ee932a8eb35423a49e247f17 |
--- /dev/null |
+++ b/third_party/sqlite/src/mkdll.sh |
@@ -0,0 +1,49 @@ |
+#!/bin/sh |
+# |
+# This script is used to compile SQLite into a DLL. |
+# |
+# Two separate DLLs are generated. "sqlite3.dll" is the core |
+# library. "tclsqlite3.dll" contains the TCL bindings and is the |
+# library that is loaded into TCL in order to run SQLite. |
+# |
+make sqlite3.c |
+PATH=$PATH:/opt/mingw/bin |
+TCLDIR=/home/drh/tcltk/846/win/846win |
+TCLSTUBLIB=$TCLDIR/libtcl84stub.a |
+OPTS='-DUSE_TCL_STUBS=1 -DBUILD_sqlite=1 -DSQLITE_OS_WIN=1' |
+OPTS="$OPTS -DSQLITE_THREADSAFE=1" |
+OPTS="$OPTS -DSQLITE_ENABLE_FTS3=1" |
+OPTS="$OPTS -DSQLITE_ENABLE_RTREE=1" |
+OPTS="$OPTS -DSQLITE_ENABLE_COLUMN_METADATA=1" |
+CC="i386-mingw32msvc-gcc -Os $OPTS -Itsrc -I$TCLDIR" |
+NM="i386-mingw32msvc-nm" |
+CMD="$CC -c sqlite3.c" |
+echo $CMD |
+$CMD |
+CMD="$CC -c tclsqlite3.c" |
+echo $CMD |
+$CMD |
+echo 'EXPORTS' >tclsqlite3.def |
+$NM tclsqlite3.o | grep ' T ' >temp1 |
+grep '_Init$' temp1 >temp2 |
+grep '_SafeInit$' temp1 >>temp2 |
+grep ' T _sqlite3_' temp1 >>temp2 |
+echo 'EXPORTS' >tclsqlite3.def |
+sed 's/^.* T _//' temp2 | sort | uniq >>tclsqlite3.def |
+i386-mingw32msvc-dllwrap \ |
+ --def tclsqlite3.def -v --export-all \ |
+ --driver-name i386-mingw32msvc-gcc \ |
+ --dlltool-name i386-mingw32msvc-dlltool \ |
+ --as i386-mingw32msvc-as \ |
+ --target i386-mingw32 \ |
+ -dllname tclsqlite3.dll -lmsvcrt tclsqlite3.o $TCLSTUBLIB |
+$NM sqlite3.o | grep ' T ' >temp1 |
+echo 'EXPORTS' >sqlite3.def |
+grep ' _sqlite3_' temp1 | sed 's/^.* _//' >>sqlite3.def |
+i386-mingw32msvc-dllwrap \ |
+ --def sqlite3.def -v --export-all \ |
+ --driver-name i386-mingw32msvc-gcc \ |
+ --dlltool-name i386-mingw32msvc-dlltool \ |
+ --as i386-mingw32msvc-as \ |
+ --target i386-mingw32 \ |
+ -dllname sqlite3.dll -lmsvcrt sqlite3.o |