]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
MSVC makefile enhancments for several command line tools and the session extensions.
authormistachkin <mistachkin@noemail.net>
Tue, 7 Feb 2017 21:09:34 +0000 (21:09 +0000)
committermistachkin <mistachkin@noemail.net>
Tue, 7 Feb 2017 21:09:34 +0000 (21:09 +0000)
FossilOrigin-Name: fc1dfe870279531d77ffb18a9ca4b4dcbc7aab8d

Makefile.msc
autoconf/Makefile.msc
manifest
manifest.uuid
tool/mkmsvcmin.tcl
tool/mksqlite3h.tcl

index 4a29f913c8061902845c0211ae6ddbfe321bd9ec..8b98fe4cac589818925a449e42237b32c38cb7bf 100644 (file)
@@ -1512,6 +1512,10 @@ FUZZERSHELL_COMPILE_OPTS = -DSQLITE_ENABLE_JSON1
 FUZZCHECK_COMPILE_OPTS = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5 -DSQLITE_OSS_FUZZ
 FUZZCHECK_SRC = $(TOP)\test\fuzzcheck.c $(TOP)\test\ossfuzz.c
 OSSSHELL_SRC = $(TOP)\test\ossshell.c $(TOP)\test\ossfuzz.c
+DBFUZZ_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION
+KV_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_DIRECT_OVERFLOW_READ
+DBSELFTEST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5
+ST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0
 
 # Standard options to testfixture.
 #
@@ -1554,7 +1558,7 @@ $(SQLITE3DLL):    $(LIBOBJ) $(LIBRESOBJS) $(CORE_LINK_DEP)
 sqlite3.def:   libsqlite3.lib
        echo EXPORTS > sqlite3.def
        dumpbin /all libsqlite3.lib \
-               | $(TCLSH_CMD) $(TOP)\tool\replace.tcl include "^\s+1 _?(sqlite3_[^@]*)(?:@\d+)?$$" \1 \
+               | $(TCLSH_CMD) $(TOP)\tool\replace.tcl include "^\s+1 _?(sqlite3(?:session|changeset)?_[^@]*)(?:@\d+)?$$" \1 \
                | sort >> sqlite3.def
 # <</block2>>
 
@@ -1581,6 +1585,9 @@ sourcetest:       srcck1.exe sqlite3.c
 fuzzershell.exe:       $(TOP)\tool\fuzzershell.c $(SQLITE3C) $(SQLITE3H)
        $(LTLINK) $(NO_WARN) $(FUZZERSHELL_COMPILE_OPTS) $(TOP)\tool\fuzzershell.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
+dbfuzz.exe:    $(TOP)\test\dbfuzz.c $(SQLITE3C) $(SQLITE3H)
+       $(LTLINK) $(NO_WARN) $(DBFUZZ_COMPILE_OPTS) $(TOP)\test\dbfuzz.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
+
 fuzzcheck.exe: $(FUZZCHECK_SRC) $(SQLITE3C) $(SQLITE3H)
        $(LTLINK) $(NO_WARN) $(FUZZCHECK_COMPILE_OPTS) $(FUZZCHECK_SRC) $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
@@ -2177,46 +2184,54 @@ testloadext.dll:        testloadext.lo
        $(LD) $(LDFLAGS) $(LTLINKOPTS) $(LTLIBPATHS) /DLL /OUT:$@ testloadext.lo
 
 showdb.exe:    $(TOP)\tool\showdb.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\tool\showdb.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 showstat4.exe: $(TOP)\tool\showstat4.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\tool\showstat4.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 showjournal.exe:       $(TOP)\tool\showjournal.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\tool\showjournal.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 showwal.exe:   $(TOP)\tool\showwal.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\tool\showwal.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
-changeset.exe: $(TOP)\ext\session\changeset.c $(SQLITE3C)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+changeset.exe: $(TOP)\ext\session\changeset.c $(SQLITE3C) $(SQLITE3H)
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
+               -DSQLITE_ENABLE_SESSION=1 -DSQLITE_ENABLE_PREUPDATE_HOOK=1 \
                $(TOP)\ext\session\changeset.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 fts3view.exe:  $(TOP)\ext\fts3\tool\fts3view.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\ext\fts3\tool\fts3view.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 rollback-test.exe:     $(TOP)\tool\rollback-test.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\tool\rollback-test.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 LogEst.exe:    $(TOP)\tool\logest.c $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -Fe$@ $(TOP)\tool\LogEst.c /link $(LDFLAGS) $(LTLINKOPTS)
