There are several build options in the configure/make of sqlite3 that
are obsolete, and others that are missing.

ENCODING is obsolete since it is specified in the open calls now.
There are still several references to it, though, in the make and
autoconf files, and these should all be removed.

INMEMORYDB and SQLITE_OMIT_INMEMORYDB are obsolete since the red-black
tree implementation is now gone. Again, references to these should be
removed from the make and autoconf files.

INCOREFLAGS and in particular TEMP_STORE are in limbo. The values are
set but never used. E.g., INCOREFLAGS is set in Makefile but never
used there. TEMP_STORE is initialized in sqliteInt.h and documented in
several comments, but is never used in the code.

I suspect that the intention is that sqlite3BtreeFactory use
TEMP_STORE in certain circumstances, but presently it uses neither
TEMP_STORE nor the db->temp_store set by pragma. In fact, even the
flag BTREE_MEMORY which is set by sqlite3BtreeFactory when the
filename is empty is ignored by sqlite3BtreeOpen.

The THREADSAFE macro is used in all three os_xxx.c files, but is not
supported by the autoconf files (configure.ac and Makefile.in). It
would be really nice to add this when configure.ac is updated next.

It would also be nice to change configure.ac so that only one of
-DOS_WIN=1 or -DOS_UNIX=1 is specified in TARGET_CFLAGS. Only one is
necessary (the other will be set in os.h) and it would make the
console dribble from make much easier to read.

There are several SQLITE_OMIT_ macros that should also be supported by
the autoconf files.

Disclaimer: I don't use autoconf, but I'd be willing to help with the
source updates if somebody familiar with autoconf was willing to do
the configure (+ aclocal.m4 etc.) file generation and linux testing.

e



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to