mirror of
https://github.com/sqlite/sqlite.git
synced 2025-04-21 19:26:38 +03:00
58 lines
2.0 KiB
Tcl
58 lines
2.0 KiB
Tcl
#!/do/not/tclsh
|
|
# ^^^ help out editors which guess this file's content type.
|
|
#
|
|
# This is the main autosetup-compatible configure script for the
|
|
# SQLite project.
|
|
#
|
|
# This script and all of its dependencies must be kept compatible with
|
|
# JimTCL, a copy of which is included in this source tree as
|
|
# ./autosetup/jimsh0.c. The number of incompatibilities between
|
|
# canonical TCL and JimTCL is very low and alternative formulations of
|
|
# incompatible constructs have, so far, been easy to find.
|
|
#
|
|
# JimTCL: https://jim.tcl.tk
|
|
#
|
|
use sqlite-config
|
|
sqlite-configure canonical {
|
|
proj-if-opt-truthy dev {
|
|
# --enable-dev needs to come early so that the downstream tests
|
|
# which check for the following flags use their updated state.
|
|
proj-opt-set all 1
|
|
proj-opt-set debug 1
|
|
proj-opt-set amalgamation 0
|
|
define CFLAGS [get-env CFLAGS {-O0 -g}]
|
|
# -------------^^^^^^^ intentionally using [get-env] instead of
|
|
# [proj-get-env] here because [sqlite-setup-default-cflags] uses
|
|
# [proj-get-env] and we want this to supercede that.
|
|
sqlite-munge-cflags; # straighten out -DSQLITE_ENABLE/OMIT flags
|
|
}
|
|
sqlite-handle-debug
|
|
sqlite-check-common-bins ;# must come before [sqlite-handle-wasi-sdk]
|
|
sqlite-handle-wasi-sdk ;# must run relatively early, as it changes the environment
|
|
sqlite-check-common-system-deps
|
|
|
|
proj-define-for-opt amalgamation USE_AMALGAMATION "Use amalgamation for builds?"
|
|
|
|
proj-define-for-opt gcov USE_GCOV "Use gcov?"
|
|
|
|
proj-define-for-opt test-status TSTRNNR_OPTS \
|
|
"test-runner flags:" {--status} {}
|
|
|
|
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]
|
|
|
|
if {[set fsan [join [opt-val asan-fsanitize] ","]] in {auto ""}} {
|
|
set fsan address,bounds-strict
|
|
}
|
|
define CFLAGS_ASAN_FSANITIZE [proj-check-fsanitize [split $fsan ", "]]
|
|
|
|
sqlite-handle-tcl
|
|
sqlite-handle-emsdk
|
|
|
|
}
|