1 #!/bin/sh 2 # 3 # This script is used to compile SQLite into a shared library on Linux. 4 # 5 # Two separate shared libraries are generated. "sqlite3.so" is the core 6 # library. "tclsqlite3.so" contains the TCL bindings and is the 7 # library that is loaded into TCL in order to run SQLite. 8 # 9 make target_source 10 cd tsrc 11 rm shell.c 12 TCLDIR=/home/drh/tcltk/846/linux/846linux 13 TCLSTUBLIB=$TCLDIR/libtclstub8.4g.a 14 OPTS='-DUSE_TCL_STUBS=1 -DNDEBUG=1 -DHAVE_DLOPEN=1' 15 OPTS="$OPTS -DSQLITE_THREADSAFE=1" 16 OPTS="$OPTS -DSQLITE_ENABLE_FTS3=1" 17 OPTS="$OPTS -DSQLITE_ENABLE_COLUMN_METADATA=1" 18 for i in *.c; do 19 if test $i != 'keywordhash.c'; then 20 CMD="cc -fPIC $OPTS -O2 -I. -I$TCLDIR -c $i" 21 echo $CMD 22 $CMD 23 fi 24 done 25 echo gcc -shared *.o $TCLSTUBLIB -o tclsqlite3.so 26 gcc -shared *.o $TCLSTUBLIB -o tclsqlite3.so 27 strip tclsqlite3.so 28 rm tclsqlite.c tclsqlite.o 29 echo gcc -shared *.o -o sqlite3.so 30 gcc -shared *.o -o sqlite3.so 31 strip sqlite3.so 32 cd .. 33