File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / sqlite3 / mkdll.sh
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 17:04:16 2012 UTC (12 years, 10 months ago) by misho
Branches: sqlite3, MAIN
CVS tags: v3_7_10, HEAD
sqlite3

    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>