1
1
diff --git a/Makefile b/Makefile
2
- index 4530653..5ac01a0 100644
2
+ index 4530653..8c40a26 100644
3
3
--- a/Makefile
4
4
+++ b/Makefile
5
- @@ -14,6 +14,8 @@ SQLITE_AMALGAMATION_ZIP_SHA3 = e7eb4cfb2d95626e782cfa748f534c74482f2c3c93f13ee82
5
+ @@ -6,14 +6,15 @@
6
+
7
+ # I got this handy makefile syntax from : https://github.com/mandel59/sqlite-wasm (MIT License) Credited in LICENSE
8
+ # To use another version of Sqlite, visit https://www.sqlite.org/download.html and copy the appropriate values here:
9
+ - SQLITE_AMALGAMATION = sqlite-amalgamation-3490100
10
+ - SQLITE_AMALGAMATION_ZIP_URL = https://sqlite.org/2025/sqlite-amalgamation-3490100.zip
11
+ - SQLITE_AMALGAMATION_ZIP_SHA3 = e7eb4cfb2d95626e782cfa748f534c74482f2c3c93f13ee828b9187ce05b2da7
12
+ + SQLITE_AMALGAMATION = sqlite-amalgamation-3500400
13
+ + SQLITE_AMALGAMATION_ZIP_URL = https://sqlite.org/2025/sqlite-amalgamation-3500400.zip
14
+ + SQLITE_AMALGAMATION_ZIP_SHA256 = 1d3049dd0f830a025a53105fc79fd2ab9431aea99e137809d064d8ee8356b032
15
+
16
+ # Note that extension-functions.c hasn't been updated since 2010-02-06, so likely doesn't need to be updated
6
17
EXTENSION_FUNCTIONS = extension-functions.c
7
18
EXTENSION_FUNCTIONS_URL = https://www.sqlite.org/contrib/download/extension-functions.c?get=25
8
19
EXTENSION_FUNCTIONS_SHA1 = c68fa706d6d9ff98608044c00212473f9c14892f
9
20
+ POWERSYNC_STATIC_FILES = powersync-libs/libpowersync-wasm.a
10
- +
11
21
12
22
EMCC=emcc
13
23
14
- @@ -24,7 +26 ,8 @@ SQLITE_COMPILATION_FLAGS = \
24
+ @@ -24,7 +25 ,8 @@ SQLITE_COMPILATION_FLAGS = \
15
25
-DSQLITE_ENABLE_FTS3 \
16
26
-DSQLITE_ENABLE_FTS3_PARENTHESIS \
17
27
-DSQLITE_THREADSAFE=0 \
@@ -21,7 +31,7 @@ index 4530653..5ac01a0 100644
21
31
22
32
# When compiling to WASM, enabling memory-growth is not expected to make much of an impact, so we enable it for all builds
23
33
# Since tihs is a library and not a standalone executable, we don't want to catch unhandled Node process exceptions
24
- @@ -59,7 +62 ,7 @@ EMFLAGS_DEBUG = \
34
+ @@ -59,7 +61 ,7 @@ EMFLAGS_DEBUG = \
25
35
-s ASSERTIONS=2 \
26
36
-O1
27
37
@@ -30,7 +40,7 @@ index 4530653..5ac01a0 100644
30
40
31
41
OUTPUT_WRAPPER_FILES = src/shell-pre.js src/shell-post.js
32
42
33
- @@ -76,13 +79 ,13 @@ all: optimized debug worker
43
+ @@ -76,13 +78 ,13 @@ all: optimized debug worker
34
44
debug: dist/sql-asm-debug.js dist/sql-wasm-debug.js
35
45
36
46
dist/sql-asm-debug.js: $(BITCODE_FILES) $(OUTPUT_WRAPPER_FILES) $(SOURCE_API_FILES) $(EXPORTED_METHODS_JSON_FILES)
@@ -46,7 +56,7 @@ index 4530653..5ac01a0 100644
46
56
mv $@ out/tmp-raw.js
47
57
cat src/shell-pre.js out/tmp-raw.js src/shell-post.js > $@
48
58
rm out/tmp-raw.js
49
- @@ -91,19 +94 ,19 @@ dist/sql-wasm-debug.js: $(BITCODE_FILES) $(OUTPUT_WRAPPER_FILES) $(SOURCE_API_FI
59
+ @@ -91,19 +93 ,19 @@ dist/sql-wasm-debug.js: $(BITCODE_FILES) $(OUTPUT_WRAPPER_FILES) $(SOURCE_API_FI
50
60
optimized: dist/sql-asm.js dist/sql-wasm.js dist/sql-asm-memory-growth.js
51
61
52
62
dist/sql-asm.js: $(BITCODE_FILES) $(OUTPUT_WRAPPER_FILES) $(SOURCE_API_FILES) $(EXPORTED_METHODS_JSON_FILES)
@@ -69,7 +79,7 @@ index 4530653..5ac01a0 100644
69
79
mv $@ out/tmp-raw.js
70
80
cat src/shell-pre.js out/tmp-raw.js src/shell-post.js > $@
71
81
rm out/tmp-raw.js
72
- @@ -153,6 +156 ,9 @@ out/extension-functions.o: sqlite-src/$(SQLITE_AMALGAMATION)
82
+ @@ -153,6 +155 ,9 @@ out/extension-functions.o: sqlite-src/$(SQLITE_AMALGAMATION)
73
83
# Generate llvm bitcode
74
84
$(EMCC) $(SQLITE_COMPILATION_FLAGS) -c sqlite-src/$(SQLITE_AMALGAMATION)/extension-functions.c -o $@
75
85
@@ -79,7 +89,18 @@ index 4530653..5ac01a0 100644
79
89
# TODO: This target appears to be unused. If we re-instatate it, we'll need to add more files inside of the JS folder
80
90
# module.tar.gz: test package.json AUTHORS README.md dist/sql-asm.js
81
91
# tar --create --gzip $^ > $@
82
- @@ -182,11 +188,15 @@ sqlite-src/$(SQLITE_AMALGAMATION): cache/$(SQLITE_AMALGAMATION).zip sqlite-src/$
92
+ @@ -172,8 +177,8 @@ sqlite-src: sqlite-src/$(SQLITE_AMALGAMATION) sqlite-src/$(SQLITE_AMALGAMATION)/
93
+
94
+ sqlite-src/$(SQLITE_AMALGAMATION): cache/$(SQLITE_AMALGAMATION).zip sqlite-src/$(SQLITE_AMALGAMATION)/$(EXTENSION_FUNCTIONS)
95
+ mkdir -p sqlite-src/$(SQLITE_AMALGAMATION)
96
+ - echo '$(SQLITE_AMALGAMATION_ZIP_SHA3) ./cache/$(SQLITE_AMALGAMATION).zip' > cache/check.txt
97
+ - sha3sum -a 256 -c cache/check.txt
98
+ + echo '$(SQLITE_AMALGAMATION_ZIP_SHA256) ./cache/$(SQLITE_AMALGAMATION).zip' > cache/check.txt
99
+ + sha256sum -c cache/check.txt
100
+ # We don't delete the sqlite_amalgamation folder. That's a job for clean
101
+ # Also, the extension functions get copied here, and if we get the order of these steps wrong,
102
+ # this step could remove the extension functions, and that's not what we want
103
+ @@ -182,11 +187,15 @@ sqlite-src/$(SQLITE_AMALGAMATION): cache/$(SQLITE_AMALGAMATION).zip sqlite-src/$
83
104
84
105
sqlite-src/$(SQLITE_AMALGAMATION)/$(EXTENSION_FUNCTIONS): cache/$(EXTENSION_FUNCTIONS)
85
106
mkdir -p sqlite-src/$(SQLITE_AMALGAMATION)
0 commit comments