# Basic opions that work well for now: -DSQLITE_DEFAULT_FILE_FORMAT=4 -DYYSTACKDEPTH=20 -DSQLITE_MAX_LENGTH=1048576 -DSQLITE_MAX_COLUMN=128 -DSQLITE_MAX_SQL_LENGTH=16384 -DSQLITE_THREADSAFE=0 -DSQLITE_DISABLE_LFS -DSQLITE_OMIT_ALTERTABLE -DSQLITE_OMIT_ANALYZE -DSQLITE_OMIT_ATTACH -DSQLITE_OMIT_AUTHORIZATION -DSQLITE_OMIT_AUTOVACUUM -DSQLITE_OMIT_CAST -DSQLITE_OMIT_CHECK -DSQLITE_OMIT_COMPOUND_SELECT -DSQLITE_OMIT_CONFLICT_CLAUSE -DSQLITE_OMIT_DATETIME_FUNCS -DSQLITE_OMIT_DEPRECATED -DSQLITE_OMIT_EXPLAIN -DSQLITE_OMIT_INCRBLOB -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_SCHEMA_PRAGMAS -DSQLITE_OMIT_SCHEMA_VERSION_PRAGMAS -DSQLITE_OMIT_SHARED_CACHE -DSQLITE_OMIT_SUBQUERY -DSQLITE_OMIT_TEMPDB -DSQLITE_OMIT_TRACE -DSQLITE_OMIT_TRIGGER -DSQLITE_OMIT_UTF16 -DSQLITE_OMIT_VACUUM -DSQLITE_OMIT_VIEW -DSQLITE_OMIT_VIRTUALTABLE # These are needed for the sqlite commandline tool, which I don't think we really need -DSQLITE_OMIT_COMPLETE -DSQLITE_OMIT_GET_TABLE # ICU for case-insensitive unicode stuff. The ICU libs are huge, but the part sqlite uses may be small. Need to investigate (a) whether we can statically link the few funcs needed into the sqlite lib and retain only the necesssary data files from ICU for dist, and (b) whether it's worth it, versus another approach like the duplicated search/short fields used in SC currently. Also, we might be able to patch DBD::SQLite to just hook in perl's utf8 casecmp, etc routines. -DSQLITE_ENABLE_ICU