From 014ac19de28328f8b20b598b59bfb40900b20b2c Mon Sep 17 00:00:00 2001 From: drh Date: Tue, 1 Jun 2004 01:45:11 +0000 Subject: [PATCH] Makefile changes for building windows DLLs. (CVS 1517) FossilOrigin-Name: 11c5d6ab39d04e05a3a1b68477f159b17311a6da --- main.mk | 2 + manifest | 13 ++++--- manifest.uuid | 2 +- mkdll.sh | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 114 insertions(+), 7 deletions(-) create mode 100644 mkdll.sh diff --git a/main.mk b/main.mk index 1b93b1de32..8e96034491 100644 --- a/main.mk +++ b/main.mk @@ -78,6 +78,7 @@ SRC = \ $(TOP)/src/hash.c \ $(TOP)/src/hash.h \ $(TOP)/src/insert.c \ + $(TOP)/src/legacy.c \ $(TOP)/src/main.c \ $(TOP)/src/os_mac.c \ $(TOP)/src/os_unix.c \ @@ -134,6 +135,7 @@ HDR = \ $(TOP)/src/hash.h \ opcodes.h \ $(TOP)/src/os.h \ + $(TOP)/src/os_common.h \ $(TOP)/src/os_mac.h \ $(TOP)/src/os_unix.h \ $(TOP)/src/os_win.h \ diff --git a/manifest b/manifest index 094b974eb2..d503280a3d 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sthe\scapi3ref.html\spage\sto\sthe\swebsite.\s(CVS\s1516) -D 2004-06-01T01:22:38 +C Makefile\schanges\sfor\sbuilding\swindows\sDLLs.\s(CVS\s1517) +D 2004-06-01T01:45:11 F Makefile.in ab7b0d5118e2da97bac66be8684a1034e3500f5a F Makefile.linux-gcc b86a99c493a5bfb402d1d9178dcdc4bd4b32f906 F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd @@ -16,7 +16,8 @@ F doc/lemon.html f0f682f50210928c07e562621c3b7e8ab912a538 F doc/report1.txt a031aaf37b185e4fa540223cb516d3bccec7eeac F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 F ltmain.sh f6b283068efa69f06eb8aa1fe4bddfdbdeb35826 -F main.mk 0b231e6e257ab4d3a036510df1f636e9b75ffb3d +F main.mk b717f9861a3acdd3a4e81fc59731a393bf6a0c6e +F mkdll.sh 68d34a961a1fdfa15ef27fc4f4740be583112124 F publish.sh 2e579b7474d57b6debcead93c73a49eb8cb81718 F spec.template a38492f1c1dd349fc24cb0565e08afc53045304b F sqlite.1 83f4a9d37bdf2b7ef079a82d54eaf2e3509ee6ea @@ -213,7 +214,7 @@ F www/support.tcl 67682848d6ddd283370451dc3da2e56cded9fc9a F www/tclsqlite.tcl 19191cf2a1010eaeff74c51d83fd5f5a4d899075 F www/vdbe.tcl 59288db1ac5c0616296b26dce071c36cb611dfe9 F www/whentouse.tcl a8335bce47cc2fddb07f19052cb0cb4d9129a8e4 -P 6902fb1b49fdf0e38265fa26198690243cdc2f58 -R d57cd331d29ed702de6a88d65460d891 +P 89f54f1ffdddc99340777cda6d9b1d7446549fa2 +R cdfbb65facdbc30feb7d845fb9129454 U drh -Z e3df5c47224ee70e358b0ca52ff2a388 +Z c2c1d678f12db45dfa44d1a3efee9c99 diff --git a/manifest.uuid b/manifest.uuid index 33a7d60ee4..b01da5a52d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -89f54f1ffdddc99340777cda6d9b1d7446549fa2 \ No newline at end of file +11c5d6ab39d04e05a3a1b68477f159b17311a6da \ No newline at end of file diff --git a/mkdll.sh b/mkdll.sh new file mode 100644 index 0000000000..07c4541c62 --- /dev/null +++ b/mkdll.sh @@ -0,0 +1,104 @@ +#!/bin/sh +# +# This script is used to compile SQLite and all its documentation and +# ship everything up to the SQLite website. This script will only work +# on the system "zadok" at the Hwaci offices. But others might find +# the script useful as an example. +# + +# Build the tclsqlite.dll shared library that can be imported into tclsh +# or wish on windows. +# +make target_source +cd tsrc +PATH=$PATH:/opt/mingw/bin +OPTS='-DUSE_TCL_STUBS=1 -DNDEBUG=1 -DTHREADSAFE=1' +CC="i386-mingw32msvc-gcc -O2 $OPTS -I." +rm shell.c +rm tclsqlite.c +for i in *.c; do + CMD="$CC -c $i" + echo $CMD + $CMD +done +cat >sqlite3.def <<\END_OF_FILE +EXPORTS +sqlite3_aggregate_context +sqlite3_aggregate_count +sqlite3_bind_blob +sqlite3_bind_double +sqlite3_bind_int +sqlite3_bind_int64 +sqlite3_bind_null +sqlite3_bind_text +sqlite3_bind_text16 +sqlite3_busy_handler +sqlite3_busy_timeout +sqlite3_close +sqlite3_column_blob +sqlite3_column_bytes +sqlite3_column_bytes16 +sqlite3_column_count +sqlite3_column_decltype +sqlite3_column_decltype16 +sqlite3_column_double +sqlite3_column_int +sqlite3_column_int64 +sqlite3_column_name +sqlite3_column_name16 +sqlite3_column_text +sqlite3_column_text16 +sqlite3_column_type +sqlite3_complete +sqlite3_complete16 +sqlite3_create_function +sqlite3_create_function16 +sqlite3_errcode +sqlite3_errmsg +sqlite3_errmsg16 +sqlite3_finalize +sqlite3_free +sqlite3_interrupt +sqlite3_last_insert_rowid +sqlite3_mprintf +sqlite3_open +sqlite3_open16 +sqlite3_prepare +sqlite3_prepare16 +sqlite3_reset +sqlite3_result_blob +sqlite3_result_double +sqlite3_result_error +sqlite3_result_error16 +sqlite3_result_int +sqlite3_result_int64 +sqlite3_result_null +sqlite3_result_text +sqlite3_result_text16 +sqlite3_result_value +sqlite3_set_authorizer +sqlite3_step +sqlite3_user_data +sqlite3_value_blob +sqlite3_value_bytes +sqlite3_value_bytes16 +sqlite3_value_double +sqlite3_value_int +sqlite3_value_int64 +sqlite3_value_text +sqlite3_value_text16 +sqlite3_value_type +sqlite3_vmprintf +END_OF_FILE +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 *.o +i386-mingw32msvc-strip sqlite3.dll +mv sqlite3.dll sqlite3.def .. +cd .. +rm -f sqlite3dll.zip +zip sqlite3dll.zip sqlite3.dll sqlite3.def