Compare commits

...

1 Commits

Author SHA1 Message Date
stephan 193f10784b Wasm build tweaks to attempt to get the node.js-for-node.js build to use Emscripten's nodefs filesystem driver for persistent storage. This is completely untested - validating it requires a nodeist.
FossilOrigin-Name: 0bcbde7c54f67451417d24678b776ad1b4e92990aa72cc3850f6e369011f4538
2024-03-06 08:45:52 +00:00
3 changed files with 25 additions and 16 deletions
+14 -8
View File
@@ -82,7 +82,8 @@ JS_BUILD_NAMES := sqlite3 sqlite3-wasmfs
#
# - node = for use by node.js for node.js, as opposed to by node.js on
# behalf o browser-side code (use bundler-friendly for that). Note
# that persistent storage (OPFS) is not available in these builds.
# that persistent storage (OPFS, kvvfs) is not available in these
# builds.
#
JS_BUILD_MODES := vanilla esm bunder-friendly node
@@ -738,11 +739,12 @@ pre-post-jses.$(1)-$(2).deps := $$(pre-post-jses.deps.common) \
$$(post-js.js.$(1)-$(2)) $$(extern-post-js.js.$(1)-$(2))
$$(pre-js.js.$(1)-$(2)): $$(pre-js.js.$(1)-$(2).intermediary) $$(MAKEFILE)
cp $$(pre-js.js.$(1)-$(2).intermediary) $$@
@if [ sqlite3-wasmfs = $(1) ]; then \
echo "delete Module[xNameOfInstantiateWasm] /*for WASMFS build*/;"; \
elif [ sqlite3 != $(1) ]; then \
echo "Module[xNameOfInstantiateWasm].uri = '$(1).wasm';"; \
fi >> $$@
@case $(1) in \
sqlite3) ;; \
sqlite3-wasmfs) \
echo "delete Module[xNameOfInstantiateWasm] /*for WASMFS and node builds*/;" ;; \
*) echo "Module[xNameOfInstantiateWasm].uri = '$(1).wasm';" ;; \
esac >> $$@
pre-post-$(1)-$(2).deps := \
$$(pre-post-jses.$(1)-$(2).deps) \
$$(dir.tmp)/pre-js.$(1)-$(2).js
@@ -825,7 +827,7 @@ pre-post-jses.deps.common := $(extern-pre-js.js) $(sqlite3-license-version.js)
# $4 = resulting sqlite-api JS/MJS file
# $5 = resulting JS/MJS file
# $6 = -D... flags for $(bin.c-pp)
# $7 = emcc -sXYZ flags (CURRENTLY UNUSED - was factored out)
# $7 = optional additional flags for emcc
#
# Maintenance reminder: be careful not to introduce spaces around args
# ($1, $2), otherwise string concatenation will malfunction.
@@ -892,7 +894,11 @@ $(eval $(call SETUP_LIB_BUILD_MODE,sqlite3,bundler-friendly,1,\
$(c-pp.D.sqlite3-esm) -Dtarget=es6-bundler-friendly))
$(eval $(call SETUP_LIB_BUILD_MODE,sqlite3,node,1,\
$(sqlite3-api-node.mjs),$(sqlite3-node.mjs),\
$(c-pp.D.sqlite3-bundler-friendly) -Dtarget=node))
$(c-pp.D.sqlite3-bundler-friendly) -Dtarget=node,-lnodefs.js))
# ^^^^ reminder to self: using -lnodefs.js affects the resulting JS but
# not the .wasm file, so that build can/should use the canonical
# wasm file.
#
# The various -D... values used by *.c-pp.js include:
#
# -Dtarget=es6-module: for all ESM module builds
+10 -7
View File
@@ -1,5 +1,5 @@
C Remove\scode\sthat\sadded\sa\sP4\sparameter\sto\sthe\sOP_Variable\sopcode.\sThis\sis\sno\slonger\srequired.
D 2024-03-05T18:41:03.600
C Wasm\sbuild\stweaks\sto\sattempt\sto\sget\sthe\snode.js-for-node.js\sbuild\sto\suse\sEmscripten's\snodefs\sfilesystem\sdriver\sfor\spersistent\sstorage.\sThis\sis\scompletely\suntested\s-\svalidating\sit\srequires\sa\snodeist.
D 2024-03-06T08:45:52.179
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -587,7 +587,7 @@ F ext/userauth/sqlite3userauth.h 7f3ea8c4686db8e40b0a0e7a8e0b00fac13aa7a3
F ext/userauth/user-auth.txt ca7e9ee82ca4e1c1744295f8184dd70edfae1992865d26c64303f539eb6c084c
F ext/userauth/userauth.c 7f00cded7dcaa5d47f54539b290a43d2e59f4b1eb5f447545fa865f002fc80cb
F ext/wasm/EXPORTED_FUNCTIONS.fiddle.in 27450c8b8c70875a260aca55435ec927068b34cef801a96205adb81bdcefc65c
F ext/wasm/GNUmakefile 92e929315c3f1e0ea389fc9666b87a67a61fa1ecbe37e44c5ad226bda3bc6abe
F ext/wasm/GNUmakefile d71fa280bf85d8ff7e2200003ebdf729a754f93cdf6e04d7dad48848952c162f
F ext/wasm/README-dist.txt 6382cb9548076fca472fb3330bbdba3a55c1ea0b180ff9253f084f07ff383576
F ext/wasm/README.md a8a2962c3aebdf8d2104a9102e336c5554e78fc6072746e5daf9c61514e7d193
F ext/wasm/SQLTester/GNUmakefile e0794f676d55819951bbfae45cc5e8d7818dc460492dc317ce7f0d2eca15caff
@@ -2176,8 +2176,11 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P 8290646792bc5411112b0c01dc5ac0837743056a7679725ee2edefef2e10d146
R 1ae68caeb21ed926e0c7d42963259d28
U dan
Z 4bf196184c1c27ebc7d6a427ff362e10
P dd5977c9a8a418be3fbd646d74933996381099a9263a02eb4a990f0084463dc1
R 33326cf07abe13f18bad62155ebaba19
T *branch * wasm-nodefs
T *sym-wasm-nodefs *
T -sym-trunk * Cancelled\sby\sbranch.
U stephan
Z 60b88e8d8d2858ddd9f12841b30e5f75
# Remove this line to create a well-formed Fossil manifest.
+1 -1
View File
@@ -1 +1 @@
dd5977c9a8a418be3fbd646d74933996381099a9263a02eb4a990f0084463dc1
0bcbde7c54f67451417d24678b776ad1b4e92990aa72cc3850f6e369011f4538