+       $(LTLINK) $(NO_WARN) $(TOP)\tool\LogEst.c /link $(LDFLAGS) $(LTLINKOPTS)
 
 wordcount.exe: $(TOP)\test\wordcount.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\test\wordcount.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 speedtest1.exe:        $(TOP)\test\speedtest1.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
+       $(LTLINK) $(NO_WARN) $(ST_COMPILE_OPTS) -DSQLITE_OMIT_LOAD_EXTENSION \
                $(TOP)\test\speedtest1.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
+kvtest.exe:    $(TOP)\test\kvtest.c $(SQLITE3C) $(SQLITE3H)
+       $(LTLINK) $(NO_WARN) $(KV_COMPILE_OPTS) \
+               $(TOP)\test\kvtest.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
+
+dbselftest.exe:        $(TOP)\test\dbselftest.c $(SQLITE3C) $(SQLITE3H)
+       $(LTLINK) $(NO_WARN) $(DBSELFTEST_COMPILE_OPTS) $(TOP)\test\dbselftest.c $(SQLITE3C)
+
 rbu.exe:       $(TOP)\ext\rbu\rbu.c $(TOP)\ext\rbu\sqlite3rbu.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) -DSQLITE_ENABLE_RBU -Fe$@ \
+       $(LTLINK) $(NO_WARN) -DSQLITE_ENABLE_RBU \
                $(TOP)\ext\rbu\rbu.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 moreclean:     clean
index 32d03dbf354622b6480f435891a5f9de5744e907..32ef1c5434030bc94b915e460b523c3145f44235 100644 (file)
@@ -950,7 +950,7 @@ Replace.exe:
 sqlite3.def:   Replace.exe $(LIBOBJ)
        echo EXPORTS > sqlite3.def
        dumpbin /all $(LIBOBJ) \
-               | .\Replace.exe "^\s+/EXPORT:_?(sqlite3_[^@,]*)(?:@\d+|,DATA)?$$" $$1 true \
+               | .\Replace.exe "^\s+/EXPORT:_?(sqlite3(?:session|changeset)?_[^@,]*)(?:@\d+|,DATA)?$$" $$1 true \
                | sort >> sqlite3.def
 
 $(SQLITE3EXE): $(TOP)\shell.c $(SHELL_CORE_DEP) $(LIBRESOBJS) $(SHELL_CORE_SRC) $(SQLITE3H)
index cf619e924eefc7adb728e2ad4972dc40b9134905..a3e5404e7d828641b19e6706c7445a01083aa35e 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,8 +1,8 @@
-C Fix\sharmless\scompiler\swarnings\sin\sdbfuzz.
-D 2017-02-07T21:00:44.802
+C MSVC\smakefile\senhancments\sfor\sseveral\scommand\sline\stools\sand\sthe\ssession\sextensions.
+D 2017-02-07T21:09:34.792
 F Makefile.in edb6bcdd37748d2b1c3422ff727c748df7ffe918
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
-F Makefile.msc ba953c8921fc7e18333f61898007206de7e23964
+F Makefile.msc 067a6766f800cc8d72845ab61f8de4ffe8f3fc99
 F README.md 8ecc12493ff9f820cdea6520a9016001cb2e59b7
 F VERSION cddd8d88dc8202afa0ebc96da61fc4acbd1e96a5
 F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
@@ -11,7 +11,7 @@ F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
 F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
 F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
 F autoconf/Makefile.am 1a47d071e3d5435f8f7ebff7eb6703848bbd65d4
-F autoconf/Makefile.msc 3f29e0fc2a78e113250d79a5da375c1d8d8c06b0
+F autoconf/Makefile.msc 3de603bcec5c07462801a20fd7dc1b871400af99
 F autoconf/README.first 6c4f34fe115ff55d4e8dbfa3cecf04a0188292f7
 F autoconf/README.txt 4f04b0819303aabaa35fff5f7b257fb0c1ef95f1
 F autoconf/configure.ac cacf2616abf6e4a569bde2ef365c143caeec40bc
@@ -1489,7 +1489,7 @@ F tool/logest.c 11346aa019e2e77a00902aa7d0cabd27bd2e8cca
 F tool/max-limits.c cbb635fbb37ae4d05f240bfb5b5270bb63c54439
 F tool/mkautoconfamal.sh e855df211ecbcc7131dee817110ff386cfb112f7
 F tool/mkkeywordhash.c f7f3b342211ac6a14258b9726d5b97cf4f548f22
-F tool/mkmsvcmin.tcl 2f12f7fa8858bbe61cf81820a2da96c79ed1ca8d
+F tool/mkmsvcmin.tcl 95b37e202cbed873aa8ffdbb493b9db45927be2b
 F tool/mkopcodec.tcl d1b6362bd3aa80d5520d4d6f3765badf01f6c43c
 F tool/mkopcodeh.tcl a01d2c1d8a6205b03fc635adf3735b4c523befd3
 F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e
