From: mistachkin Date: Fri, 11 Oct 2013 23:01:18 +0000 (+0000) Subject: Enhance debugging support for the split amalgamation files when compiling with MSVC. X-Git-Tag: version-3.8.1~25 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7651091de52c30634fd25f0213821ce4fd8222a4;p=thirdparty%2Fsqlite.git Enhance debugging support for the split amalgamation files when compiling with MSVC. FossilOrigin-Name: 8ff17c553d8c159fa81c961441e16dbba8da62ba --- diff --git a/Makefile.msc b/Makefile.msc index 959ce87de5..0dffd89240 100644 --- a/Makefile.msc +++ b/Makefile.msc @@ -13,6 +13,13 @@ TOP = . USE_AMALGAMATION = 1 !ENDIF +# Set this non-0 to split the SQLite amalgamation file into chunks to +# be used for debugging with Visual Studio. +# +!IFNDEF SPLIT_AMALGAMATION +SPLIT_AMALGAMATION = 1 +!ENDIF + # Set this non-0 to use the International Components for Unicode (ICU). # !IFNDEF USE_ICU @@ -892,10 +899,19 @@ sqlite3.c: .target_source $(TOP)\tool\mksqlite3c.tcl sqlite3-all.c: sqlite3.c $(TOP)\tool\split-sqlite3c.tcl $(TCLSH_CMD) $(TOP)\tool\split-sqlite3c.tcl +# Set the source code file to be used by executables and libraries when +# they need the amalgamation. +# +!IF $(SPLIT_AMALGAMATION)!=0 +SQLITE3C = sqlite3-all.c +!ELSE +SQLITE3C = sqlite3.c +!ENDIF + # Rule to build the amalgamation # -sqlite3.lo: sqlite3.c - $(LTCOMPILE) -c sqlite3.c +sqlite3.lo: $(SQLITE3C) + $(LTCOMPILE) -c $(SQLITE3C) # Rules to build the LEMON compiler generator # @@ -1255,7 +1271,7 @@ TESTFIXTURE_FLAGS = -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE TESTFIXTURE_SRC0 = $(TESTEXT) $(TESTSRC2) libsqlite3.lib -TESTFIXTURE_SRC1 = $(TESTEXT) sqlite3.c +TESTFIXTURE_SRC1 = $(TESTEXT) $(SQLITE3C) !IF $(USE_AMALGAMATION)==0 TESTFIXTURE_SRC = $(TESTSRC) $(TOP)\src\tclsqlite.c $(TESTFIXTURE_SRC0) !ELSE @@ -1283,8 +1299,8 @@ queryplantest: testfixture.exe sqlite3.exe test: testfixture.exe sqlite3.exe .\testfixture.exe $(TOP)\test\veryquick.test -sqlite3_analyzer.c: sqlite3.c $(TOP)\src\test_stat.c $(TOP)\src\tclsqlite.c $(TOP)\tool\spaceanal.tcl - copy sqlite3.c + $(TOP)\src\test_stat.c + $(TOP)\src\tclsqlite.c $@ +sqlite3_analyzer.c: $(SQLITE3C) $(TOP)\src\test_stat.c $(TOP)\src\tclsqlite.c $(TOP)\tool\spaceanal.tcl + copy $(SQLITE3C) + $(TOP)\src\test_stat.c + $(TOP)\src\tclsqlite.c $@ echo static const char *tclsh_main_loop(void){ >> $@ echo static const char *zMainloop = >> $@ $(NAWK) -f $(TOP)\tool\tostr.awk $(TOP)\tool\spaceanal.tcl >> $@ @@ -1310,7 +1326,7 @@ clean: del /Q tclsqlite3.exe tclsqlite3.exp del /Q testfixture.exe testfixture.exp test.db del /Q sqlite3.dll sqlite3.lib sqlite3.exp sqlite3.def - del /Q sqlite3.c + del /Q sqlite3.c sqlite3-*.c del /Q sqlite3rc.h del /Q shell.c sqlite3ext.h del /Q sqlite3_analyzer.exe sqlite3_analyzer.exp sqlite3_analyzer.c diff --git a/main.mk b/main.mk index ee5dd7f7e0..fd30019833 100644 --- a/main.mk +++ b/main.mk @@ -656,7 +656,7 @@ clean: rm -f fts3-testfixture fts3-testfixture.exe rm -f testfixture testfixture.exe rm -f threadtest3 threadtest3.exe - rm -f sqlite3.c fts?amal.c tclsqlite3.c + rm -f sqlite3.c sqlite3-*.c fts?amal.c tclsqlite3.c rm -f sqlite3rc.h rm -f shell.c sqlite3ext.h rm -f sqlite3_analyzer sqlite3_analyzer.exe sqlite3_analyzer.c diff --git a/manifest b/manifest index 97e6aa2b5a..0d91a23543 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Fix\sa\sharmless\scompiler\swarning\sin\slemon.c. -D 2013-10-11T23:01:02.703 +C Enhance\sdebugging\ssupport\sfor\sthe\ssplit\samalgamation\sfiles\swhen\scompiling\swith\sMSVC. +D 2013-10-11T23:01:18.933 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in e2d28ec95bd17ab4f3b6ee40b7102e9d7a0857b9 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 -F Makefile.msc 9af063716f726a73b5d5c98c69ea97eca6a9369b +F Makefile.msc fa3af28a0df2ecab7292feaa672e0550d213806a F Makefile.vxworks db21ed42a01d5740e656b16f92cb5d8d5e5dd315 F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6 F VERSION a8d1f6839521130dc73c5408cdd24bcfd791df34 @@ -140,7 +140,7 @@ F ext/rtree/viewrtree.tcl eea6224b3553599ae665b239bd827e182b466024 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 F magic.txt f2b23a6bde8f1c6e86b957e4d94eab0add520b0d -F main.mk 0c63aec9b9ecf66aaa8c09a02fcd74cf76e89ac8 +F main.mk 2e01504061f618db804812143a9e9ec45a66ae70 F mkdll.sh 7d09b23c05d56532e9d44a50868eb4b12ff4f74a F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f F mkextw.sh d2a981497b404d6498f5ff3e3b1f3816bdfcb338 @@ -1123,7 +1123,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff -P 977d2b12e5efc70c26129b08c1f6d65c9d6d211e -R bcbb126665574af7901e0480e4bce971 -U drh -Z bd333009a6747ce18c3ec43add5f57d2 +P 62959c0ce3a2c486ebd82e6511efad0412b944a0 +R c5b525d775079bac122c214ef10fb100 +U mistachkin +Z a753a3f398abd9b81fb8f5b8241736c7 diff --git a/manifest.uuid b/manifest.uuid index 3ac1dcb019..ae32dfe106 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -62959c0ce3a2c486ebd82e6511efad0412b944a0 \ No newline at end of file +8ff17c553d8c159fa81c961441e16dbba8da62ba \ No newline at end of file