msg-result "Build dir = $::autosetup(builddir)"
msg-result "Configuring SQLite version $PACKAGE_VERSION"
-if {1} {
+apply {{} {
#
# SQLITE_AUTORECONFIG contains make target rules for re-running the
# configure script with the same arguments it was initially invoked
if {[string match {*[ &;$*"]*} $arg]} { return '$arg' }
return $arg
}
- define-append SQLITE_AUTORECONFIG cd [squote $::autosetup(builddir)] && [squote $srcdir/configure]
+ define-append SQLITE_AUTORECONFIG cd [squote $::autosetup(builddir)] && [squote $::srcdir/configure]
#{*}$::autosetup(argv) breaks with --flag='val with spaces', so...
foreach arg $::autosetup(argv) {
define-append SQLITE_AUTORECONFIG [squote $arg]
}
rename squote ""
-}
+}}
# Are we cross-compiling?
set isCrossCompiling [proj-is-cross-compiling]
define CFLAGS [proj-get-env CFLAGS {-g -O2}]
define BUILD_CFLAGS [proj-get-env BUILD_CFLAGS {-g}]
+proj-if-opt-truthy dev {
+ # --enable-dev needs to come early so that the downstream tests
+ # which check for these flags will show the user their updated
+ # state.
+ proj-opt-set all 1
+ proj-opt-set with-debug 1
+ proj-opt-set amalgamation 0
+ define CFLAGS [get-env CFLAGS {-O0 -g}]
+}
+
########################################################################
# Handle --with-wasi-sdk=DIR
#
-# This MUST be run early on because it may change the toolchain and
+# This must be run early on because it may change the toolchain and
# disable a number of config options.
proc sqlite-check-wasi-sdk {} {
set wasiSdkDir [opt-val with-wasi-sdk] ; # ??? [lindex [opt-val with-wasi-sdk] end]
# 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 modifying config flags:"
- # Boolean flags which must be switched off:
+ # Boolean (--enable-/--disable-) flags which must be switched off:
foreach opt {
editline
gcov
#
# See discussion in/around:
# https://sqlite.org/forum/forumpost/0c6fc6f46b2cb3
-proc sqlite-check-soname {} {
+apply {{} {
define LDFLAGS_SONAME_LIBSQLITE3 ""
if {[proj-opt-was-provided soname]} {
set soname [opt-val soname]
} else {
proj-fatal "This environment does not support SONAME."
}
- return sqlite-check-soname ""
-}
-sqlite-check-soname
+}}
-proj-if-opt-truthy dev {
- # --enable-dev needs to come early so that the downstream tests
- # which check for these flags will show the user their updated
- # state.
- proj-opt-set all 1
- proj-opt-set with-debug 1
- proj-opt-set amalgamation 0
- define CFLAGS [get-env CFLAGS {-O0 -g}]
-}
proj-define-for-opt shared ENABLE_SHARED "Build shared library?"
}
}
}; # sqlite-check-tcl
-
sqlite-check-tcl
########################################################################
sqlite-check-icu
########################################################################
-# Emscripten SDK for building the web-based wasm components.
-#
-proc sqlite-check-emsdk {} {
+# Check for the Emscripten SDK for building the web-based wasm
+# components.
+apply {{} {
set emccsh $::srcdir/tool/emcc.sh
if {![get-define HAVE_WASI_SDK] && [proj-check-emsdk]} {
define EMCC_WRAPPER $emccsh
define EMCC_WRAPPER ""
file delete -force $emccsh
}
-}
-sqlite-check-emsdk
+}}
########################################################################
# Check for log(3) in libm and die with an error if it is not
msg-result "Feature flags..."
foreach {boolFlag featureFlag ifSetEvalThis} {
all {} {
+ # The 'all' option must be first in this list.
proj-opt-set fts4
proj-opt-set fts5
proj-opt-set geopoly
#########################################################################
# Show the final feature flag sets:
-if {1} {
+apply {{} {
set oFF [get-define OPT_FEATURE_FLAGS]
if {"" ne $oFF} {
define OPT_FEATURE_FLAGS [lsort -unique $oFF]
msg-result "Shell options: [get-define OPT_SHELL]"
}
unset oFF
-}
+}}
########################################################################
# "Re-export" the autoconf-conventional --XYZdir flags into something
# Potential TODO (unclear): in sqlite3.pc.in, do we need to include
# any CFLAGS_READLINE, CFLAGS_ZLIB, etc in its "Cflags:" section?
proj-make-from-dot-in -touch Makefile sqlite3.pc
-if {0} {
- # Requires a hand-written sqlite_cfg.h.in...
- proj-make-from-dot-in sqlite_cfg.h
- # vs...
-} else {
- # Requires no input template...
- make-config-header sqlite_cfg.h \
- -bare {SIZEOF_* HAVE_DECL_*} \
- -none {HAVE_CFLAG_* LDFLAGS_* SH_* SQLITE_AUTORECONFIG
- TARGET_* USE_GCOV TCL_*} \
- -auto {HAVE_* PACKAGE_*} \
- -none *
- proj-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@
-}
+make-config-header sqlite_cfg.h \
+ -bare {SIZEOF_* HAVE_DECL_*} \
+ -none {HAVE_CFLAG_* LDFLAGS_* SH_* SQLITE_AUTORECONFIG
+ TARGET_* USE_GCOV TCL_*} \
+ -auto {HAVE_* PACKAGE_*} \
+ -none *
+proj-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@
########################################################################
# Some build-dev/debug-only output
-C buildtclext.tcl:\swork\saround\sa\scase,\sreported\sin\s[forum:0683a49cb02f31a1|forum\spost\s0683a49cb0],\sin\swhich\spackage\smaintainers\sedit\stheir\scopy\sof\stclConfig.sh\sto\schange\sthe\sTCL_SHLIB_LD\scommand.
-D 2024-11-15T15:31:13.141
+C Generic\sauto.def\scleanups.\sNo\sfunctional\sdifferences.
+D 2024-11-15T16:35:24.257
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 538d9a162a8fe4811c0a4a22a2a07df40ea4c334f683b94231bfc2a18f14b913
+F auto.def a0f92f2d7762735da5f5728ffbcf44052d8b485b207ec87d13703b681dd7820f
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 3e5b8077c6c6ce72ecab3110eb45943b9765372df789088982dbd6046a7c2523
-R 94ae9c25b190024c5b115d0e3a9b04f4
+P e24a3efec8c168b69d665ab20e8d715210208e6cf291ac93549fdd175a9009d6
+R c10328ada1a32fcd8e3a4906d06b0161
U stephan
-Z 33e57c416f120305271764524e72e9c6
+Z 9ca9b894bda23cfd0311c07f841cb8fa
# Remove this line to create a well-formed Fossil manifest.