]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Document the EXTRA_SRC makefile var and add --amalgamation-extra-src=list to the...
authorstephan <stephan@noemail.net>
Tue, 4 Mar 2025 05:16:10 +0000 (05:16 +0000)
committerstephan <stephan@noemail.net>
Tue, 4 Mar 2025 05:16:10 +0000 (05:16 +0000)
FossilOrigin-Name: 44de0ec29a86f91a227132f7af8898108d555463b754b299eace0ee8475bad57

Makefile.in
auto.def
autosetup/sqlite-config.tcl
main.mk
manifest
manifest.uuid

index 7926aa84ddb2e2fb99983d4a3505a3551a1e630f..f5d54fbb2a95f0f098e1d24091bb680c395a50a6 100644 (file)
@@ -261,6 +261,7 @@ AS_AUTORECONFIG = @SQLITE_AUTORECONFIG@
 USE_AMALGAMATION ?= @USE_AMALGAMATION@
 LINK_TOOLS_DYNAMICALLY ?= @LINK_TOOLS_DYNAMICALLY@
 AMALGAMATION_GEN_FLAGS ?= --linemacros=@AMALGAMATION_LINE_MACROS@
+EXTRA_SRC ?= @AMALGAMATION_EXTRA_SRC@
 
 #
 # CFLAGS for sqlite3$(T.exe)
index e0f8be7bdefc8819d5ca6f5d8737aad1458a37f7..c4fb2c5ab5bc11a7394eadcbb6ab7a2eced8982d 100644 (file)
--- a/auto.def
+++ b/auto.def
@@ -41,8 +41,12 @@ sqlite-configure canonical {
   proj-define-for-opt linemacros AMALGAMATION_LINE_MACROS \
     "Use #line macros in the amalgamation:"
 
+  define AMALGAMATION_EXTRA_SRC \
+    [join [opt-val amalgamation-extra-src ""] " "]
+
   define LINK_TOOLS_DYNAMICALLY [proj-opt-was-provided dynlink-tools]
 
   sqlite-handle-tcl
   sqlite-handle-emsdk
+
 }
index 54daf7c8a368c9b1f13e5293988cda3dde89774e..2d27d3bfbb870621cbc072c6a98c7c3f34c415cd 100644 (file)
@@ -89,6 +89,7 @@ proc sqlite-configure {buildMode configScript} {
   #   boolopt            => "a boolean option which defaults to disabled"
   #   boolopt2=1         => "a boolean option which defaults to enabled"
   #   stringopt:         => "an option which takes an argument, e.g. --stringopt=value"
+  #   stringopt:DESCR    => As for stringopt: with a description for the value
   #   stringopt2:=value  => "an option where the argument is optional and defaults to 'value'"
   #   optalias booltopt3 => "a boolean with a hidden alias. --optalias is not shown in --help"
   #
@@ -259,6 +260,10 @@ proc sqlite-configure {buildMode configScript} {
         with-emsdk:=auto
           => {Top-most dir of the Emscripten SDK installation.
               Needed only by ext/wasm. Default=EMSDK env var.}
+
+        amalgamation-extra-src:FILES
+          => {Space-separated list of soure files to append as-is to the resulting
+              sqlite3.c amalgamation file. May be provided multiple times.}
       }
     }
 
