2019-07-19 15:12:49 +03:00
|
|
|
TARGET = sqlite3
|
2020-04-17 19:19:02 +03:00
|
|
|
CC = /bin/clang
|
|
|
|
SYSROOT = /share/wasi-sysroot
|
|
|
|
TARGET_TRIPLE = wasm32-wasi
|
2019-07-19 15:12:49 +03:00
|
|
|
CFLAGS = -nostartfiles -fvisibility=hidden
|
|
|
|
LDFLAGS = -Wl,--no-entry,--demangle,--allow-undefined
|
2019-08-17 17:06:23 +03:00
|
|
|
EXPORT_FUNCS = \
|
|
|
|
--export=allocate,$\
|
|
|
|
--export=deallocate,$\
|
|
|
|
--export=invoke,$\
|
|
|
|
--export=load,$\
|
|
|
|
--export=store,$\
|
|
|
|
--export=sqlite_allocate,$\
|
|
|
|
--export=sqlite_deallocate,$\
|
|
|
|
--export=sqlite_invoke,$\
|
|
|
|
--export=sqlite_load,$\
|
|
|
|
--export=sqlite_store
|
|
|
|
SQLITE_SRC = \
|
|
|
|
src/alter.c\
|
|
|
|
src/analyze.c\
|
|
|
|
src/attach.c\
|
|
|
|
src/auth.c\
|
|
|
|
src/backup.c\
|
|
|
|
src/bitvec.c\
|
|
|
|
src/btmutex.c\
|
|
|
|
src/btree.c\
|
|
|
|
src/build.c\
|
|
|
|
src/callback.c\
|
|
|
|
src/complete.c\
|
|
|
|
src/ctime.c\
|
|
|
|
src/date.c\
|
|
|
|
src/dbpage.c\
|
|
|
|
src/dbstat.c\
|
|
|
|
src/delete.c\
|
|
|
|
src/expr.c\
|
|
|
|
src/fault.c\
|
|
|
|
src/fkey.c\
|
|
|
|
src/fts3.c\
|
|
|
|
src/fts3_write.c\
|
|
|
|
src/fts3_aux.c\
|
|
|
|
src/fts3_expr.c\
|
|
|
|
src/fts3_hash.c\
|
|
|
|
src/fts3_icu.c\
|
|
|
|
src/fts3_porter.c\
|
|
|
|
src/fts3_snippet.c\
|
|
|
|
src/fts3_tokenize_vtab.c\
|
|
|
|
src/fts3_tokenizer.c\
|
|
|
|
src/fts3_tokenizer1.c\
|
|
|
|
src/fts3_unicode.c\
|
|
|
|
src/fts3_unicode2.c\
|
|
|
|
src/fts5.c\
|
|
|
|
src/func.c\
|
|
|
|
src/global.c\
|
|
|
|
src/hash.c\
|
|
|
|
src/insert.c\
|
|
|
|
src/json1.c\
|
|
|
|
src/legacy.c\
|
|
|
|
src/loadext.c\
|
|
|
|
src/main.c\
|
|
|
|
src/malloc.c\
|
|
|
|
src/memdb.c\
|
|
|
|
src/mem0.c\
|
|
|
|
src/mem1.c\
|
|
|
|
src/mem2.c\
|
|
|
|
src/memjournal.c\
|
|
|
|
src/notify.c\
|
|
|
|
src/opcodes.c\
|
|
|
|
src/os.c\
|
|
|
|
src/pager.c\
|
|
|
|
src/parse.c\
|
|
|
|
src/pcache.c\
|
|
|
|
src/pcache1.c\
|
|
|
|
src/pragma.c\
|
|
|
|
src/prepare.c\
|
|
|
|
src/printf.c\
|
|
|
|
src/random.c\
|
|
|
|
src/resolve.c\
|
|
|
|
src/rowset.c\
|
|
|
|
src/rtree.c\
|
|
|
|
src/select.c\
|
|
|
|
src/sqlite3session.c\
|
|
|
|
src/status.c\
|
|
|
|
src/stmt.c\
|
|
|
|
src/table.c\
|
|
|
|
src/tokenize.c\
|
|
|
|
src/treeview.c\
|
|
|
|
src/trigger.c\
|
|
|
|
src/update.c\
|
|
|
|
src/upsert.c\
|
|
|
|
src/userauth.c\
|
|
|
|
src/utf.c\
|
|
|
|
src/util.c\
|
|
|
|
src/vacuum.c\
|
|
|
|
src/vdbe.c\
|
|
|
|
src/vdbeapi.c\
|
|
|
|
src/vdbeaux.c\
|
|
|
|
src/vdbeblob.c\
|
|
|
|
src/vdbemem.c\
|
|
|
|
src/vdbesort.c\
|
|
|
|
src/vdbetrace.c\
|
|
|
|
src/vtab.c\
|
|
|
|
src/wal.c\
|
|
|
|
src/walker.c\
|
|
|
|
src/where.c\
|
|
|
|
src/wherecode.c\
|
|
|
|
src/whereexpr.c\
|
|
|
|
src/window.c
|
2019-07-19 15:12:49 +03:00
|
|
|
WRAPPER_SRC = src/wrapper.c
|
2019-08-17 17:06:23 +03:00
|
|
|
SQLITE_FLAGS = \
|
|
|
|
-DSQLITE_CORE\
|
|
|
|
-D_HAVE_SQLITE_CONFIG_H\
|
|
|
|
-DSQLITE_ENABLE_JSON1\
|
|
|
|
-DENABLE_LOG\
|
|
|
|
-DBUILD_sqlite\
|
|
|
|
-DNDEBUG\
|
|
|
|
-DSQLITE_THREADSAFE=0\
|
|
|
|
-DHAVE_READLINE=0\
|
|
|
|
-DHAVE_EDITLINE=0\
|
|
|
|
-DSQLITE_OMIT_LOAD_EXTENSION\
|
|
|
|
-DSQLITE_ENABLE_JSON1\
|
|
|
|
-DSQLITE_ENABLE_FTS5\
|
|
|
|
-DSQLITE_ENABLE_RTREE\
|
|
|
|
-DSQLITE_ENABLE_EXPLAIN_COMMENTS\
|
|
|
|
-DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION\
|
|
|
|
-DSQLITE_ENABLE_STMTVTAB\
|
|
|
|
-DSQLITE_ENABLE_DBPAGE_VTAB\
|
|
|
|
-DSQLITE_ENABLE_DBSTAT_VTAB\
|
|
|
|
-DSQLITE_ENABLE_OFFSET_SQL_FUNC\
|
|
|
|
-DSQLITE_ENABLE_DESERIALIZE\
|
|
|
|
-DSQLITE_INTROSPECTION_PRAGMAS\
|
|
|
|
-DSQLITE_OMIT_POPEN
|
2019-07-19 15:12:49 +03:00
|
|
|
SDK = sdk/logger.c
|
|
|
|
|
|
|
|
.PHONY: default all clean
|
|
|
|
|
|
|
|
default: $(TARGET)
|
|
|
|
all: default
|
|
|
|
|
|
|
|
$(TARGET): $(SDK) $(SQLITE_SRC) $(WRAPPER_SRC)
|
2019-08-14 01:20:56 +03:00
|
|
|
$(CC) -O3 --sysroot=$(SYSROOT) --target=$(TARGET_TRIPLE) $(SQLITE_FLAGS) $(CFLAGS) $(LDFLAGS) -Wl,$(EXPORT_FUNCS) $^ -o $@.wasm
|
2019-07-19 15:12:49 +03:00
|
|
|
|
|
|
|
.PRECIOUS: $(TARGET)
|
|
|
|
|
|
|
|
clean:
|
|
|
|
-rm -f $(TARGET).wasm
|