Modify the non-configure build system to make it easier to build the library with the fts2 or icu extensions linked in. (CVS 4121)

FossilOrigin-Name: 02b23c4394da7efb82e9318146f10818b0f68b1f
This commit is contained in:
danielk1977 2007-06-25 14:28:48 +00:00
parent 397aa141ed
commit 576d3db541
5 changed files with 46 additions and 18 deletions

View File

@ -13,9 +13,6 @@
** We've modified it slightly to serve as a standalone hash table
** implementation for the full-text indexing module.
*/
#include <assert.h>
#include <stdlib.h>
#include <string.h>
/*
** The code in this file is only compiled if:
@ -28,6 +25,9 @@
*/
#if !defined(SQLITE_CORE) || defined(SQLITE_ENABLE_FTS2)
#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include "fts2_hash.h"

View File

@ -340,12 +340,12 @@ int sqlite3Fts2InitHashTable(
){
int rc;
void *p = (void *)pHash;
void *pdb = (void *)db;
const int any = SQLITE_ANY;
char *zTest = 0;
char *zTest2 = 0;
#ifdef SQLITE_TEST
void *pdb = (void *)db;
zTest = sqlite3_mprintf("%s_test", zName);
zTest2 = sqlite3_mprintf("%s_internal_test", zName);
if( !zTest || !zTest2 ){

36
main.mk
View File

@ -65,6 +65,9 @@ LIBOBJ+= alter.o analyze.o attach.o auth.o btree.o build.o \
vdbe.o vdbeapi.o vdbeaux.o vdbeblob.o vdbefifo.o vdbemem.o \
where.o utf.o legacy.o vtab.o
EXTOBJ = icu.o fts2.o fts2_hash.o fts2_icu.o fts2_porter.o \
fts2_tokenizer.o fts2_tokenizer1.o
# All of the source code files.
#
SRC = \
@ -202,7 +205,8 @@ TESTSRC = \
$(TOP)/src/util.c \
$(TOP)/src/vdbe.c \
$(TOP)/src/vdbeaux.c \
$(TOP)/src/where.c
$(TOP)/src/where.c \
$(TOP)/ext/fts2/fts2_tokenizer.c
# Header files used by all library source files.
#
@ -249,8 +253,8 @@ last_change: $(SRC)
cat $(SRC) | grep '$$Id: ' | sort -k 5 | tail -1 \
| $(NAWK) '{print $$5,$$6}' >last_change
libsqlite3.a: $(LIBOBJ)
$(AR) libsqlite3.a $(LIBOBJ)
libsqlite3.a: $(LIBOBJ) $(EXTOBJ)
$(AR) libsqlite3.a $(LIBOBJ) $(EXTOBJ)
$(RANLIB) libsqlite3.a
sqlite3$(EXE): $(TOP)/src/shell.c libsqlite3.a sqlite3.h
@ -450,6 +454,30 @@ vtab.o: $(TOP)/src/vtab.c $(VDBEHDR) $(HDR)
where.o: $(TOP)/src/where.c $(HDR)
$(TCCX) -c $(TOP)/src/where.c
# Rules to build the extension objects.
#
icu.o: $(TOP)/ext/icu/icu.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/icu/icu.c
fts2.o: $(TOP)/ext/fts2/fts2.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2.c
fts2_hash.o: $(TOP)/ext/fts2/fts2_hash.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_hash.c
fts2_icu.o: $(TOP)/ext/fts2/fts2_icu.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_icu.c
fts2_porter.o: $(TOP)/ext/fts2/fts2_porter.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_porter.c
fts2_tokenizer.o: $(TOP)/ext/fts2/fts2_tokenizer.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer.c
fts2_tokenizer1.o: $(TOP)/ext/fts2/fts2_tokenizer1.c $(HDR) $(EXTHDR)
$(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer1.c
# Rules for building test programs and for running tests
#
tclsqlite3: $(TOP)/src/tclsqlite.c libsqlite3.a
@ -459,7 +487,7 @@ tclsqlite3: $(TOP)/src/tclsqlite.c libsqlite3.a
testfixture$(EXE): $(TOP)/src/tclsqlite.c libsqlite3.a $(TESTSRC)
$(TCCX) $(TCL_FLAGS) -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 \
-DSQLITE_SERVER=1 -o testfixture$(EXE) \
$(TESTSRC) $(EXTSRC) $(TOP)/src/tclsqlite.c \
-DSQLITE_CORE $(TESTSRC) $(TOP)/src/tclsqlite.c \
libsqlite3.a $(LIBTCL) $(THREADLIB)
fulltest: testfixture$(EXE) sqlite3$(EXE)

View File

@ -1,5 +1,5 @@
C Put\s#ifdefs\sin\sfts2_tokenizer\sso\sthat\sthe\sbuild\sworks\seven\swhen\sFTS2\nis\somitted.\s\sAdd\sthe\sSQLite\sblessing\sto\sthe\sheader\scomments\son\sall\sFTS2\nsource\sfiles.\s(CVS\s4120)
D 2007-06-25T13:50:04
C Modify\sthe\snon-configure\sbuild\ssystem\sto\smake\sit\seasier\sto\sbuild\sthe\slibrary\swith\sthe\sfts2\sor\sicu\sextensions\slinked\sin.\s(CVS\s4121)
D 2007-06-25T14:28:48
F Makefile.in 7f7485a4cc039476a42e534b3f26ec90e2f9753e
F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@ -39,11 +39,11 @@ F ext/fts2/README.tokenizers 2ff290e0a130f6e7611f2e608cb3b5aaea721abc
F ext/fts2/README.txt 8c18f41574404623b76917b9da66fcb0ab38328d
F ext/fts2/fts2.c e6015f3a98edbcb29f4922fb7e6ec4039aa90a61
F ext/fts2/fts2.h da5f76c65163301d1068a971fd32f4119e3c95fa
F ext/fts2/fts2_hash.c b3f22116d4ef0bc8f2da6e3fdc435c86d0951a9b
F ext/fts2/fts2_hash.c cafebb4620d19684c4c9872530012441df60f503
F ext/fts2/fts2_hash.h e283308156018329f042816eb09334df714e105e
F ext/fts2/fts2_icu.c 45b54d1e075020b35db20f69d829f95ca0651111
F ext/fts2/fts2_porter.c 991a45463553c7318063fe7773368a6c0f39e35d
F ext/fts2/fts2_tokenizer.c 36ef7d2004cf2be869a4dd0e784a0804a8619461
F ext/fts2/fts2_tokenizer.c 89743aca26ba0746eab8037b966fc9714d82dc5f
F ext/fts2/fts2_tokenizer.h 6d151c51382e8f6cf689c616bb697fe780478089
F ext/fts2/fts2_tokenizer1.c 719f6eb8cf94a8a5be6576c9b3d94d22deeea816
F ext/fts2/mkfts2amal.tcl 346454361d1c11e8839b629102d257bafcd7b3c7
@ -51,7 +51,7 @@ F ext/icu/README.txt 3b130aa66e7a681136f6add198b076a2f90d1e33
F ext/icu/icu.c 61a345d8126686aa3487aa8d2d0f68abd655f7a4
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
F ltmain.sh 56abb507100ed2d4261f6dd1653dec3cf4066387
F main.mk 9007943b573ddccc1bb39f8fcb7b2812f6cc8792
F main.mk 46490244b446637272d30d0412c1783f59e474a8
F mkdll.sh 37fa8a7412e51b5ab2bc6d4276135f022a0feffb
F mkopcodec.awk bd46ad001c98dfbab07b1713cb8e692fa0e5415d
F mkopcodeh.awk cde995d269aa06c94adbf6455bea0acedb913fa5
@ -515,7 +515,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
P 3be2a6d1c342454d93b05c38f3d9a960ab15dae2
R a0ee812c4fb5f9207bb7a5036f901895
U drh
Z 622822cd514b2de2535efbab623c0758
P c795e6fd8f01bcbc1967062632c13d4952abf4d8
R 36649f70433e3c0885d05bda9f2d7c0a
U danielk1977
Z 38df0eb7692e9724b2c5e31d97a48a87

View File

@ -1 +1 @@
c795e6fd8f01bcbc1967062632c13d4952abf4d8
02b23c4394da7efb82e9318146f10818b0f68b1f