From d7f2beab86e0cb91af99a767d19955225eb5b7c5 Mon Sep 17 00:00:00 2001 From: drh Date: Sat, 19 Sep 2015 14:32:51 +0000 Subject: [PATCH] Include json1.c in fuzzcheck and fuzzershell. FossilOrigin-Name: c4b68eff7f8f5402a9abf378157767b1c96a6101 --- Makefile.in | 21 ++++++++++++++------- Makefile.msc | 19 +++++++++++++------ main.mk | 23 +++++++++++++++-------- manifest | 20 ++++++++++---------- manifest.uuid | 2 +- test/fuzzcheck.c | 6 ++++++ tool/fuzzershell.c | 7 +++++++ 7 files changed, 66 insertions(+), 32 deletions(-) diff --git a/Makefile.in b/Makefile.in index 99af3e44e5..f62b76ed61 100644 --- a/Makefile.in +++ b/Makefile.in @@ -540,6 +540,12 @@ FUZZDATA = \ $(TOP)/test/fuzzdata2.db \ $(TOP)/test/fuzzdata3.db +# Extra arguments for including json1 in the build of tools +# +JSON1_DEP = $(TOP)/ext/misc/json1.c sqlite3ext.h +JSON1_OPT = -DSQLITE_ENABLE_JSON1 +JSON1_SRC = $(TOP)/ext/misc/json1.c + # Standard options to testfixture # TESTOPTS = --verbose=file --output=test-out.txt @@ -566,19 +572,20 @@ libtclsqlite3.la: tclsqlite.lo libsqlite3.la -version-info "8:6:8" \ -avoid-version -sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h $(TOP)/ext/misc/json1.c - $(LTLINK) $(READLINE_FLAGS) -DSQLITE_ENABLE_JSON1 -o $@ \ - $(TOP)/src/shell.c $(TOP)/ext/misc/json1.c libsqlite3.la \ +sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h $(JSON1_DEP) + $(LTLINK) $(READLINE_FLAGS) $(JSON1_OPT) -o $@ \ + $(TOP)/src/shell.c $(JSON1_SRC) libsqlite3.la \ $(LIBREADLINE) $(TLIBS) -rpath "$(libdir)" sqldiff$(TEXE): $(TOP)/tool/sqldiff.c sqlite3.c sqlite3.h $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c sqlite3.c $(TLIBS) -fuzzershell$(TEXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h - $(LTLINK) -o $@ $(TOP)/tool/fuzzershell.c sqlite3.c $(TLIBS) +fuzzershell$(TEXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h $(JSON1_DEP) + $(LTLINK) -o $@ $(JSON1_OPT) \ + $(TOP)/tool/fuzzershell.c $(JSON1_SRC) sqlite3.c $(TLIBS) -fuzzcheck$(TEXE): $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h - $(LTLINK) -o $@ $(TOP)/test/fuzzcheck.c sqlite3.c $(TLIBS) +fuzzcheck$(TEXE): $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h $(JSON1_DEP) + $(LTLINK) -o $@ $(JSON1_OPT) $(TOP)/test/fuzzcheck.c $(JSON1_SRC) sqlite3.c $(TLIBS) mptester$(TEXE): sqlite3.c $(TOP)/mptest/mptest.c $(LTLINK) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.c \ diff --git a/Makefile.msc b/Makefile.msc index 7b971aa2f1..c361a6828c 100644 --- a/Makefile.msc +++ b/Makefile.msc @@ -1209,6 +1209,12 @@ FUZZDATA = \ $(TOP)\test\fuzzdata2.db \ $(TOP)\test\fuzzdata3.db +# Extra arguments for including json1 in the build of tools +# +JSON1_DEP = $(TOP)\ext\misc\json1.c sqlite3ext.h +JSON1_OPT = -DSQLITE_ENABLE_JSON1 +JSON1_SRC = $(TOP)\ext\misc\json1.c + # Standard options to testfixture # TESTOPTS = --verbose=file --output=test-out.txt @@ -1224,18 +1230,19 @@ libsqlite3.lib: $(LIBOBJ) libtclsqlite3.lib: tclsqlite.lo libsqlite3.lib $(LTLIB) $(LTLIBOPTS) $(LTLIBPATHS) /OUT:$@ tclsqlite.lo libsqlite3.lib $(LIBTCL:tcl=tclstub) $(TLIBS) -sqlite3.exe: $(TOP)\src\shell.c $(TOP)\ext\misc\json1.c $(SHELL_CORE_DEP) $(LIBRESOBJS) sqlite3.h - $(LTLINK) $(SHELL_COMPILE_OPTS) $(READLINE_FLAGS) $(TOP)\src\shell.c $(TOP)\ext\misc\json1.c \ +sqlite3.exe: $(TOP)\src\shell.c $(JSON1_DEP) $(SHELL_CORE_DEP) $(LIBRESOBJS) sqlite3.h + $(LTLINK) $(SHELL_COMPILE_OPTS) $(JSON1_OPT) $(READLINE_FLAGS) $(TOP)\src\shell.c $(JSON1_SRC) \ /link /pdb:sqlite3sh.pdb $(LTLINKOPTS) $(SHELL_LINK_OPTS) $(LTLIBPATHS) $(LIBRESOBJS) $(LIBREADLINE) $(LTLIBS) $(TLIBS) sqldiff.exe: $(TOP)\tool\sqldiff.c sqlite3.c sqlite3.h $(LTLINK) $(NO_WARN) $(TOP)\tool\sqldiff.c sqlite3.c -fuzzershell.exe: $(TOP)\tool\fuzzershell.c sqlite3.c sqlite3.h - $(LTLINK) $(NO_WARN) $(TOP)\tool\fuzzershell.c sqlite3.c +fuzzershell.exe: $(TOP)\tool\fuzzershell.c sqlite3.c sqlite3.h $(JSON1_DEP) + $(LTLINK) $(NO_WARN) $(JSON1_OPT) \ + $(TOP)\tool\fuzzershell.c $(JSON1_SRC) sqlite3.c -fuzzcheck.exe: $(TOP)\test\fuzzcheck.c sqlite3.c sqlite3.h - $(LTLINK) $(NO_WARN) $(TOP)\test\fuzzcheck.c sqlite3.c +fuzzcheck.exe: $(TOP)\test\fuzzcheck.c sqlite3.c sqlite3.h $(JSON1_DEP) + $(LTLINK) $(NO_WARN) $(JSON1_OPT) $(TOP)\test\fuzzcheck.c $(JSON1_SRC) sqlite3.c mptester.exe: $(TOP)\mptest\mptest.c $(SHELL_CORE_DEP) $(LIBRESOBJS) sqlite3.h $(LTLINK) $(NO_WARN) $(SHELL_COMPILE_OPTS) $(TOP)\mptest\mptest.c \ diff --git a/main.mk b/main.mk index 3668c84321..cadb1d10e2 100644 --- a/main.mk +++ b/main.mk @@ -450,6 +450,12 @@ FUZZDATA = \ $(TOP)/test/fuzzdata2.db \ $(TOP)/test/fuzzdata3.db +# Extra arguments for including json1 in the build of tools +# +JSON1_DEP = $(TOP)/ext/misc/json1.c sqlite3ext.h +JSON1_OPT = -DSQLITE_ENABLE_JSON1 +JSON1_SRC = $(TOP)/ext/misc/json1.c + # Standard options to testfixture # TESTOPTS = --verbose=file --output=test-out.txt @@ -463,23 +469,24 @@ libsqlite3.a: $(LIBOBJ) $(AR) libsqlite3.a $(LIBOBJ) $(RANLIB) libsqlite3.a -sqlite3$(EXE): $(TOP)/src/shell.c libsqlite3.a sqlite3.h $(TOP)/ext/misc/json1.c - $(TCCX) $(READLINE_FLAGS) -DSQLITE_ENABLE_JSON1 -o sqlite3$(EXE) \ - $(TOP)/src/shell.c $(TOP)/ext/misc/json1.c \ +sqlite3$(EXE): $(TOP)/src/shell.c libsqlite3.a sqlite3.h $(JSON1_DEP) + $(TCCX) $(READLINE_FLAGS) $(JSON1_OPT) -o sqlite3$(EXE) \ + $(TOP)/src/shell.c $(JSON1_SRC) \ libsqlite3.a $(LIBREADLINE) $(TLIBS) $(THREADLIB) sqldiff$(EXE): $(TOP)/tool/sqldiff.c sqlite3.c sqlite3.h $(TCCX) -o sqldiff$(EXE) -DSQLITE_THREADSAFE=0 \ $(TOP)/tool/sqldiff.c sqlite3.c $(TLIBS) $(THREADLIB) -fuzzershell$(EXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h +fuzzershell$(EXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h $(JSON1_DEP) $(TCCX) -o fuzzershell$(EXE) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \ - $(TOP)/tool/fuzzershell.c sqlite3.c $(TLIBS) $(THREADLIB) + $(JSON1_OPT) $(TOP)/tool/fuzzershell.c $(JSON1_SRC) sqlite3.c \ + $(TLIBS) $(THREADLIB) -fuzzcheck$(EXE): $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h +fuzzcheck$(EXE): $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h $(JSON1_DEP) $(TCCX) -o fuzzcheck$(EXE) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \ - -DSQLITE_ENABLE_MEMSYS5 \ - $(TOP)/test/fuzzcheck.c sqlite3.c $(TLIBS) $(THREADLIB) + -DSQLITE_ENABLE_MEMSYS5 $(JSON1_OPT) \ + $(TOP)/test/fuzzcheck.c $(JSON1_SRC) sqlite3.c $(TLIBS) $(THREADLIB) mptester$(EXE): sqlite3.c $(TOP)/mptest/mptest.c $(TCCX) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.c \ diff --git a/manifest b/manifest index 0ecd01d425..13ab712bed 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Fix\sa\sdocumentation\stypo\sin\ssqlite3_bind_parameter_index().\s\sNo\scode\schanges. -D 2015-09-19T12:04:27.400 +C Include\sjson1.c\sin\sfuzzcheck\sand\sfuzzershell. +D 2015-09-19T14:32:51.442 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f -F Makefile.in f85066ce844a28b671aaeeff320921cd0ce36239 +F Makefile.in 8c58e3fb3db4deba588aeaf52ec7360127a108d1 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 -F Makefile.msc b268d8be2e800b9d35f074b1ed6b2f698deebdd6 +F Makefile.msc 2973da92ee9fb51cbe239a6e6b8fcb6ec59f22b1 F Makefile.vxworks e1b65dea203f054e71653415bd8f96dcaed47858 F README.md 8ecc12493ff9f820cdea6520a9016001cb2e59b7 F VERSION ccfc4d1576dbfdeece0a4372a2e6a2e37d3e7975 @@ -261,7 +261,7 @@ F ext/userauth/userauth.c 5fa3bdb492f481bbc1709fc83c91ebd13460c69e F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60 -F main.mk 58eb74de702467c3b71cdf06f213cefe7f5ce544 +F main.mk 4608fb4595a7fefea3cd75b9512f04640c7eb53a F mkopcodec.awk c2ff431854d702cdd2d779c9c0d1f58fa16fa4ea F mkopcodeh.awk 0e7f04a8eb90f92259e47d80110e4e98d7ce337a F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83 @@ -749,7 +749,7 @@ F test/fuzz2.test 76dc35b32b6d6f965259508508abce75a6c4d7e1 F test/fuzz3.test 53fabcd5f0f430f8b221282f6c12c4d0903c21eb F test/fuzz_common.tcl a87dfbb88c2a6b08a38e9a070dabd129e617b45b F test/fuzz_malloc.test 328f70aaca63adf29b4c6f06505ed0cf57ca7c26 -F test/fuzzcheck.c 79980bbc00e19ad44c3ba6699e643348572757a2 +F test/fuzzcheck.c 01d2ca69f8ccfabd9bd7902e7db08e13a048dc32 F test/fuzzdata1.db 7ee3227bad0e7ccdeb08a9e6822916777073c664 F test/fuzzdata2.db f03a420d3b822cc82e4f894ca957618fbe9c4973 F test/fuzzdata3.db 1d6044c33a114007f02b6e6846f1fa232f607bfd @@ -1338,7 +1338,7 @@ F tool/diffdb.c 7524b1b5df217c20cd0431f6789851a4e0cb191b F tool/extract.c 054069d81b095fbdc189a6f5d4466e40380505e2 F tool/fast_vacuum.c 5ba0d6f5963a0a63bdc42840f678bad75b2ebce1 F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439 -F tool/fuzzershell.c f2fc86dd22df654b28851b85019d3bd007361751 +F tool/fuzzershell.c 237521ed274d4415e99da45279f2c741a002c085 F tool/genfkey.README cf68fddd4643bbe3ff8e31b8b6d8b0a1b85e20f4 F tool/genfkey.test 4196a8928b78f51d54ef58e99e99401ab2f0a7e5 F tool/getlock.c f4c39b651370156cae979501a7b156bdba50e7ce @@ -1387,7 +1387,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P d2a027372a5a6efc0f9b6f605093d865ae1c6788 -R c41e9a084ff64ab3e810b45fed1e48ed +P 650605a820f3860b1d6e955cdda23aaff01dfdb5 +R d0993aaef717be33182c6b3fe246bf7b U drh -Z 080732f46e4b4495cad0623b9691645c +Z 5bec8cd0af94eb356b04bad4a020f93f diff --git a/manifest.uuid b/manifest.uuid index 50d45ada46..27f2f4f2e5 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -650605a820f3860b1d6e955cdda23aaff01dfdb5 \ No newline at end of file +c4b68eff7f8f5402a9abf378157767b1c96a6101 \ No newline at end of file diff --git a/test/fuzzcheck.c b/test/fuzzcheck.c index c678e2af7a..92ce63bea3 100644 --- a/test/fuzzcheck.c +++ b/test/fuzzcheck.c @@ -1039,6 +1039,12 @@ int main(int argc, char **argv){ } rc = sqlite3_open_v2("main.db", &db, openFlags, zVfs); if( rc ) fatalError("cannot open inmem database"); +#ifdef SQLITE_ENABLE_JSON1 + { + extern int sqlite3_json_init(sqlite3*); + sqlite3_json_init(db); + } +#endif if( cellSzCkFlag ) runSql(db, "PRAGMA cell_size_check=ON", runFlags); setAlarm(iTimeout); #ifndef SQLITE_OMIT_PROGRESS_CALLBACK diff --git a/tool/fuzzershell.c b/tool/fuzzershell.c index 2778c9d2f7..e7d5dbdf46 100644 --- a/tool/fuzzershell.c +++ b/tool/fuzzershell.c @@ -601,6 +601,13 @@ int main(int argc, char **argv){ zIn = malloc(nAlloc); if( zIn==0 ) fatalError("out of memory"); +#ifdef SQLITE_ENABLE_JSON1 + { + extern int sqlite3_json_init(sqlite3*); + sqlite3_auto_extension((void(*)(void))sqlite3_json_init); + } +#endif + /* Loop over all input files */ for(jj=0; jj