From 0008ce7cc5a320bc9ec796cab2eab0185c87f8e1 Mon Sep 17 00:00:00 2001 From: dan Date: Fri, 9 Oct 2015 11:09:47 +0000 Subject: [PATCH] Makefile and fts5 changes so that fts5 works with main.mk. Still does not work with Makefile.in. FossilOrigin-Name: 6ebac32d8378e46f44a6eb55aaa30baf4d7dde7d --- ext/fts5/fts5Int.h | 4 ---- ext/fts5/fts5_main.c | 22 ++++++++++++++++++---- ext/fts5/tool/mkfts5c.tcl | 6 ++++-- main.mk | 7 ++++--- manifest | 22 +++++++++++----------- manifest.uuid | 2 +- src/test1.c | 4 ---- 7 files changed, 38 insertions(+), 29 deletions(-) diff --git a/ext/fts5/fts5Int.h b/ext/fts5/fts5Int.h index 407c9efed1..ce066f2aa8 100644 --- a/ext/fts5/fts5Int.h +++ b/ext/fts5/fts5Int.h @@ -46,10 +46,6 @@ typedef sqlite3_uint64 u64; #endif -#ifndef SQLITE_PRIVATE -# define SQLITE_PRIVATE static -#endif - /* ** Maximum number of prefix indexes on single FTS5 table. This must be diff --git a/ext/fts5/fts5_main.c b/ext/fts5/fts5_main.c index 5aebc97fde..0fe204a3eb 100644 --- a/ext/fts5/fts5_main.c +++ b/ext/fts5/fts5_main.c @@ -2393,7 +2393,7 @@ static void fts5SourceIdFunc( sqlite3_result_text(pCtx, "--FTS5-SOURCE-ID--", -1, SQLITE_TRANSIENT); } -int sqlite3Fts5Init(sqlite3 *db){ +static int fts5Init(sqlite3 *db){ static const sqlite3_module fts5Mod = { /* iVersion */ 2, /* xCreate */ fts5CreateMethod, @@ -2454,6 +2454,15 @@ int sqlite3Fts5Init(sqlite3 *db){ return rc; } +/* +** The following functions are used to register the module with SQLite. If +** this module is being built as part of the SQLite core (SQLITE_CORE is +** defined), then sqlite3_open() will call sqlite3Fts5Init() directly. +** +** Or, if this module is being built as a loadable extension, +** sqlite3Fts5Init() is omitted and the two standard entry points +** sqlite3_fts_init() and sqlite3_fts5_init() defined instead. +*/ #ifndef SQLITE_CORE #ifdef _WIN32 __declspec(dllexport) @@ -2465,9 +2474,8 @@ int sqlite3_fts_init( ){ SQLITE_EXTENSION_INIT2(pApi); (void)pzErrMsg; /* Unused parameter */ - return sqlite3Fts5Init(db); + return fts5Init(db); } -#endif #ifdef _WIN32 __declspec(dllexport) @@ -2479,5 +2487,11 @@ int sqlite3_fts5_init( ){ SQLITE_EXTENSION_INIT2(pApi); (void)pzErrMsg; /* Unused parameter */ - return sqlite3Fts5Init(db); + return fts5Init(db); } +#else +int sqlite3Fts5Init(sqlite3 *db){ + return fts5Init(db); +} +#endif + diff --git a/ext/fts5/tool/mkfts5c.tcl b/ext/fts5/tool/mkfts5c.tcl index c1acf8a493..535506de1b 100644 --- a/ext/fts5/tool/mkfts5c.tcl +++ b/ext/fts5/tool/mkfts5c.tcl @@ -87,8 +87,10 @@ proc fts5c_printfile {zIn} { foreach line [split $data "\n"] { if {[regexp {^#include.*fts5} $line]} continue - if {[regexp {^(const )?[a-zA-Z][a-zA-Z0-9]* [*]?sqlite3Fts5} $line]} { - set line "SQLITE_PRIVATE $line" + if { ![regexp { sqlite3Fts5Init\(} $line] + && [regexp {^(const )?[a-zA-Z][a-zA-Z0-9]* [*]?sqlite3Fts5} $line] + } { + set line "static $line" } set line [string map $sub_map $line] puts $G(fd) $line diff --git a/main.mk b/main.mk index 98a906eaaf..66068f668c 100644 --- a/main.mk +++ b/main.mk @@ -57,7 +57,8 @@ THREADLIB += $(LIBS) LIBOBJ+= vdbe.o parse.o \ alter.o analyze.o attach.o auth.o \ backup.o bitvec.o btmutex.o btree.o build.o \ - callback.o complete.o ctime.o date.o dbstat.o delete.o expr.o fault.o fkey.o \ + callback.o complete.o ctime.o date.o dbstat.o delete.o expr.o \ + fault.o fkey.o \ fts3.o fts3_aux.o fts3_expr.o fts3_hash.o fts3_icu.o fts3_porter.o \ fts3_snippet.o fts3_tokenizer.o fts3_tokenizer1.o \ fts3_tokenize_vtab.o \ @@ -728,9 +729,9 @@ testfixture$(EXE): $(TESTSRC2) libsqlite3.a $(TESTSRC) $(TOP)/src/tclsqlite.c $(TESTSRC) $(TESTSRC2) $(TOP)/src/tclsqlite.c \ -o testfixture$(EXE) $(LIBTCL) libsqlite3.a $(THREADLIB) -amalgamation-testfixture$(EXE): sqlite3.c fts5.c $(TESTSRC) $(TOP)/src/tclsqlite.c +amalgamation-testfixture$(EXE): sqlite3.c $(TESTSRC) $(TOP)/src/tclsqlite.c $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ - $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c fts5.c \ + $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c \ -o testfixture$(EXE) $(LIBTCL) $(THREADLIB) fts3-testfixture$(EXE): sqlite3.c fts3amal.c $(TESTSRC) $(TOP)/src/tclsqlite.c diff --git a/manifest b/manifest index 2e1fa12c7f..1e1981c630 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Trying\sto\sget\sFTS5\stests\sto\sbuild\sand\srun\susing\smain.mk.\s\sNot\syet\sworking. -D 2015-10-09T01:42:49.474 +C Makefile\sand\sfts5\schanges\sso\sthat\sfts5\sworks\swith\smain.mk.\sStill\sdoes\snot\swork\swith\sMakefile.in. +D 2015-10-09T11:09:47.175 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in f0088ff0d2ac949fce6de7c00f13a99ac5bdb663 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -106,14 +106,14 @@ F ext/fts3/unicode/mkunicode.tcl 95cf7ec186e48d4985e433ff8a1c89090a774252 F ext/fts3/unicode/parseunicode.tcl da577d1384810fb4e2b209bf3313074353193e95 F ext/fts5/extract_api_docs.tcl a36e54ec777172ddd3f9a88daf593b00848368e0 F ext/fts5/fts5.h 98f802fe41481f9d797fce496f0fefcad72c7782 -F ext/fts5/fts5Int.h 3e682a711ffa249cb327eec5c1b3e5a3deba4050 +F ext/fts5/fts5Int.h ed6c05b803e0bacf85228a8d255853e89796f6f5 F ext/fts5/fts5_aux.c b09aa27dcdaa3d50a30be433fddaa48a50aa827b F ext/fts5/fts5_buffer.c b2fb69c1ee3378956c0d9ee964d61b59d296afaf F ext/fts5/fts5_config.c 57ee5fe71578cb494574fc0e6e51acb9a22a8695 F ext/fts5/fts5_expr.c 1df899afed24c9c6195eea1780dcc56fcd1d1139 F ext/fts5/fts5_hash.c 4bf4b99708848357b8a2b5819e509eb6d3df9246 F ext/fts5/fts5_index.c e03217c37f344f79673be385de6b03f732291000 -F ext/fts5/fts5_main.c d159079e618399f9b531ad1fe32772cff307ea91 +F ext/fts5/fts5_main.c 5125711e806d5d9382b4b12f71bd8a7b5e103ec6 F ext/fts5/fts5_storage.c df061a5caf9e50fbbd43113009b5b248362f4995 F ext/fts5/fts5_tcl.c 3bf445e66de32137d4693694ff7b1fd6074e32bd F ext/fts5/fts5_test_mi.c e96be827aa8f571031e65e481251dc1981d608bf @@ -186,7 +186,7 @@ F ext/fts5/test/fts5version.test 978f59541d8cef7e8591f8be2115ec5ccb863e2e F ext/fts5/test/fts5vocab.test cdf97b9678484e9bad5062edf9c9106e5c3b0c5c F ext/fts5/tool/fts5txt2db.tcl 3d19fb8ffb234031d33d7d2151acfbc55e9cfcc4 F ext/fts5/tool/loadfts5.tcl 58e90407cc5c2b1770460119488fd7c0090d4dd3 -F ext/fts5/tool/mkfts5c.tcl 21552771bdb9e2a44a975a1a84ffa0a5a39d57f0 +F ext/fts5/tool/mkfts5c.tcl 09ce6a7997440508360f5ba1651ab7e923a8bf31 F ext/fts5/tool/showfts5.tcl 9eaf6c3df352f98a2ab5ce1921dd94128ab1381d F ext/icu/README.txt d9fbbad0c2f647c3fdf715fc9fd64af53aedfc43 F ext/icu/icu.c b2732aef0b076e4276d9b39b5a33cec7a05e1413 @@ -264,7 +264,7 @@ F ext/userauth/userauth.c 5fa3bdb492f481bbc1709fc83c91ebd13460c69e F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60 -F main.mk 82271e141b6b15693a66ddbdd1285c36e8606841 +F main.mk 784763e87a5080abc749d6263198bbe5aa93fd20 F mkopcodec.awk c2ff431854d702cdd2d779c9c0d1f58fa16fa4ea F mkopcodeh.awk 0e7f04a8eb90f92259e47d80110e4e98d7ce337a F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83 @@ -353,7 +353,7 @@ F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46 F src/status.c f266ad8a2892d659b74f0f50cb6a88b6e7c12179 F src/table.c 51b46b2a62d1b3a959633d593b89bab5e2c9155e F src/tclsqlite.c d9439b6a910985b7fff43ba6756bcef00de22649 -F src/test1.c 5d1bbac006ef00e6fe4332c554a7cd96abe5fa42 +F src/test1.c 8fff9c5aa63d6490f516d018b70c12a9cb9a4d8a F src/test2.c 577961fe48961b2f2e5c8b56ee50c3f459d3359d F src/test3.c 64d2afdd68feac1bb5e2ffb8226c8c639f798622 F src/test4.c d168f83cc78d02e8d35567bb5630e40dcd85ac1e @@ -1390,7 +1390,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 2928f8e87d2e5d121e6e7e5993cbb773bb2b0603 -R 2760e46734f295e8733b8a00f5d6ba3d -U drh -Z 9cc40c2d063b915018c36739ed3ed59a +P 206174f9b154c590a3e2e94236db38e111d64bdb +R 7677b595a4a025d5b5c3743b20676b45 +U dan +Z 2d1f0773394fa57beba698d5cfa49140 diff --git a/manifest.uuid b/manifest.uuid index bcd6fffe1f..1147fff002 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -206174f9b154c590a3e2e94236db38e111d64bdb \ No newline at end of file +6ebac32d8378e46f44a6eb55aaa30baf4d7dde7d \ No newline at end of file diff --git a/src/test1.c b/src/test1.c index df00e1943e..6c47754bf9 100644 --- a/src/test1.c +++ b/src/test1.c @@ -6384,7 +6384,6 @@ static int tclLoadStaticExtensionCmd( extern int sqlite3_spellfix_init(sqlite3*,char**,const sqlite3_api_routines*); extern int sqlite3_totype_init(sqlite3*,char**,const sqlite3_api_routines*); extern int sqlite3_wholenumber_init(sqlite3*,char**,const sqlite3_api_routines*); - extern int sqlite3_fts5_init(sqlite3*,char**,const sqlite3_api_routines*); static const struct { const char *zExtName; int (*pInit)(sqlite3*,char**,const sqlite3_api_routines*); @@ -6392,9 +6391,6 @@ static int tclLoadStaticExtensionCmd( { "amatch", sqlite3_amatch_init }, { "closure", sqlite3_closure_init }, { "eval", sqlite3_eval_init }, -#ifdef SQLITE_ENABLE_FTS5 - { "fts5", sqlite3_fts5_init }, -#endif { "fileio", sqlite3_fileio_init }, { "fuzzer", sqlite3_fuzzer_init }, { "ieee754", sqlite3_ieee_init }, -- 2.47.2