]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
wasm: add some build-time validation to ensure that the problem fixed in [65798c09a00...
authorstephan <stephan@noemail.net>
Sun, 9 Feb 2025 01:50:41 +0000 (01:50 +0000)
committerstephan <stephan@noemail.net>
Sun, 9 Feb 2025 01:50:41 +0000 (01:50 +0000)
FossilOrigin-Name: 012b308b04e6a9e3acbb842317b01b4b91ac165b925918cf20c1f52d045a6ec0

ext/wasm/GNUmakefile
ext/wasm/mkwasmbuilds.c
manifest
manifest.uuid

index 4369635cf293132db0b6d5ec83648ae90a54a32c..21f6de6062bb64ee0e091d27cf76fb861910fb7c 100644 (file)
@@ -165,7 +165,7 @@ dir.wasmfs := $(dir.dout)
 
 MKDIR.bld := $(dir.tmp)
 $(MKDIR.bld):
-       -mkdir -p $@ $(dir.dout)
+       @mkdir -p $@ $(dir.dout)
 
 CLEAN_FILES += *~ $(dir.jacc)/*~ $(dir.api)/*~ $(dir.common)/*~ $(dir.fiddle)/*~ \
   $(dir.fiddle-debug)/* $(dir.dout)/* $(dir.tmp)/*
@@ -424,8 +424,8 @@ define SQLITE.CALL.C-PP.FILTER
 # $1 = Input file: c-pp -f $(1).js
 # $2 = Output file: c-pp -o $(2).js
 # $3 = optional c-pp -D... flags
-$(2): $(1) $$(MAKEFILE) $$(bin.c-pp)
-       mkdir -p $$(dir $$@)
+$(2): $(1) $$(MAKEFILE_LIST) $$(bin.c-pp)
+       @mkdir -p $$(dir $$@)
        $$(bin.c-pp) -f $(1) -o $$@ $(3) $(SQLITE.CALL.C-PP.FILTER.global)
 #CLEAN_FILES += $(2)
 endef
index e762b572cda87d05aba8f1b0c57f4586dd5b1ff5..91c03b6d42f2642881beadfd0e4943c12aa7594f 100644 (file)
@@ -151,7 +151,7 @@ static void mk_pre_post(const char *zName  /* build name */,
   /* --pre-js=... */
   pf("pre-js.js.%s-%s := $(dir.tmp)/pre-js.%s-%s.js\n",
      zNM, zNM);
-  pf("$(pre-js.js.%s-%s): $(MAKEFILE)\n", zNM);
+  pf("$(pre-js.js.%s-%s): $(MAKEFILE_LIST)\n", zNM);
 #if 1
   pf("$(eval $(call SQLITE.CALL.C-PP.FILTER,$(pre-js.js.in),$(pre-js.js.%s-%s),"
      "$(c-pp.D.%s-%s)))\n", zNM, zNM);
@@ -218,7 +218,7 @@ static void mk_fiddle(){
     pf("fiddle-module.js%s := %s/fiddle-module.js\n", zTail, zDir);
     pf("fiddle-module.wasm%s := "
        "$(subst .js,.wasm,$(fiddle-module.js%s))\n", zTail, zTail);
-    pf("$(fiddle-module.js%s):%s $(MAKEFILE) $(MAKEFILE.fiddle) "
+    pf("$(fiddle-module.js%s):%s $(MAKEFILE_LIST) $(MAKEFILE.fiddle) "
        "$(EXPORTED_FUNCTIONS.fiddle) "
        "$(fiddle.cses) $(pre-post-fiddle-module-vanilla.deps) "
        "$(SOAP.js)\n",
@@ -285,7 +285,7 @@ static void mk_lib_mode(const char *zName     /* build name */,
      zApiJsOut, zCmppD);
 
   /* target zJsOut */
-  pf("%s: %s $(MAKEFILE) $(sqlite3-wasm.cfiles) $(EXPORTED_FUNCTIONS.api) "
+  pf("%s: %s $(MAKEFILE_LIST) $(sqlite3-wasm.cfiles) $(EXPORTED_FUNCTIONS.api) "
      "$(pre-post-%s-%s.deps) "
      "$(sqlite3-api.ext.jses)"
      /* ^^^ maintenance reminder: we set these as deps so that they
@@ -304,9 +304,10 @@ static void mk_lib_mode(const char *zName     /* build name */,
      "\t\t$(cflags.%s) $(cflags.%s.%s) \\\n"
      "\t\t$(cflags.wasm_extra_init) $(sqlite3-wasm.cfiles)\n", zName, zNM);
   if( bIsEsm ){
-    /* TODO? Replace this CALL with the corresponding makefile code.
-    ** OTOH, we also use this $(call) in the speedtest1-wasmfs build,
-    ** which is not part of the rules emitted by this program. */
+    /* TODO? Replace this $(call) with the corresponding makefile
+    ** code.  OTOH, we also use this $(call) in the speedtest1-wasmfs
+    ** build, which is not part of the rules emitted by this
+    ** program. */
     pf("\t@$(call SQLITE.CALL.xJS.ESM-EXPORT-DEFAULT,1,%d)\n",
        0==strcmp("sqlite3-wasmfs", zName) ? 1 : 0);
   }
@@ -338,6 +339,16 @@ static void mk_lib_mode(const char *zName     /* build name */,
        /* ^^^^^^ reminder: Mac/BSD sed has no -i flag */
        zNM, zName);
     pf("\t@ls -la $@\n");
+    if( 0==strcmp("bundler-friendly", zMode) ){
+      /* Avoid a 3rd occurance of the bug fixed by 65798c09a00662a3,
+      ** which was (in two cases) caused by makefile refactoring and
+      ** not recognized until after a release was made with the broken
+      ** sqlite3-bundler-friendly.mjs: */
+      pf("\t@if grep -e '^ *importScripts(' $@; "
+         "then echo 'ERROR: bug fixed in 65798c09a00662a3 has re-appeared'; "
+         "exit 1; fi;\n");
+    }
+
   }else{
     pf("\t@ls -la %s $@\n", zWasmOut);
   }
index b4c6001281a96de959aa7f527c718ee64c41ecb4..8d79e20412b3da0c00326e3ec397d1740a05508f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C configure:\swhen\stransfering\sENABLE/OMIT\sflags\sfrom\sCFLAGS\sto\sOPT_FEATURE_FLAGS,\salso\sdo\sthe\ssame\sfor\sCPPFLAGS\sand\sremove\sthose\sENABLE/OMIT\sflags\sfrom\sCFLAGS/CPPFLAGS\sto\smimic\slegacy\sbuild\sbehavior.\sStrip\sENABLE/OMIT\sflags\sfrom\sBUILD_CFLAGS\sbut\sdo\snot\stransfer\sthose\sto\sOPT_FEATURE_FLAGS,\salso\sto\smimic\slegacy\sbehavior.\sThis\sis\sthe\ssecond\spart\sof\sa\sfix\sdiscussed\sat\s[forum:9801e54665afd728|forum\spost\s9801e54665afd728].
-D 2025-02-09T01:30:47.863
+C wasm:\sadd\ssome\sbuild-time\svalidation\sto\sensure\sthat\sthe\sproblem\sfixed\sin\s[65798c09a00662a3]\sdoes\snot\srecur.\sEnsure\sthat\sfiles\sgenerated\svia\smkwasmbuilds.c\shave\sthe\sgenerated\smakefile\sas\sa\sdependency.
+D 2025-02-09T01:50:41.269
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
@@ -619,7 +619,7 @@ F ext/session/sqlite3session.c 52a680dbb03c4734748b215d95987fb4d95ab23baaf053a01
 F ext/session/sqlite3session.h 683ccbf16e2c2521661fc4c1cf918ce57002039efbcabcd8097fa4bca569104b
 F ext/session/test_session.c 12e0a2c15fd60f92da4bb29c697c9177ff0c0dbcdc5129a54c47e999f147937a
 F ext/wasm/EXPORTED_FUNCTIONS.fiddle.in 27450c8b8c70875a260aca55435ec927068b34cef801a96205adb81bdcefc65c
-F ext/wasm/GNUmakefile df23a3cb3bfb13f17fc76132a0127a89e2ad64f46b71efee9743929cfd52d441
+F ext/wasm/GNUmakefile 2b19c10968295f50ebd1c97c33bfb9038bda8e42fe3be9fb0eed8ae634d45742
 F ext/wasm/README-dist.txt f01081a850ce38a56706af6b481e3a7878e24e42b314cfcd4b129f0f8427066a
 F ext/wasm/README.md b89605f65661cf35bf034ff6d43e448cc169b8017fc105d498e33b81218b482c
 F ext/wasm/SQLTester/GNUmakefile e0794f676d55819951bbfae45cc5e8d7818dc460492dc317ce7f0d2eca15caff
@@ -680,7 +680,7 @@ F ext/wasm/index-dist.html 56132399702b15d70c474c3f1952541e25cb0922942868f70daf1
 F ext/wasm/index.html e4bbffdb3d40eff12b3f9c7abedef91787e2935620b7f8d40f2c774b80ad8fa9
 F ext/wasm/jaccwabyt/jaccwabyt.js 1264710db3cfbcb6887d95665b7aeba60c1126eaef789ca4cf1a4a17d5bc7f54
 F ext/wasm/jaccwabyt/jaccwabyt.md 59a20df389abcc3606eb4eaea7fb7ba14504beb3e345dbea9b99a0618ba3bec8
-F ext/wasm/mkwasmbuilds.c 954fe4242e877aeb60de44070628f5215ff51e5d102db6e2cb7da8c21e9e3401
+F ext/wasm/mkwasmbuilds.c baf6636e139e2c1e3b56e8dc26073ec80f6d14ae1876b023985315f43ccf312b
 F ext/wasm/module-symbols.html dc476b403369b26a1a23773e13b80f41b9a49f0825e81435fe3600a7cfbbe337
 F ext/wasm/scratchpad-wasmfs.html a3d7388f3c4b263676b58b526846e9d02dfcb4014ff29d3a5040935286af5b96
 F ext/wasm/scratchpad-wasmfs.mjs 66034b9256b218de59248aad796760a1584c1dd842231505895eff00dbd57c63
@@ -2209,9 +2209,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 4bc6fe30c967e4f15e2c154a1af5434bfecd89cab0e4d040a5bf68c8ce47a546
-Q +16d307cc6c1e203900e7a2dc0730fc0e453946622a2114a07d64ebb99045cfbf
-R c20a68c5f630e1b1098cb3ccfa5581aa
+P dcb44da41f922b9d22731ef7ba7b084444396b206757825e6fcbc165bc73368b
+R 210570fe76691a52c6839e9a781259ef
 U stephan
-Z ea2ca92d0d40102377f12414a54985cd
+Z 0c8abbbcd7ad7641b723276ce5725d66
 # Remove this line to create a well-formed Fossil manifest.
index 6911f975f515282047b79f77dbe4e0b787cfdc79..b47de9a298165bc25651183d650ac6f987f0f426 100644 (file)
@@ -1 +1 @@
-dcb44da41f922b9d22731ef7ba7b084444396b206757825e6fcbc165bc73368b
+012b308b04e6a9e3acbb842317b01b4b91ac165b925918cf20c1f52d045a6ec0