@@ -1497,7 +1497,7 @@ F tool/mkpragmatab.tcl ebb4bfcd2f8010e0a3934b6118db4b5f2f5edf5c
 F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97
 F tool/mksqlite3c-noext.tcl fef88397668ae83166735c41af99d79f56afaabb
 F tool/mksqlite3c.tcl 06b2e6a0f21cc0a5d70fbbd136b3e0a96470645e
-F tool/mksqlite3h.tcl c006c4e5da57c649b24b689511dcd270dd7b0249
+F tool/mksqlite3h.tcl b9836752c3d08f9fab2dfc0017ca9fd5d90ac863
 F tool/mksqlite3internalh.tcl eb994013e833359137eb53a55acdad0b5ae1049b
 F tool/mkvsix.tcl b9e0777a213c23156b6542842c238479e496ebf5
 F tool/offsets.c fe4262fdfa378e8f5499a42136d17bf3b98f6091
@@ -1555,7 +1555,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P db6b39937dd9d6fcd5fcc582c8dd529caad755da
-R f5b20543ad5a9de57f328e5cb19dc17f
-U drh
-Z 556fccfd2bf9ea9a682f73b7b4dda1ae
+P 61242267824135a9d5438ec15e3352a2f21dc2fc
+R 2db6df3e55ca3fe258c2e43d80c841d4
+U mistachkin
+Z ad604e11dbe50606213e8f571c7cab8e
index db9339c4af60552c3d8c11f2047a9a4116ddb87a..4a692b15018a6ca65a42399cbd84f6db30fa2af8 100644 (file)
@@ -1 +1 @@
-61242267824135a9d5438ec15e3352a2f21dc2fc
\ No newline at end of file
+fc1dfe870279531d77ffb18a9ca4b4dcbc7aab8d
\ No newline at end of file
index 88e7f9184ed3f8e678fe41de89a23ca54aacb0d8..bdd02be1fb0c450b7de1e8e6000257f93ee4adde 100644 (file)
@@ -83,7 +83,7 @@ Replace.exe:
 sqlite3.def:   Replace.exe $(LIBOBJ)
        echo EXPORTS > sqlite3.def
        dumpbin /all $(LIBOBJ) \\
-               | .\Replace.exe "^\s+/EXPORT:_?(sqlite3_[^@,]*)(?:@\d+|,DATA)?$$" $$1 true \\
+               | .\Replace.exe "^\s+/EXPORT:_?(sqlite3(?:session|changeset)?_[^@,]*)(?:@\d+|,DATA)?$$" $$1 true \\
                | sort >> sqlite3.def
 }]]
 
index 4f8a1fd49700aa49380647ee9644fa1d73529b60..9d307d1b1ee98acbc2594e529772c9b13b7ebc62 100644 (file)
@@ -73,7 +73,13 @@ close $in
 # Set up patterns for recognizing API declarations.
 #
 set varpattern {^[a-zA-Z][a-zA-Z_0-9 *]+sqlite3_[_a-zA-Z0-9]+(\[|;| =)}
-set declpattern {^ *([a-zA-Z][a-zA-Z_0-9 ]+ \**)(sqlite3_[_a-zA-Z0-9]+)(\(.*)$}
+set declpattern1 {^ *([a-zA-Z][a-zA-Z_0-9 ]+ \**)(sqlite3_[_a-zA-Z0-9]+)(\(.*)$}
+
+set declpattern2 \
+    {^ *([a-zA-Z][a-zA-Z_0-9 ]+ \**)(sqlite3session_[_a-zA-Z0-9]+)(\(.*)$}
+
+set declpattern3 \
+    {^ *([a-zA-Z][a-zA-Z_0-9 ]+ \**)(sqlite3changeset_[_a-zA-Z0-9]+)(\(.*)$}
 
 # Force the output to use unix line endings, even on Windows.
 fconfigure stdout -translation lf
@@ -121,7 +127,9 @@ foreach file $filelist {
     if {[regexp $varpattern $line] && ![regexp {^ *typedef} $line]} {
       set line "SQLITE_API $line"
     } else {
-      if {[regexp $declpattern $line all rettype funcname rest]} {
+      if {[regexp $declpattern1 $line all rettype funcname rest] || \
+          [regexp $declpattern2 $line all rettype funcname rest] || \
+          [regexp $declpattern3 $line all rettype funcname rest]} {
         set line SQLITE_API
         append line " " [string trim $rettype]
         if {[string index $rettype end] ne "*"} {