# --disable-readline ==> boolean false
#
# Trying to pass --readline or --readline=1 or --readline=0 will
-# result in an "unrecognized option" error, despite the the options
+# result in an "unrecognized option" error, despite the the [options]
# call listing the flag as "readline".
#
# The behavior described above can lead lead to some confusion when
# --enable-FLAG
#
# Non-boolean flags, in contrast, use the names specifically given to
-# them in the 'options' invocation. e.g. "with-tcl" is the --with-tcl
+# them in the [options] invocation. e.g. "with-tcl" is the --with-tcl
# flag. Autosetup may, however, choose to automatically alter the help
# text, as demonstrated here:
#
# </build-modes>
# <lib-feature>
threadsafe=1 => {Disable mutexing}
- with-tempstore:=no => {Use an in-ram database for temporary tables: never,no,yes,always}
+ with-tempstore:=no => {Use an in-RAM database for temporary tables: never,no,yes,always}
largefile=1 => {Disable large file support}
load-extension=1 => {Disable loading of external extensions}
math=1 => {Disable math functions}
set isCrossCompiling [proj-is-cross-compiling]
define OPT_FEATURE_FLAGS {} ; # -DSQLITE_OMIT/ENABLE flags.
-define OPT_SHELL {} ; # CFLAGS for the sqlite3 CLI app
+define OPT_SHELL {} ; # Feature-related CFLAGS for the sqlite3 CLI app
########################################################################
-# Adds $args, if not empty, to OPT_FEATURE_FLAGS.
-# If the first arg is -shell then it strips that arg
-# and passes the remaining args th sqlite-add-shell-opt
-# in addition to adding them to OPT_FEATURE_FLAGS.
+# Adds $args, if not empty, to OPT_FEATURE_FLAGS. If the first arg is
+# -shell then it strips that arg and passes the remaining args the
+# sqlite-add-shell-opt in addition to adding them to
+# OPT_FEATURE_FLAGS.
proc sqlite-add-feature-flag {args} {
set shell ""
if {"-shell" eq [lindex $args 0]} {
}
msg-result "Checking WASI SDK directory \[$wasiSdkDir]... "
#puts "prefix = [prefix $wasiSdkDir/bin {clang ld}]"
- proj-affirm-files-exist -v {*}[prefix "$wasiSdkDir/bin/" {clang wasm-ld}]
+ proj-affirm-files-exist -v {*}[prefix "$wasiSdkDir/bin/" {clang wasm-ld ar}]
define HAVE_WASI_SDK 1
define WASI_SDK_DIR $wasiSdkDir
# Disable numerous options which we know either can't work or are
# not useful in this build...
- msg-result "Using wasi-sdk clang. Disabling CLI shell and forcing:"
+ msg-result "Using wasi-sdk clang. Disabling CLI shell modifying config flags:"
+ # Boolean flags which must be switched off:
foreach opt {
editline
gcov
+ icu-collations
load-extension
readline
shared
tcl
threadsafe
} {
- msg-result " --disable-$opt"
- proj-opt-set $opt 0
+ if {[opt-bool $opt]} {
+ msg-result " --disable-$opt"
+ proj-opt-set $opt 0
+ }
+ }
+ # Non-boolean flags which need to be cleared:
+ foreach opt {
+ with-emsdk
+ with-icu-config
+ with-icu-ldflags
+ with-linenoise
+ with-tcl
+ } {
+ if {[proj-opt-was-provided $opt]} {
+ msg-result " removing --$opt"
+ proj-opt-set $opt ""
+ }
}
# Remember that we now have a discrepancy beteween
# $::isCrossCompiling and [proj-is-cross-compiling].
}
proj-check-rpath ; # Determine proper rpath-handling flag
-if {0 && [proj-check-soname libsqlite3.so.3]} {
- # It's not yet clear whether we gain anything from setting -soname
+if {[proj-check-soname libsqlite3.so.3]} {
+ # It's not yet clear whether we gain anything from setting -soname,
+ # but not having it has been a source of anxiety for some users.
define LDFLAGS_SONAME_LIBSQLITE3 [get-define LDFLAGS_SONAME_PREFIX]libsqlite3.so.3
} else {
define LDFLAGS_SONAME_LIBSQLITE3 ""
if {1} {
set ts [opt-val with-tempstore no]
set tsn 1
- msg-checking "Use an in-ram database for temporary tables? "
+ msg-checking "Use an in-RAM database for temporary tables? "
switch -- $ts {
never { set tsn 0 }
no { set tsn 1 }
yes { set tsn 2 }
always { set tsn 3 }
default {
- user-error "Invalid with-tempstore value \[$ts]. Use one of: never, no, yes, always"
+ user-error "Invalid --with-tempstore value '$ts'. Use one of: never, no, yes, always"
}
}
msg-result $ts
}
########################################################################
-# Invert the above loop's logic for some explicit SQLITE_OMIT_...
-# cases. If config option $boolFlag is set, [sqlite-add-feature-flag
+# Invert the above loop's logic for some SQLITE_OMIT_... cases. If
+# config option $boolFlag is false, [sqlite-add-feature-flag
# $featureFlag], where $featureFlag is intended to be
# -DSQLITE_OMIT_...
foreach {boolFlag featureFlag} {
#########################################################################
# Show the final feature flag sets:
-set oFF [get-define OPT_FEATURE_FLAGS]
-if {"" ne $oFF} {
- define OPT_FEATURE_FLAGS [lsort -unique $oFF]
- msg-result "Library feature flags: [get-define OPT_FEATURE_FLAGS]"
-}
-set oFF [get-define OPT_SHELL]
-if {"" ne $oFF} {
- define OPT_SHELL [lsort -unique $oFF]
- msg-result "Shell options: [get-define OPT_SHELL]"
+if {1} {
+ set oFF [get-define OPT_FEATURE_FLAGS]
+ if {"" ne $oFF} {
+ define OPT_FEATURE_FLAGS [lsort -unique $oFF]
+ msg-result "Library feature flags: [get-define OPT_FEATURE_FLAGS]"
+ }
+ set oFF [get-define OPT_SHELL]
+ if {"" ne $oFF} {
+ define OPT_SHELL [lsort -unique $oFF]
+ msg-result "Shell options: [get-define OPT_SHELL]"
+ }
+ unset oFF
}
-unset oFF
########################################################################
# "Re-export" the autoconf-conventional --XYZdir flags into something
-C Doc\stouchups\sin\sthe\sline-editing\sfeature\scheck\scode.
-D 2024-11-07T15:23:54.771
+C Extend\sthe\sset\sof\s--flags\swhich\sget\scleared/unset\swhen\susing\s--with-wasi-sdk.
+D 2024-11-07T16:59:15.970
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
-F auto.def 8adbbcff2808b47c6ea7e55c8303e89e9364906a73dd2ffc55f8171e74366393
+F auto.def 6fc759447a556c36ac78d426d9c243cd0e2896b25fb76965fb33d05e88e83b60
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
F autoconf/tea/win/targets.vc 96a25a1fa6e9e9cfb348fd3760a5395b4ce8acafc8ed10f0412937ec200d5dbd
F autosetup/LICENSE 41a26aebdd2cd185d1e2b210f71b7ce234496979f6b35aef2cbf6b80cbed4ce4
F autosetup/README.autosetup a78ff8c4a3d2636a4268736672a74bf14a82f42687fcf0631a70c516075c031e
-F autosetup/README.md 8f2f1cc05913a9d1267f32eb8325f77b3ac6b45cd7d8f6149667efcd90ddbcaa
+F autosetup/README.md 839e78a356545cbf81c2924566db72508c7e92e8c0ef35a8520dd8f49743383b
F autosetup/autosetup 9416ffdcdd6e2dbf7f6d1e5c890078518930f8af7722a950eacc28c7f151d2d6 x
F autosetup/autosetup-config.guess dfa101c5e8220e864d5e9c72a85e87110df60260d36cb951ad0a85d6d9eaa463 x
F autosetup/autosetup-config.sub a38fb074d0dece01cf919e9fb534a26011608aa8fa606490864295328526cd73 x
F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
F autosetup/jimsh0.c d40e381ea4526a067590e7b91bd4b2efa6d4980d286f908054c647b3df4aee14
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
-F autosetup/proj.tcl 5afbe391eae951567752ba8f0b4ecc05acd5a261e4417161623adda448154ad5
+F autosetup/proj.tcl 638db0bc38e0890610c8dd2dbabb80d3ddf19c9a77d4baad2f2ebf5fb74c384d
F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9
F autosetup/tmake.auto eaebc74ad538dfdd3c817c27eefc31930c20510c4f3a3704071f6cb0629ed71f
F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d700c7a9
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P c5389d39a90047683e80ae9081d5d10aaa95da00dfc8a133b4a1a6949a11620d
-R 54316963f5f6d26ad35729ed06088c2e
+P bb5656bdc905947df205432e108ca6724393061a27028e23bf35b4bf48505d4f
+R 8db0443b3cc341b10691e841478e8610
U stephan
-Z e2fe9fb1c41d92d4fc9e1c534eca8ef3
+Z c32c37eb256587dabe07c86fffbf93af
# Remove this line to create a well-formed Fossil manifest.