set( sqlitefdoprovider3_SRCS alter.c analyze.c attach.c auth.c bitvec.c btmutex.c btree.c build.c backup.c callback.c complete.c date.c delete.c expr.c fault.c fts3_expr.c func.c global.c hash.c insert.c journal.c legacy.c loadext.c main.c malloc.c mem0.c mem1.c mem2.c mem3.c mem5.c memjournal.c mutex.c mutex_noop.c notify.c opcodes.c os.c pager.c parse.c pcache.c pcache1.c pragma.c prepare.c printf.c random.c resolve.c rowset.c rtree.c select.c shell.c status.c table.c tokenize.c trigger.c update.c utf.c util.c vacuum.c vdbeapi.c vdbeaux.c vdbeblob.c vdbe.c vdbemem.c vtab.c walker.c where.c vdbetrace.c ctime.c fkey.c fts3_snippet.c fts3_write.c wal.c ) if (WIN32) list(APPEND sqlitefdoprovider3_SRCS mutex_w32.c os_win.c) else (WIN32) list(APPEND sqlitefdoprovider3_SRCS mutex_unix.c os_unix.c) endif (WIN32) if (MSVC) msvc_use_unicode() add_definitions( -D_LIB -D_CRT_SECURE_NO_WARNINGS -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_OMIT_TRACE -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_AUTHORIZATION -DSQLITE_OMIT_UTF16 -DSQLITE_OMIT_SHARED_CACHEXXX -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_RTREE -DSQLITE_CORE -DSQLITE_SOUNDEX) add_definitions(/wd4267 /wd4244 /wd4018 /wd4996 /wd4312 /wd4311) else (MSVC) add_definitions( -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_OMIT_TRACE -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_AUTHORIZATION -DSQLITE_OMIT_UTF16 -DSQLITE_OMIT_SHARED_CACHEXXX -DSQLITE_THREADSAFE=2 -DSQLITE_ENABLE_RTREE -DSQLITE_CORE -DPIC -fPIC ) endif (MSVC) add_library ( sqlitefdoprovider3 STATIC ${sqlitefdoprovider3_SRCS} ) if (MSVC) # Favor fast code target_compile_options(sqlitefdoprovider3 PRIVATE "$<$:/Ot>") endif (MSVC)