@@ -1562,6 +1567,9 @@ proc sqlite-process-dot-in-files {} {
   # it be done here.
   sqlite-handle-common-feature-flags
   sqlite-finalize-feature-flags
+  if {"" ne [set extraSrc [get-define AMALGAMATION_EXTRA_SRC ""]]} {
+    msg-result "Appending source files to amalgamation: $extraSrc"
+  }
 
   ########################################################################
   # "Re-export" the autoconf-conventional --XYZdir flags into something
diff --git a/main.mk b/main.mk
index 8ffbf2e5ea9ed0e9c4819718f300fa257c12a0d8..536b538087f36503900e4c5eb77cc70c5471b62b 100644 (file)
--- a/main.mk
+++ b/main.mk
@@ -231,6 +231,13 @@ LINK_TOOLS_DYNAMICALLY ?= 0
 # Optional flags for the amalgamation generator.
 #
 AMALGAMATION_GEN_FLAGS ?= --linemacros=0
+#
+# EXTRA_SRC = list of C files to append as-is to the generated
+# amalgamation. It should arguably be called AMALGAMATION_EXTRA_SRC
+# but this older name is already in use by clients.
+#
+EXTRA_SRC ?=
+
 #
 # $(OPT_FEATURE_FLAGS) =
 #
index a5c56b8fac736aa35ff7de4e10d10ad37aadfb34..a61f2890910188514bfe24e54af4a9920b7a4c2f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,9 +1,9 @@
-C Internal\sconfigure\sscript\scleanups.\sResolve\san\sas-yet-hypothetical\scorner\scase\sinvolving\sthe\s--dev\sflag\smixed\swith\scustom\sCFLAGS\scontaining\sSQLITE_ENABLE...\sor\sSQLITE_OMIT...\sflags.\sFix\san\sunrelated\sAPI\sdoc\stypo\sreported\sin\s[forum:606ea661df|forum\spost\s606ea661df].
-D 2025-03-03T14:15:13.905
+C Document\sthe\sEXTRA_SRC\smakefile\svar\sand\sadd\s--amalgamation-extra-src=list\sto\sthe\scanonical-build\sconfigure\sscript\sas\sthe\sformal\sway\sto\spass\sthat\sat\sconfigure-time.
+D 2025-03-04T05:16:10.795
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
-F Makefile.in 4ff9b301b59c66ef9d11c8d133cc62e09173bad4abc7d5eb801e45d5527f8fe6
+F Makefile.in 5d63e20b5f4ced0d717cfabe8610d576c8e7b6c005b3daec3baa15ab23adb435
 F Makefile.linux-generic bd3e3cacd369821a6241d4ea1967395c962dfe3057e38cb0a435cee0e8b789d0
 F Makefile.msc ef04498c7e227a0f459b105bb4952f26cc985d1d6340a367e62d5a79c4689dfb
 F README.md a953c0cffd6e4f2501a306c00ee2b6e1e6630c25031e094629307fe99dd003d1
@@ -14,7 +14,7 @@ F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
 F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
 F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
 F art/sqlite370.svg 40b7e2fe8aac3add5d56dd86ab8d427a4eca5bcb3fe4f8946cb3794e1821d531
-F auto.def f39c4f3e58c8c2853555c7ec65c20701f8a42554d23dcb175a346a4f5ee5a36d
+F auto.def 0612f87776956cff7ba1585ad3ca7ab7d2e88735da0e9b4321dbacb05479cb94
 F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
 F autoconf/Makefile.in c9a7007181df2a07d08bd63c6ba395ed38705aa218789726951aabebec32ee27
 F autoconf/Makefile.msc 5bc67d3912444c40c6f96d003e5c90663e51abb83d204a520110b1b2038dcd8b
@@ -50,7 +50,7 @@ F autosetup/cc.tcl c0fcc50ca91deff8741e449ddad05bcd08268bc31177e613a6343bbd1fd3e
 F autosetup/jimsh0.c a57c16e65dcffc9c76e496757cb3f7fb47e01ecbd1631a0a5e01751fc856f049
 F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
 F autosetup/proj.tcl e69b91f814ea510057ce7663845de703c3746d71cff9a0db6b2563ee3e7fd25e
-F autosetup/sqlite-config.tcl 1d0c70f372c464c9849dde898b5e778f73c72d8183c6e62634a45ee123e37f89
+F autosetup/sqlite-config.tcl 72034aa26cff9b4d57c6ad69fa1a610b60a49101716c5495cc928774616d8d20
 F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9
 F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
 F contrib/sqlitecon.tcl eb4c6578e08dd353263958da0dc620f8400b869a50d06e271ab0be85a51a08d3
@@ -705,7 +705,7 @@ F ext/wasm/tests/opfs/sahpool/sahpool-pausing.js f264925cfc82155de38cecb3d204c36
 F ext/wasm/tests/opfs/sahpool/sahpool-worker.js bd25a43fc2ab2d1bafd8f2854ad3943ef673f7c3be03e95ecf1612ff6e8e2a61
 F ext/wasm/wasmfs.make 68999f5bd8c489239592d59a420f8c627c99169bbd6fa16a404751f757b9f702
 F magic.txt 5ade0bc977aa135e79e3faaea894d5671b26107cc91e70783aa7dc83f22f3ba0
-F main.mk 8a75d3cc70549d2a876eab2666eb82832335a3539822359d612b56e355fdf344
+F main.mk 39bb165545ef4b7822967ae1b33ef1bf58b874c24a2ab294b065c417e9b5086d
 F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
 F mptest/crash01.test 61e61469e257df0850df4293d7d4d6c2af301421
@@ -2213,8 +2213,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 acf9babf0efc346b26c8ac02c0bd973498bf1604b47fe320de14027f9b21ed33
-R 5182bad1c42928bd1b84d01963e58063
+P 0554c00f32b7cc81d35340080df10ea6d66c9ff07fe749ea76cc523a4149b5c8
+R 8a28dd0524bf26130e9da5035c4c8c46
 U stephan
-Z df301f75cd724e3f3d22ab4620a14201
+Z 46a968f2becd7b29966df38ee49c8cfa
 # Remove this line to create a well-formed Fossil manifest.
index 9042fde28842bbb68c07e8000535d32296487be7..0e67ff285428a93f9e46a75deeb42bddf90aaf1e 100644 (file)
@@ -1 +1 @@
-0554c00f32b7cc81d35340080df10ea6d66c9ff07fe749ea76cc523a4149b5c8
+44de0ec29a86f91a227132f7af8898108d555463b754b299eace0ee8475bad57