]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add a rule to main.mk to build the schemalint.tcl script into an executable. Similar...
authordan <dan@noemail.net>
Mon, 30 Nov 2015 19:16:00 +0000 (19:16 +0000)
committerdan <dan@noemail.net>
Mon, 30 Nov 2015 19:16:00 +0000 (19:16 +0000)
FossilOrigin-Name: b8251065db9dbe5463490316baa09dc636551377

main.mk
manifest
manifest.uuid
tool/schemalint.tcl

diff --git a/main.mk b/main.mk
index 838e0753d99f327a47c27897969a9f45be6cfb02..9ee3af7289e482cd8c3d41ff2da270855e3e9a8a 100644 (file)
--- a/main.mk
+++ b/main.mk
@@ -715,6 +715,20 @@ sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl
 sqlite3_analyzer$(EXE): sqlite3_analyzer.c
        $(TCCX) $(TCL_FLAGS) sqlite3_analyzer.c -o $@ $(LIBTCL) $(THREADLIB) 
 
+sqlite3_schemalint.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/schemalint.tcl
+       echo "#define TCLSH 2" > $@
+       echo "#define SQLITE_ENABLE_DBSTAT_VTAB 1" >> $@
+       cat sqlite3.c $(TOP)/src/tclsqlite.c >> $@
+       echo "static const char *tclsh_main_loop(void){" >> $@
+       echo "static const char *zMainloop = " >> $@
+       tclsh $(TOP)/tool/tostr.tcl $(TOP)/tool/schemalint.tcl >> $@
+       echo "; return zMainloop; }" >> $@
+
+sqlite3_schemalint$(EXE): $(TESTSRC) sqlite3_schemalint.c
+       $(TCCX) $(TCL_FLAGS) $(TESTFIXTURE_FLAGS)                  \
+               sqlite3_schemalint.c $(TESTSRC)               \
+               -o sqlite3_schemalint$(EXE) $(LIBTCL) $(THREADLIB)
+
 # Rules to build the 'testfixture' application.
 #
 TESTFIXTURE_FLAGS  = -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1
index 16b150e61df68f8f78ad084559b28423186724f9..7fe67fd96f639349a1e65962a1eb80de168ebf0f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sthe\sschemalint.tcl\sscript\sto\shandle\sidentifiers\sthat\srequire\squoting.
-D 2015-11-30T18:17:55.036
+C Add\sa\srule\sto\smain.mk\sto\sbuild\sthe\sschemalint.tcl\sscript\sinto\san\sexecutable.\sSimilar\sto\sthe\sway\sthe\ssqlite3_analyzer\sexecutable\sis\sbuilt.
+D 2015-11-30T19:16:00.031
 F Makefile.in d828db6afa6c1fa060d01e33e4674408df1942a1
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc e928e68168df69b353300ac87c10105206653a03
@@ -263,7 +263,7 @@ F ext/userauth/userauth.c 5fa3bdb492f481bbc1709fc83c91ebd13460c69e
 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
 F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
-F main.mk ae99be5eb22933b1ecf80f94d41d25a3ea80aaf3
+F main.mk 0aec7410e847a886ed8260b829e4e72f060b0431
 F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83
 F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
@@ -1381,7 +1381,7 @@ F tool/replace.tcl 7727c60a04299b65a92f5e1590896fea0f25b9e0
 F tool/restore_jrnl.tcl 6957a34f8f1f0f8285e07536225ec3b292a9024a
 F tool/rollback-test.c 9fc98427d1e23e84429d7e6d07d9094fbdec65a5
 F tool/run-speed-test.sh 0ae485af4fe9f826e2b494be8c81f8ca9e222a4a
-F tool/schemalint.tcl 2f44d0874061a948f6ef53505062db4ac9806cf7
+F tool/schemalint.tcl 045481a427ecdb72d11a0b0ef8725e7b892a09b9
 F tool/showdb.c d4476e000a64eca9f5e2c2f68741e747b9778e8d
 F tool/showjournal.c 5bad7ae8784a43d2b270d953060423b8bd480818
 F tool/showlocks.c 9920bcc64f58378ff1118caead34147201f48c68
@@ -1406,7 +1406,7 @@ F tool/vdbe_profile.tcl 246d0da094856d72d2c12efec03250d71639d19f
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P d3aa067c830e98f2074630c4613c557b0ce90a57
-R aed657578ea11902053a31be3048325d
+P 451e0fafbe5b7e9c67d9b584d5e16796c3196881
+R 8aa86746f90305c3990fbec7bea3f626
 U dan
-Z 94438cf65b515737c9a10851485e87ac
+Z e9b16724c3379c54748ede3fe8135436
index f83d5d89f678fefcf355a2ea0c926b33d840f23f..d7238464305b327170f542dfc3d6d109acf2cc1d 100644 (file)
@@ -1 +1 @@
-451e0fafbe5b7e9c67d9b584d5e16796c3196881
\ No newline at end of file
+b8251065db9dbe5463490316baa09dc636551377
\ No newline at end of file
index b6ebd4390d5ba4e66beeed3346587170d5410624..99e347666123bb6e6a120e1b084f94b4bfa09841 100644 (file)
@@ -1,3 +1,4 @@
+if {[catch {
 
 set ::VERBOSE 0
 
@@ -553,10 +554,17 @@ proc sqlidx_internal_tests {} {
 # End of internal test code.
 #-------------------------------------------------------------------------
 
+if {[info exists ::argv0]==0} { set ::argv0 [info nameofexec] }
+if {[info exists ::argv]==0} usage
 sqlidx_init_context D
-process_cmdline_args D $argv
+process_cmdline_args D $::argv
 open_database D
 analyze_selects D
 find_trial_indexes D
 foreach idx [run_trials D] { puts $idx }
 
+} err]} {
+  puts "ERROR: $err"
+  puts $errorInfo
+  exit 1
+}