Annotation of embedaddon/sqlite3/mkdll.sh, revision 1.1
1.1 ! misho 1: #!/bin/sh
! 2: #
! 3: # This script is used to compile SQLite into a DLL.
! 4: #
! 5: # Two separate DLLs are generated. "sqlite3.dll" is the core
! 6: # library. "tclsqlite3.dll" contains the TCL bindings and is the
! 7: # library that is loaded into TCL in order to run SQLite.
! 8: #
! 9: make sqlite3.c
! 10: PATH=$PATH:/opt/mingw/bin
! 11: TCLDIR=/home/drh/tcltk/846/win/846win
! 12: TCLSTUBLIB=$TCLDIR/libtcl84stub.a
! 13: OPTS='-DUSE_TCL_STUBS=1 -DBUILD_sqlite=1 -DSQLITE_OS_WIN=1'
! 14: OPTS="$OPTS -DSQLITE_THREADSAFE=1"
! 15: OPTS="$OPTS -DSQLITE_ENABLE_FTS3=1"
! 16: OPTS="$OPTS -DSQLITE_ENABLE_RTREE=1"
! 17: OPTS="$OPTS -DSQLITE_ENABLE_COLUMN_METADATA=1"
! 18: CC="i386-mingw32msvc-gcc -Os $OPTS -Itsrc -I$TCLDIR"
! 19: NM="i386-mingw32msvc-nm"
! 20: CMD="$CC -c sqlite3.c"
! 21: echo $CMD
! 22: $CMD
! 23: CMD="$CC -c tclsqlite3.c"
! 24: echo $CMD
! 25: $CMD
! 26: echo 'EXPORTS' >tclsqlite3.def
! 27: $NM tclsqlite3.o | grep ' T ' >temp1
! 28: grep '_Init$' temp1 >temp2
! 29: grep '_SafeInit$' temp1 >>temp2
! 30: grep ' T _sqlite3_' temp1 >>temp2
! 31: echo 'EXPORTS' >tclsqlite3.def
! 32: sed 's/^.* T _//' temp2 | sort | uniq >>tclsqlite3.def
! 33: i386-mingw32msvc-dllwrap \
! 34: --def tclsqlite3.def -v --export-all \
! 35: --driver-name i386-mingw32msvc-gcc \
! 36: --dlltool-name i386-mingw32msvc-dlltool \
! 37: --as i386-mingw32msvc-as \
! 38: --target i386-mingw32 \
! 39: -dllname tclsqlite3.dll -lmsvcrt tclsqlite3.o $TCLSTUBLIB
! 40: $NM sqlite3.o | grep ' T ' >temp1
! 41: echo 'EXPORTS' >sqlite3.def
! 42: grep ' _sqlite3_' temp1 | sed 's/^.* _//' >>sqlite3.def
! 43: i386-mingw32msvc-dllwrap \
! 44: --def sqlite3.def -v --export-all \
! 45: --driver-name i386-mingw32msvc-gcc \
! 46: --dlltool-name i386-mingw32msvc-dlltool \
! 47: --as i386-mingw32msvc-as \
! 48: --target i386-mingw32 \
! 49: -dllname sqlite3.dll -lmsvcrt sqlite3.o
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>