mirror of
https://github.com/sqlite/sqlite.git
synced 2024-11-24 16:18:08 +01:00
Rename the 'hwaci' auto.def utility API to the more generic 'proj' API, per /chat discussion. Fix a function name typo which caused readline detection to kill the configure in one code path.
FossilOrigin-Name: e20610f06bfc6f4ebc5806da05c307d91e1f0a8c7a7501a7953273dbf1816fee
This commit is contained in:
parent
dfa64c5542
commit
de4fc707b5
168
auto.def
168
auto.def
@ -12,7 +12,7 @@
|
|||||||
#
|
#
|
||||||
# JimTCL: https://jim.tcl.tk
|
# JimTCL: https://jim.tcl.tk
|
||||||
#
|
#
|
||||||
use cc cc-db cc-shared cc-lib hwaci-common pkg-config
|
use cc cc-db cc-shared cc-lib proj pkg-config
|
||||||
|
|
||||||
# $DUMP_DEFINES_TXT is the file emitted by --dump-defines, intended
|
# $DUMP_DEFINES_TXT is the file emitted by --dump-defines, intended
|
||||||
# only for build debugging and not part of the public build interface.
|
# only for build debugging and not part of the public build interface.
|
||||||
@ -118,8 +118,8 @@ set DUMP_DEFINES_JSON ""; #./config.defines.json
|
|||||||
# booleans: use one of:
|
# booleans: use one of:
|
||||||
# - [opt-bool FLAG] is autosetup's built-in command for this, but we
|
# - [opt-bool FLAG] is autosetup's built-in command for this, but we
|
||||||
# have some convenience variants:
|
# have some convenience variants:
|
||||||
# - [hwaci-opt-truthy FLAG]
|
# - [proj-opt-truthy FLAG]
|
||||||
# - [hwaci-opt-if-truthy FLAG {THEN} {ELSE}]
|
# - [proj-opt-if-truthy FLAG {THEN} {ELSE}]
|
||||||
#
|
#
|
||||||
# Non-boolean (i.e. string) flags:
|
# Non-boolean (i.e. string) flags:
|
||||||
# - [opt-val FLAG ?default?]
|
# - [opt-val FLAG ?default?]
|
||||||
@ -202,7 +202,7 @@ unset flags
|
|||||||
# Carry values from hidden --flag aliases over to their canonical flag
|
# Carry values from hidden --flag aliases over to their canonical flag
|
||||||
# forms.
|
# forms.
|
||||||
#
|
#
|
||||||
hwaci-xfer-options-aliases {
|
proj-xfer-options-aliases {
|
||||||
with-readline-inc => with-readline-cflags
|
with-readline-inc => with-readline-cflags
|
||||||
with-readline-lib => with-readline-ldflags
|
with-readline-lib => with-readline-ldflags
|
||||||
}
|
}
|
||||||
@ -218,7 +218,7 @@ define PACKAGE_BUGREPORT [get-define PACKAGE_URL]/forum
|
|||||||
|
|
||||||
msg-result "srcdir = $srcdir"
|
msg-result "srcdir = $srcdir"
|
||||||
msg-result "top_srcdir = $top_srcdir"
|
msg-result "top_srcdir = $top_srcdir"
|
||||||
msg-result [hwaci-bold "Configuring SQLite version $PACKAGE_VERSION"]
|
msg-result [proj-bold "Configuring SQLite version $PACKAGE_VERSION"]
|
||||||
|
|
||||||
#
|
#
|
||||||
# SQLITE_AUTORECONFIG contains make target rules for re-running the
|
# SQLITE_AUTORECONFIG contains make target rules for re-running the
|
||||||
@ -233,7 +233,7 @@ foreach arg $::autosetup(argv) {
|
|||||||
|
|
||||||
|
|
||||||
# Are we cross-compiling?
|
# Are we cross-compiling?
|
||||||
set cross_compiling [hwaci-is-cross-compiling]
|
set cross_compiling [proj-is-cross-compiling]
|
||||||
if {![file exists sqlite3.pc.in]} {
|
if {![file exists sqlite3.pc.in]} {
|
||||||
msg-result "This appears to be an out-of-tree build."
|
msg-result "This appears to be an out-of-tree build."
|
||||||
}
|
}
|
||||||
@ -266,7 +266,7 @@ proc sqlite-add-shell-opt {args} {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
hwaci-file-extensions
|
proj-file-extensions
|
||||||
if {".exe" eq [get-define TARGET_EXEEXT]} {
|
if {".exe" eq [get-define TARGET_EXEEXT]} {
|
||||||
define SQLITE_OS_UNIX 0
|
define SQLITE_OS_UNIX 0
|
||||||
define SQLITE_OS_WIN 1
|
define SQLITE_OS_WIN 1
|
||||||
@ -279,8 +279,8 @@ if {".exe" eq [get-define TARGET_EXEEXT]} {
|
|||||||
|
|
||||||
#########
|
#########
|
||||||
# Programs needed
|
# Programs needed
|
||||||
if {"" eq [hwaci-bin-define install]} {
|
if {"" eq [proj-bin-define install]} {
|
||||||
hwaci-warn "Cannot find install binary, so 'make install' will not work."
|
proj-warn "Cannot find install binary, so 'make install' will not work."
|
||||||
# Reminder: we historically have ./install-sh in the source tree.
|
# Reminder: we historically have ./install-sh in the source tree.
|
||||||
# Can we not simply use that?
|
# Can we not simply use that?
|
||||||
#
|
#
|
||||||
@ -316,18 +316,18 @@ proc sqlite-check-wasi-sdk {} {
|
|||||||
if {$wasiSdkDir eq ""} {
|
if {$wasiSdkDir eq ""} {
|
||||||
return 0
|
return 0
|
||||||
} elseif {$::cross_compiling} {
|
} elseif {$::cross_compiling} {
|
||||||
hwaci-fatal "Cannot combine --with-wasi-sdk with cross-compilation"
|
proj-fatal "Cannot combine --with-wasi-sdk with cross-compilation"
|
||||||
}
|
}
|
||||||
msg-result "Checking WASI SDK directory \[$wasiSdkDir]... "
|
msg-result "Checking WASI SDK directory \[$wasiSdkDir]... "
|
||||||
#puts "prefix = [prefix $wasiSdkDir/bin {clang ld}]"
|
#puts "prefix = [prefix $wasiSdkDir/bin {clang ld}]"
|
||||||
hwaci-affirm-files-exist -v {*}[prefix "$wasiSdkDir/bin/" {clang wasm-ld}]
|
proj-affirm-files-exist -v {*}[prefix "$wasiSdkDir/bin/" {clang wasm-ld}]
|
||||||
msg-result "Using wasi-sdk clang, disabling: tcl, CLI shell, DLL, loadable extensions, threading"
|
msg-result "Using wasi-sdk clang, disabling: tcl, CLI shell, DLL, loadable extensions, threading"
|
||||||
define HAVE_WASI_SDK 1
|
define HAVE_WASI_SDK 1
|
||||||
define WASI_SDK_DIR $wasiSdkDir
|
define WASI_SDK_DIR $wasiSdkDir
|
||||||
hwaci-opt-set load-extension 0 ;# ==> --disable-load-extension
|
proj-opt-set load-extension 0 ;# ==> --disable-load-extension
|
||||||
hwaci-opt-set threadsafe 0 ;# ==> --threadsafe=0
|
proj-opt-set threadsafe 0 ;# ==> --threadsafe=0
|
||||||
hwaci-opt-set tcl 0 ;# ==> --disable-tcl
|
proj-opt-set tcl 0 ;# ==> --disable-tcl
|
||||||
hwaci-opt-set shared 0 ;# ==> --disable-shared
|
proj-opt-set shared 0 ;# ==> --disable-shared
|
||||||
set cross_compiling 1
|
set cross_compiling 1
|
||||||
|
|
||||||
# Changing --host and --target have no effect here except to possibly
|
# Changing --host and --target have no effect here except to possibly
|
||||||
@ -367,7 +367,7 @@ cc-with {-includes stdint.h} \
|
|||||||
cc-check-functions gmtime_r isnan localtime_r localtime_s \
|
cc-check-functions gmtime_r isnan localtime_r localtime_s \
|
||||||
malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
|
malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
|
||||||
|
|
||||||
hwaci-check-function-in-lib fdatasync rt
|
proj-check-function-in-lib fdatasync rt
|
||||||
define LDFLAGS_FDATASYNC [get-define lib_fdatasync]
|
define LDFLAGS_FDATASYNC [get-define lib_fdatasync]
|
||||||
undefine lib_fdatasync
|
undefine lib_fdatasync
|
||||||
|
|
||||||
@ -383,7 +383,7 @@ cc-check-includes \
|
|||||||
# code generation:
|
# code generation:
|
||||||
cc-check-includes dirent.h sys/time.h
|
cc-check-includes dirent.h sys/time.h
|
||||||
|
|
||||||
if {[cc-check-includes zlib.h] && [hwaci-check-function-in-lib deflate z]} {
|
if {[cc-check-includes zlib.h] && [proj-check-function-in-lib deflate z]} {
|
||||||
# TODO: port over the more sophisticated zlib search from the fossil auto.def
|
# TODO: port over the more sophisticated zlib search from the fossil auto.def
|
||||||
define HAVE_ZLIB 1; # "-DSQLITE_HAVE_ZLIB=1"
|
define HAVE_ZLIB 1; # "-DSQLITE_HAVE_ZLIB=1"
|
||||||
define LDFLAGS_ZLIB -lz
|
define LDFLAGS_ZLIB -lz
|
||||||
@ -399,30 +399,30 @@ if {[cc-check-includes zlib.h] && [hwaci-check-function-in-lib deflate z]} {
|
|||||||
#
|
#
|
||||||
# Determine proper rpath-handling flags.
|
# Determine proper rpath-handling flags.
|
||||||
#
|
#
|
||||||
hwaci-check-rpath
|
proj-check-rpath
|
||||||
|
|
||||||
hwaci-define-if-opt-truthy shared ENABLE_SHARED \
|
proj-define-if-opt-truthy shared ENABLE_SHARED \
|
||||||
"Build shared library?"
|
"Build shared library?"
|
||||||
|
|
||||||
if {![hwaci-define-if-opt-truthy static ENABLE_STATIC \
|
if {![proj-define-if-opt-truthy static ENABLE_STATIC \
|
||||||
"Build static library?"]} {
|
"Build static library?"]} {
|
||||||
hwaci-warn "static lib build may be implicitly re-activated by other components, e.g. libtclsqlite3."
|
proj-warn "static lib build may be implicitly re-activated by other components, e.g. libtclsqlite3."
|
||||||
}
|
}
|
||||||
|
|
||||||
hwaci-define-if-opt-truthy amalgamation USE_AMALGAMATION \
|
proj-define-if-opt-truthy amalgamation USE_AMALGAMATION \
|
||||||
"Use amalgamation for builds?"
|
"Use amalgamation for builds?"
|
||||||
|
|
||||||
hwaci-define-if-opt-truthy gcov USE_GCOV "Use gcov?"
|
proj-define-if-opt-truthy gcov USE_GCOV "Use gcov?"
|
||||||
|
|
||||||
hwaci-define-if-opt-truthy test-status TSTRNNR_OPTS \
|
proj-define-if-opt-truthy test-status TSTRNNR_OPTS \
|
||||||
"test-runner flags:" {--status} {}
|
"test-runner flags:" {--status} {}
|
||||||
|
|
||||||
hwaci-define-if-opt-truthy linemacros AMALGAMATION_LINE_MACROS \
|
proj-define-if-opt-truthy linemacros AMALGAMATION_LINE_MACROS \
|
||||||
"Use #line macros in the amalgamation:"
|
"Use #line macros in the amalgamation:"
|
||||||
|
|
||||||
msg-checking "Debug build? "
|
msg-checking "Debug build? "
|
||||||
|
|
||||||
hwaci-if-opt-truthy with-debug {
|
proj-if-opt-truthy with-debug {
|
||||||
define SQLITE_DEBUG 1
|
define SQLITE_DEBUG 1
|
||||||
define TARGET_DEBUG {-g -DSQLITE_DEBUG=1 -DSQLITE_ENABLE_SELECTTRACE -DSQLITE_ENABLE_WHERETRACE -O0 -Wall}
|
define TARGET_DEBUG {-g -DSQLITE_DEBUG=1 -DSQLITE_ENABLE_SELECTTRACE -DSQLITE_ENABLE_WHERETRACE -O0 -Wall}
|
||||||
msg-result yes
|
msg-result yes
|
||||||
@ -472,7 +472,7 @@ proc sqlite-check-tcl {} {
|
|||||||
|
|
||||||
global top_srcdir
|
global top_srcdir
|
||||||
msg-result "Checking for a suitable tcl... "
|
msg-result "Checking for a suitable tcl... "
|
||||||
set optTcl [hwaci-opt-truthy tcl]
|
set optTcl [proj-opt-truthy tcl]
|
||||||
set use_tcl $optTcl
|
set use_tcl $optTcl
|
||||||
set with_tclsh [opt-val with-tclsh]
|
set with_tclsh [opt-val with-tclsh]
|
||||||
set with_tcl [opt-val with-tcl]
|
set with_tcl [opt-val with-tcl]
|
||||||
@ -480,15 +480,15 @@ proc sqlite-check-tcl {} {
|
|||||||
#puts "sqlite-check-tcl: with_tclsh=${with_tclsh}"
|
#puts "sqlite-check-tcl: with_tclsh=${with_tclsh}"
|
||||||
#puts "sqlite-check-tcl: with_tcl=$with_tcl"
|
#puts "sqlite-check-tcl: with_tcl=$with_tcl"
|
||||||
if {"" eq $with_tclsh && "" eq $with_tcl} {
|
if {"" eq $with_tclsh && "" eq $with_tcl} {
|
||||||
set with_tclsh [hwaci-first-bin-of tclsh9.0 tclsh8.6 tclsh]
|
set with_tclsh [proj-first-bin-of tclsh9.0 tclsh8.6 tclsh]
|
||||||
}
|
}
|
||||||
#puts "sqlite-check-tcl: with_tclsh=${with_tclsh}"
|
#puts "sqlite-check-tcl: with_tclsh=${with_tclsh}"
|
||||||
|
|
||||||
if {"" ne $with_tclsh} {
|
if {"" ne $with_tclsh} {
|
||||||
if {![file isfile $with_tclsh]} {
|
if {![file isfile $with_tclsh]} {
|
||||||
hwaci-fatal "TCL shell $with_tclsh is not a file"
|
proj-fatal "TCL shell $with_tclsh is not a file"
|
||||||
} elseif {![file-isexec $with_tclsh]} {
|
} elseif {![file-isexec $with_tclsh]} {
|
||||||
hwaci-fatal "TCL shell $with_tclsh is not executable"
|
proj-fatal "TCL shell $with_tclsh is not executable"
|
||||||
} else {
|
} else {
|
||||||
define TCLSH_CMD $with_tclsh
|
define TCLSH_CMD $with_tclsh
|
||||||
msg-result "Using tclsh: $with_tclsh"
|
msg-result "Using tclsh: $with_tclsh"
|
||||||
@ -500,7 +500,7 @@ proc sqlite-check-tcl {} {
|
|||||||
if {"" ne $with_tcl && [file isdir $with_tcl]} {
|
if {"" ne $with_tcl && [file isdir $with_tcl]} {
|
||||||
msg-result "$with_tclsh recommends the tclConfig.sh from $with_tcl"
|
msg-result "$with_tclsh recommends the tclConfig.sh from $with_tcl"
|
||||||
} else {
|
} else {
|
||||||
hwaci-warn "$with_tclsh is unable to recommand a tclConfig.sh"
|
proj-warn "$with_tclsh is unable to recommand a tclConfig.sh"
|
||||||
set use_tcl 0
|
set use_tcl 0
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -522,7 +522,7 @@ proc sqlite-check-tcl {} {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if {"" eq $cfg} {
|
if {"" eq $cfg} {
|
||||||
hwaci-fatal "No tclConfig.sh found under ${with_tcl}"
|
proj-fatal "No tclConfig.sh found under ${with_tcl}"
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
# If we have not yet found a tclConfig.sh file, look in $libdir which is
|
# If we have not yet found a tclConfig.sh file, look in $libdir which is
|
||||||
@ -540,7 +540,7 @@ proc sqlite-check-tcl {} {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if {![file readable $cfg]} {
|
if {![file readable $cfg]} {
|
||||||
hwaci-indented-notice {
|
proj-indented-notice {
|
||||||
WARNING: Cannot find a usable tclConfig.sh file. Use
|
WARNING: Cannot find a usable tclConfig.sh file. Use
|
||||||
--with-tcl=DIR to specify a directory where tclConfig.sh
|
--with-tcl=DIR to specify a directory where tclConfig.sh
|
||||||
can be found. SQLite does not use TCL internally, but TCL
|
can be found. SQLite does not use TCL internally, but TCL
|
||||||
@ -551,9 +551,9 @@ proc sqlite-check-tcl {} {
|
|||||||
}
|
}
|
||||||
msg-result "Using tclConfig.sh: $cfg"
|
msg-result "Using tclConfig.sh: $cfg"
|
||||||
} elseif {!$optTcl} {
|
} elseif {!$optTcl} {
|
||||||
hwaci-warn "Unable to run tests because of --disable-tcl"
|
proj-warn "Unable to run tests because of --disable-tcl"
|
||||||
} else {
|
} else {
|
||||||
hwaci-warn "Unable to run tests because no tclConfig.sh file could be located"
|
proj-warn "Unable to run tests because no tclConfig.sh file could be located"
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -572,7 +572,7 @@ proc sqlite-check-tcl {} {
|
|||||||
if {![file-isexec $with_tclsh]} {
|
if {![file-isexec $with_tclsh]} {
|
||||||
set with_tclsh2 [get-define TCL_EXEC_PREFIX]/bin/tclsh
|
set with_tclsh2 [get-define TCL_EXEC_PREFIX]/bin/tclsh
|
||||||
if {![file-isexec $with_tclsh2]} {
|
if {![file-isexec $with_tclsh2]} {
|
||||||
hwaci-warn "Cannot find a usable tclsh (tried: $with_tclsh $with_tclsh2)"
|
proj-warn "Cannot find a usable tclsh (tried: $with_tclsh $with_tclsh2)"
|
||||||
} else {
|
} else {
|
||||||
set with_tclsh $with_tclsh2
|
set with_tclsh $with_tclsh2
|
||||||
}
|
}
|
||||||
@ -592,7 +592,7 @@ proc sqlite-check-tcl {} {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
hwaci-warn "Cannot determine TCLLIBDIR"
|
proj-warn "Cannot determine TCLLIBDIR"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set tclrpath ""
|
set tclrpath ""
|
||||||
@ -609,7 +609,7 @@ proc sqlite-check-tcl {} {
|
|||||||
}
|
}
|
||||||
define TCLLIBDIR $tcllibdir
|
define TCLLIBDIR $tcllibdir
|
||||||
define TCLLIB_RPATH $tclrpath
|
define TCLLIB_RPATH $tclrpath
|
||||||
#hwaci-fatal "TCLLIB_RPATH = [get-define TCLLIB_RPATH]"
|
#proj-fatal "TCLLIB_RPATH = [get-define TCLLIB_RPATH]"
|
||||||
} else {
|
} else {
|
||||||
define TCLLIBDIR ""
|
define TCLLIBDIR ""
|
||||||
define TCLLIB_RPATH ""
|
define TCLLIB_RPATH ""
|
||||||
@ -619,7 +619,7 @@ proc sqlite-check-tcl {} {
|
|||||||
msg-result "Using tclsh: $with_tclsh"
|
msg-result "Using tclsh: $with_tclsh"
|
||||||
define HAVE_TCL 1
|
define HAVE_TCL 1
|
||||||
} else {
|
} else {
|
||||||
hwaci-warn "Cannot find a usable tclsh, so cannot run tests."
|
proj-warn "Cannot find a usable tclsh, so cannot run tests."
|
||||||
}
|
}
|
||||||
}; # sqlite-check-tcl
|
}; # sqlite-check-tcl
|
||||||
|
|
||||||
@ -670,7 +670,7 @@ if {"jimsh" ne $cgtcl} {
|
|||||||
}
|
}
|
||||||
set cgtcl [get-define TCLSH_CMD]
|
set cgtcl [get-define TCLSH_CMD]
|
||||||
if {![file exists $cgtcl]} {
|
if {![file exists $cgtcl]} {
|
||||||
hwaci-fatal "Cannot find a tclsh to use for code generation."
|
proj-fatal "Cannot find a tclsh to use for code generation."
|
||||||
}
|
}
|
||||||
define BTCLSH "\$(TCLSH_CMD)"
|
define BTCLSH "\$(TCLSH_CMD)"
|
||||||
}
|
}
|
||||||
@ -685,11 +685,11 @@ unset cgtcl
|
|||||||
########################################################################
|
########################################################################
|
||||||
# Thread safety?
|
# Thread safety?
|
||||||
msg-checking "Support threadsafe operation? "
|
msg-checking "Support threadsafe operation? "
|
||||||
hwaci-if-opt-truthy threadsafe {
|
proj-if-opt-truthy threadsafe {
|
||||||
msg-result yes
|
msg-result yes
|
||||||
sqlite-add-feature-flag -DSQLITE_THREADSAFE=1
|
sqlite-add-feature-flag -DSQLITE_THREADSAFE=1
|
||||||
if {![hwaci-check-function-in-lib pthread_create pthread]
|
if {![proj-check-function-in-lib pthread_create pthread]
|
||||||
|| ![hwaci-check-function-in-lib pthread_mutexattr_init pthread]} {
|
|| ![proj-check-function-in-lib pthread_mutexattr_init pthread]} {
|
||||||
user-error "Missing required pthread bits"
|
user-error "Missing required pthread bits"
|
||||||
}
|
}
|
||||||
define LDFLAGS_PTHREAD [get-define lib_pthread_create]
|
define LDFLAGS_PTHREAD [get-define lib_pthread_create]
|
||||||
@ -752,11 +752,11 @@ proc sqlite-check-line-editing {} {
|
|||||||
# Use linenoise...
|
# Use linenoise...
|
||||||
set dirLn $check
|
set dirLn $check
|
||||||
if {![file isdir $dirLn]} {
|
if {![file isdir $dirLn]} {
|
||||||
hwaci-fatal "--with-linenoise value is not a directory"
|
proj-fatal "--with-linenoise value is not a directory"
|
||||||
} elseif {![file exists $dirLn/linenoise.c] } {
|
} elseif {![file exists $dirLn/linenoise.c] } {
|
||||||
hwaci-fatal "Cannot find linenoise.c in $dirLn"
|
proj-fatal "Cannot find linenoise.c in $dirLn"
|
||||||
} elseif {![file exists $dirLn/linenoise.h] } {
|
} elseif {![file exists $dirLn/linenoise.h] } {
|
||||||
hwaci-fatal "Cannot find linenoise.h in $dirLn"
|
proj-fatal "Cannot find linenoise.h in $dirLn"
|
||||||
}
|
}
|
||||||
msg-result "Using linenoise from $dirLn"
|
msg-result "Using linenoise from $dirLn"
|
||||||
define CFLAGS_READLINE "-I$dirLn $dirLn/linenoise.c"
|
define CFLAGS_READLINE "-I$dirLn $dirLn/linenoise.c"
|
||||||
@ -781,7 +781,7 @@ proc sqlite-check-line-editing {} {
|
|||||||
# --enable-editline to do exactly that but it seems likely to
|
# --enable-editline to do exactly that but it seems likely to
|
||||||
# break on systems for which which HAVE_EDITLINE=1 previously
|
# break on systems for which which HAVE_EDITLINE=1 previously
|
||||||
# worked.
|
# worked.
|
||||||
hwaci-indented-notice -error {
|
proj-indented-notice -error {
|
||||||
ERROR: the --enable-editline flag is not supported due to
|
ERROR: the --enable-editline flag is not supported due to
|
||||||
non-availability of systems which have it in a form which the
|
non-availability of systems which have it in a form which the
|
||||||
sqlite3 CLI shell expects to see. On some systems this can be
|
sqlite3 CLI shell expects to see. On some systems this can be
|
||||||
@ -798,10 +798,10 @@ proc sqlite-check-line-editing {} {
|
|||||||
|
|
||||||
# Transform with-readline-header=X to with-readline-cflags=-I...
|
# Transform with-readline-header=X to with-readline-cflags=-I...
|
||||||
set v [opt-val with-readline-header]
|
set v [opt-val with-readline-header]
|
||||||
hwaci-opt-set with-readline-header ""
|
proj-opt-set with-readline-header ""
|
||||||
if {"" ne $v} {
|
if {"" ne $v} {
|
||||||
if {"auto" eq $v} {
|
if {"auto" eq $v} {
|
||||||
hwaci-opt-set with-readline-cflags auto
|
proj-opt-set with-readline-cflags auto
|
||||||
} else {
|
} else {
|
||||||
set v [file dirname $v]
|
set v [file dirname $v]
|
||||||
if {[string match */*line $v]} {
|
if {[string match */*line $v]} {
|
||||||
@ -812,7 +812,7 @@ proc sqlite-check-line-editing {} {
|
|||||||
# work!
|
# work!
|
||||||
set v [file dirname $v]
|
set v [file dirname $v]
|
||||||
}
|
}
|
||||||
hwaci-opt-set with-readline-cflags "-I$v"
|
proj-opt-set with-readline-cflags "-I$v"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -822,7 +822,7 @@ proc sqlite-check-line-editing {} {
|
|||||||
set rlInc ""
|
set rlInc ""
|
||||||
if {!$::cross_compiling} {
|
if {!$::cross_compiling} {
|
||||||
# ^^^ this check is derived from the legacy configure script
|
# ^^^ this check is derived from the legacy configure script
|
||||||
set rlInc [hwaci-search-for-header-dir readline.h \
|
set rlInc [proj-search-for-header-dir readline.h \
|
||||||
-dirs {/usr /usr/local /usr/local/readline /usr/contrib /mingw} \
|
-dirs {/usr /usr/local /usr/local/readline /usr/contrib /mingw} \
|
||||||
-subdirs {include/readline include}]
|
-subdirs {include/readline include}]
|
||||||
# ^^^ The -dirs and -subdirs lists are from the legacy configure script
|
# ^^^ The -dirs and -subdirs lists are from the legacy configure script
|
||||||
@ -843,14 +843,14 @@ proc sqlite-check-line-editing {} {
|
|||||||
if {"" eq $rlLib || "auto" eq $rlLib} {
|
if {"" eq $rlLib || "auto" eq $rlLib} {
|
||||||
set rlLib ""
|
set rlLib ""
|
||||||
set libTerm ""
|
set libTerm ""
|
||||||
if {[hwaci-check-function-in-lib tgetent {readline ncurses curses termcap}]} {
|
if {[proj-check-function-in-lib tgetent {readline ncurses curses termcap}]} {
|
||||||
# ^^^ that libs list comes from the legacy configure script ^^^
|
# ^^^ that libs list comes from the legacy configure script ^^^
|
||||||
set libTerm [get-define lib_tgetent]
|
set libTerm [get-define lib_tgetent]
|
||||||
undefine lib_tgetent
|
undefine lib_tgetent
|
||||||
}
|
}
|
||||||
if {"readline" eq $libTerm} {
|
if {"readline" eq $libTerm} {
|
||||||
set rlLib $libTerm
|
set rlLib $libTerm
|
||||||
} elseif {[hwaci-check-function-in-lib readline readline $libTerm]} {
|
} elseif {[proj-check-function-in-lib readline readline $libTerm]} {
|
||||||
set rlLib [get-define lib_readline]
|
set rlLib [get-define lib_readline]
|
||||||
lappend rlLib $libTerm
|
lappend rlLib $libTerm
|
||||||
undefine lib_readline
|
undefine lib_readline
|
||||||
@ -904,7 +904,7 @@ proc sqlite-check-line-editing {} {
|
|||||||
user-notice "Readline completion enabled"
|
user-notice "Readline completion enabled"
|
||||||
} else {
|
} else {
|
||||||
user-notice "WARNING: readline completion disabled due to rl_completion_matches() signature mismatch"
|
user-notice "WARNING: readline completion disabled due to rl_completion_matches() signature mismatch"
|
||||||
add-shell-opt -DSQLITE_OMIT_READLINE_COMPLETION
|
sqlite-add-shell-opt -DSQLITE_OMIT_READLINE_COMPLETION
|
||||||
}
|
}
|
||||||
return "readline"
|
return "readline"
|
||||||
}
|
}
|
||||||
@ -913,8 +913,8 @@ proc sqlite-check-line-editing {} {
|
|||||||
}; # sqlite-check-line-editing
|
}; # sqlite-check-line-editing
|
||||||
msg-result "Line-editing support for the sqlite3 shell: [sqlite-check-line-editing]"
|
msg-result "Line-editing support for the sqlite3 shell: [sqlite-check-line-editing]"
|
||||||
|
|
||||||
hwaci-if-opt-truthy load-extension {
|
proj-if-opt-truthy load-extension {
|
||||||
if {[hwaci-check-function-in-lib dlopen dl]} {
|
if {[proj-check-function-in-lib dlopen dl]} {
|
||||||
define LDFLAGS_DLOPEN [get-define lib_dlopen]
|
define LDFLAGS_DLOPEN [get-define lib_dlopen]
|
||||||
undefine lib_dlopen
|
undefine lib_dlopen
|
||||||
} else {
|
} else {
|
||||||
@ -926,8 +926,8 @@ hwaci-if-opt-truthy load-extension {
|
|||||||
msg-result "Disabling loadable extensions."
|
msg-result "Disabling loadable extensions."
|
||||||
}
|
}
|
||||||
|
|
||||||
hwaci-if-opt-truthy math {
|
proj-if-opt-truthy math {
|
||||||
if {![hwaci-check-function-in-lib ceil m]} {
|
if {![proj-check-function-in-lib ceil m]} {
|
||||||
user-error "Cannot find libm functions. Use --disable-math to bypass this."
|
user-error "Cannot find libm functions. Use --disable-math to bypass this."
|
||||||
}
|
}
|
||||||
define LDFLAGS_MATH [get-define lib_ceil]
|
define LDFLAGS_MATH [get-define lib_ceil]
|
||||||
@ -945,9 +945,9 @@ define cross_compiling ${cross_compiling}
|
|||||||
# Emscripten SDK for building the web-based wasm components.
|
# Emscripten SDK for building the web-based wasm components.
|
||||||
#
|
#
|
||||||
set emccsh $srcdir/tool/emcc.sh
|
set emccsh $srcdir/tool/emcc.sh
|
||||||
if {![get-define HAVE_WASI_SDK] && [hwaci-check-emsdk]} {
|
if {![get-define HAVE_WASI_SDK] && [proj-check-emsdk]} {
|
||||||
define EMCC_WRAPPER $emccsh
|
define EMCC_WRAPPER $emccsh
|
||||||
hwaci-make-from-dot-in $emccsh
|
proj-make-from-dot-in $emccsh
|
||||||
catch {exec chmod u+x $emccsh}
|
catch {exec chmod u+x $emccsh}
|
||||||
} else {
|
} else {
|
||||||
define EMCC_WRAPPER ""
|
define EMCC_WRAPPER ""
|
||||||
@ -977,25 +977,25 @@ proc sqlite-check-icu {} {
|
|||||||
# - -licui18n -licuuc -licudata
|
# - -licui18n -licuuc -licudata
|
||||||
# - -licui18n -licuuc
|
# - -licui18n -licuuc
|
||||||
# - /usr/local/bin/icu-config --ldflags
|
# - /usr/local/bin/icu-config --ldflags
|
||||||
if {[hwaci-opt-was-provided with-icu-config]} {
|
if {[proj-opt-was-provided with-icu-config]} {
|
||||||
set bin [opt-val with-icu-config]
|
set bin [opt-val with-icu-config]
|
||||||
if {"auto" eq $bin} {
|
if {"auto" eq $bin} {
|
||||||
set bin [hwaci-first-bin-of \
|
set bin [proj-first-bin-of \
|
||||||
[get-define prefix]/bin/icu-config \
|
[get-define prefix]/bin/icu-config \
|
||||||
/usr/local/bin/icu-config \
|
/usr/local/bin/icu-config \
|
||||||
/usr/bin/icu-config]
|
/usr/bin/icu-config]
|
||||||
if {"" eq $bin} {
|
if {"" eq $bin} {
|
||||||
hwaci-fatal "--with-icu-config=auto cannot find icu-config binary"
|
proj-fatal "--with-icu-config=auto cannot find icu-config binary"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if {[file-isexec $bin]} {
|
if {[file-isexec $bin]} {
|
||||||
set x [exec $bin --ldflags]
|
set x [exec $bin --ldflags]
|
||||||
if {"" eq $x} {
|
if {"" eq $x} {
|
||||||
hwaci-fatal "$bin --ldflags returned no data"
|
proj-fatal "$bin --ldflags returned no data"
|
||||||
}
|
}
|
||||||
define-append LDFLAGS_ICU $x
|
define-append LDFLAGS_ICU $x
|
||||||
} else {
|
} else {
|
||||||
hwaci-fatal "--with-icu-config=$bin does not refer to an executable"
|
proj-fatal "--with-icu-config=$bin does not refer to an executable"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set flags [define LDFLAGS_ICU [string trim [get-define LDFLAGS_ICU]]]
|
set flags [define LDFLAGS_ICU [string trim [get-define LDFLAGS_ICU]]]
|
||||||
@ -1008,7 +1008,7 @@ proc sqlite-check-icu {} {
|
|||||||
# Recall that shell.c builds with sqlite3.c
|
# Recall that shell.c builds with sqlite3.c
|
||||||
}
|
}
|
||||||
} elseif {[opt-bool icu-collations]} {
|
} elseif {[opt-bool icu-collations]} {
|
||||||
hwaci-warn "ignoring --enable-icu-collations because neither --with-icu-ldflags nor --with-icu-config provided any linker flags"
|
proj-warn "ignoring --enable-icu-collations because neither --with-icu-ldflags nor --with-icu-config provided any linker flags"
|
||||||
} else {
|
} else {
|
||||||
msg-result "ICU support is disabled."
|
msg-result "ICU support is disabled."
|
||||||
}
|
}
|
||||||
@ -1022,7 +1022,7 @@ sqlite-check-icu
|
|||||||
# required linker flags (which may be empty even if the math APIs are
|
# required linker flags (which may be empty even if the math APIs are
|
||||||
# found, depending on the OS).
|
# found, depending on the OS).
|
||||||
proc affirm-have-math {why} {
|
proc affirm-have-math {why} {
|
||||||
if {![msg-quiet hwaci-check-function-in-lib log m]} {
|
if {![msg-quiet proj-check-function-in-lib log m]} {
|
||||||
user-error "Missing math APIs for $why"
|
user-error "Missing math APIs for $why"
|
||||||
}
|
}
|
||||||
define LDFLAGS_MATH [get-define lib_log ""]
|
define LDFLAGS_MATH [get-define lib_log ""]
|
||||||
@ -1034,29 +1034,29 @@ proc affirm-have-math {why} {
|
|||||||
msg-result "Feature flags..."
|
msg-result "Feature flags..."
|
||||||
foreach {boolFlag featureFlag ifSetEvalThis} {
|
foreach {boolFlag featureFlag ifSetEvalThis} {
|
||||||
all {} {
|
all {} {
|
||||||
hwaci-opt-set fts4
|
proj-opt-set fts4
|
||||||
hwaci-opt-set fts5
|
proj-opt-set fts5
|
||||||
hwaci-opt-set geopoly
|
proj-opt-set geopoly
|
||||||
hwaci-opt-set rtree
|
proj-opt-set rtree
|
||||||
hwaci-opt-set session
|
proj-opt-set session
|
||||||
}
|
}
|
||||||
fts4 -DSQLITE_ENABLE_FTS4 {affirm-have-math fts4}
|
fts4 -DSQLITE_ENABLE_FTS4 {affirm-have-math fts4}
|
||||||
fts5 -DSQLITE_ENABLE_FTS5 {affirm-have-math fts5}
|
fts5 -DSQLITE_ENABLE_FTS5 {affirm-have-math fts5}
|
||||||
geopoly -DSQLITE_ENABLE_GEOPOLY {hwaci-opt-set rtree}
|
geopoly -DSQLITE_ENABLE_GEOPOLY {proj-opt-set rtree}
|
||||||
rtree -DSQLITE_ENABLE_RTREE {}
|
rtree -DSQLITE_ENABLE_RTREE {}
|
||||||
session {-DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_PREUPDATE_HOOK} {}
|
session {-DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_PREUPDATE_HOOK} {}
|
||||||
update-limit -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT {}
|
update-limit -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT {}
|
||||||
memsys5 -DSQLITE_ENABLE_MEMSYS5 {}
|
memsys5 -DSQLITE_ENABLE_MEMSYS5 {}
|
||||||
memsys3 {} {
|
memsys3 {} {
|
||||||
if {[opt-bool memsys5]} {
|
if {[opt-bool memsys5]} {
|
||||||
hwaci-warn "not enabling memsys3 because memsys5 is enabled."
|
proj-warn "not enabling memsys3 because memsys5 is enabled."
|
||||||
expr 0
|
expr 0
|
||||||
} else {
|
} else {
|
||||||
sqlite-add-feature-flag -DSQLITE_ENABLE_MEMSYS3
|
sqlite-add-feature-flag -DSQLITE_ENABLE_MEMSYS3
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} {
|
} {
|
||||||
hwaci-if-opt-truthy $boolFlag {
|
proj-if-opt-truthy $boolFlag {
|
||||||
sqlite-add-feature-flag $featureFlag
|
sqlite-add-feature-flag $featureFlag
|
||||||
if {0 != [eval $ifSetEvalThis] && "all" ne $boolFlag} {
|
if {0 != [eval $ifSetEvalThis] && "all" ne $boolFlag} {
|
||||||
msg-result " + $boolFlag"
|
msg-result " + $boolFlag"
|
||||||
@ -1076,7 +1076,7 @@ foreach {boolFlag featureFlag ifSetEvalThis} {
|
|||||||
foreach {boolFlag featureFlag} {
|
foreach {boolFlag featureFlag} {
|
||||||
json -DSQLITE_OMIT_JSON
|
json -DSQLITE_OMIT_JSON
|
||||||
} {
|
} {
|
||||||
if {[hwaci-opt-truthy $boolFlag]} {
|
if {[proj-opt-truthy $boolFlag]} {
|
||||||
msg-result " + $boolFlag"
|
msg-result " + $boolFlag"
|
||||||
} else {
|
} else {
|
||||||
sqlite-add-feature-flag $featureFlag
|
sqlite-add-feature-flag $featureFlag
|
||||||
@ -1123,10 +1123,10 @@ if {0 && "" ne [get-define CFLAGS_JIMSH]} {
|
|||||||
#
|
#
|
||||||
# Potential TODO (unclear): in sqlite3.pc.in, do we need to include
|
# Potential TODO (unclear): in sqlite3.pc.in, do we need to include
|
||||||
# any CFLAGS_READLINE, CFLAGS_ZLIB, etc in its "Cflags:" section?
|
# any CFLAGS_READLINE, CFLAGS_ZLIB, etc in its "Cflags:" section?
|
||||||
hwaci-make-from-dot-in -touch Makefile sqlite3.pc
|
proj-make-from-dot-in -touch Makefile sqlite3.pc
|
||||||
if {0} {
|
if {0} {
|
||||||
# Requires a hand-written sqlite_cfg.h.in...
|
# Requires a hand-written sqlite_cfg.h.in...
|
||||||
hwaci-make-from-dot-in sqlite_cfg.h
|
proj-make-from-dot-in sqlite_cfg.h
|
||||||
# vs...
|
# vs...
|
||||||
} else {
|
} else {
|
||||||
# Requires no input template...
|
# Requires no input template...
|
||||||
@ -1136,9 +1136,9 @@ if {0} {
|
|||||||
TARGET_* USE_GCOV TCL_*} \
|
TARGET_* USE_GCOV TCL_*} \
|
||||||
-auto {HAVE_* PACKAGE_*} \
|
-auto {HAVE_* PACKAGE_*} \
|
||||||
-none *
|
-none *
|
||||||
hwaci-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@
|
proj-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@
|
||||||
}
|
}
|
||||||
#TODO hwaci-make-from-dot-in ext/wasm/GNUmakefile
|
#TODO proj-make-from-dot-in ext/wasm/GNUmakefile
|
||||||
|
|
||||||
if {"" ne $DUMP_DEFINES_JSON} {
|
if {"" ne $DUMP_DEFINES_JSON} {
|
||||||
########################################################################
|
########################################################################
|
||||||
@ -1154,18 +1154,18 @@ if {"" ne $DUMP_DEFINES_JSON} {
|
|||||||
-auto {OPT_* PACKAGE_* HAVE_*}
|
-auto {OPT_* PACKAGE_* HAVE_*}
|
||||||
}
|
}
|
||||||
if {[opt-bool defines-json-include-lowercase]} {
|
if {[opt-bool defines-json-include-lowercase]} {
|
||||||
lappend dumpDefsOpt -none {lib_*} ; # remnants from hwaci-check-function-in-lib and friends
|
lappend dumpDefsOpt -none {lib_*} ; # remnants from proj-check-function-in-lib and friends
|
||||||
lappend dumpDefsOpt -auto {[a-z]*}
|
lappend dumpDefsOpt -auto {[a-z]*}
|
||||||
}
|
}
|
||||||
lappend dumpDefsOpt -none *
|
lappend dumpDefsOpt -none *
|
||||||
hwaci-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt
|
proj-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt
|
||||||
undefine OPT_FEATURE_FLAGS.list
|
undefine OPT_FEATURE_FLAGS.list
|
||||||
undefine OPT_SHELL.list
|
undefine OPT_SHELL.list
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Some build-dev/debug-only output
|
# Some build-dev/debug-only output
|
||||||
hwaci-if-opt-truthy dump-defines {
|
proj-if-opt-truthy dump-defines {
|
||||||
msg-result "--dump-defines is creating $::DUMP_DEFINES_TXT"
|
msg-result "--dump-defines is creating $::DUMP_DEFINES_TXT"
|
||||||
make-config-header $::DUMP_DEFINES_TXT \
|
make-config-header $::DUMP_DEFINES_TXT \
|
||||||
-bare {SQLITE_OS* SQLITE_DEBUG USE_*} \
|
-bare {SQLITE_OS* SQLITE_DEBUG USE_*} \
|
||||||
@ -1180,4 +1180,4 @@ hwaci-if-opt-truthy dump-defines {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
msg-result [hwaci-bold "Source tree is configured! Run make to build it."]
|
msg-result [proj-bold "Source tree is configured! Run make to build it."]
|
||||||
|
@ -45,15 +45,15 @@
|
|||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# $hwaci_ is an internal-use-only array for storing whatever generic
|
# $proj_ is an internal-use-only array for storing whatever generic
|
||||||
# internal stuff we need stored.
|
# internal stuff we need stored.
|
||||||
array set hwaci_ {}
|
array set proj_ {}
|
||||||
set hwaci_(isatty) [isatty? stdout]
|
set proj_(isatty) [isatty? stdout]
|
||||||
|
|
||||||
proc hwaci-warn {msg} {
|
proc proj-warn {msg} {
|
||||||
puts stderr "WARNING: $msg"
|
puts stderr "WARNING: $msg"
|
||||||
}
|
}
|
||||||
proc hwaci-fatal {msg} {
|
proc proj-fatal {msg} {
|
||||||
show-notices
|
show-notices
|
||||||
puts stderr "ERROR: $msg"
|
puts stderr "ERROR: $msg"
|
||||||
exit 1
|
exit 1
|
||||||
@ -63,8 +63,8 @@ proc hwaci-fatal {msg} {
|
|||||||
# If this function believes that the current console might support
|
# If this function believes that the current console might support
|
||||||
# ANSI escape sequences then this returns $str wrapped in a sequence
|
# ANSI escape sequences then this returns $str wrapped in a sequence
|
||||||
# to bold that text, else it returns $str as-is.
|
# to bold that text, else it returns $str as-is.
|
||||||
proc hwaci-bold {str} {
|
proc proj-bold {str} {
|
||||||
if {$::autosetup(iswin) || !$::hwaci_(isatty)} {
|
if {$::autosetup(iswin) || !$::proj_(isatty)} {
|
||||||
return $str
|
return $str
|
||||||
}
|
}
|
||||||
return "\033\[1m${str}\033\[0m"
|
return "\033\[1m${str}\033\[0m"
|
||||||
@ -78,7 +78,7 @@ proc hwaci-bold {str} {
|
|||||||
#
|
#
|
||||||
# If its first argument is -error then it renders the message
|
# If its first argument is -error then it renders the message
|
||||||
# immediately and then exits.
|
# immediately and then exits.
|
||||||
proc hwaci-indented-notice {args} {
|
proc proj-indented-notice {args} {
|
||||||
set fErr ""
|
set fErr ""
|
||||||
switch -exact -- [lindex $args 0] {
|
switch -exact -- [lindex $args 0] {
|
||||||
-error { set args [lassign $args fErr] }
|
-error { set args [lassign $args fErr] }
|
||||||
@ -95,16 +95,16 @@ proc hwaci-indented-notice {args} {
|
|||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Returns 1 if cross-compiling, else 0.
|
# Returns 1 if cross-compiling, else 0.
|
||||||
proc hwaci-is-cross-compiling {} {
|
proc proj-is-cross-compiling {} {
|
||||||
return [expr {[get-define host] ne [get-define build]}]
|
return [expr {[get-define host] ne [get-define build]}]
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# hwaci-lshift_ shifts $count elements from the list named $listVar
|
# proj-lshift_ shifts $count elements from the list named $listVar
|
||||||
# and returns them as a new list. On empty input, returns "".
|
# and returns them as a new list. On empty input, returns "".
|
||||||
#
|
#
|
||||||
# Modified slightly from: https://wiki.tcl-lang.org/page/lshift
|
# Modified slightly from: https://wiki.tcl-lang.org/page/lshift
|
||||||
proc hwaci-lshift_ {listVar {count 1}} {
|
proc proj-lshift_ {listVar {count 1}} {
|
||||||
upvar 1 $listVar l
|
upvar 1 $listVar l
|
||||||
if {![info exists l]} {
|
if {![info exists l]} {
|
||||||
# make the error message show the real variable name
|
# make the error message show the real variable name
|
||||||
@ -124,7 +124,7 @@ proc hwaci-lshift_ {listVar {count 1}} {
|
|||||||
# out any lines which begin with an number of whitespace followed by a
|
# out any lines which begin with an number of whitespace followed by a
|
||||||
# '#', and returns a value containing the [append]ed results of each
|
# '#', and returns a value containing the [append]ed results of each
|
||||||
# remaining line with a \n between each.
|
# remaining line with a \n between each.
|
||||||
proc hwaci-strip-hash-comments_ {val} {
|
proc proj-strip-hash-comments_ {val} {
|
||||||
set x {}
|
set x {}
|
||||||
foreach line [split $val \n] {
|
foreach line [split $val \n] {
|
||||||
if {![string match "#*" [string trimleft $line]]} {
|
if {![string match "#*" [string trimleft $line]]} {
|
||||||
@ -138,7 +138,7 @@ proc hwaci-strip-hash-comments_ {val} {
|
|||||||
# A proxy for cc-check-function-in-lib which "undoes" any changes that
|
# A proxy for cc-check-function-in-lib which "undoes" any changes that
|
||||||
# routine makes to the LIBS define. Returns the result of
|
# routine makes to the LIBS define. Returns the result of
|
||||||
# cc-check-function-in-lib.
|
# cc-check-function-in-lib.
|
||||||
proc hwaci-check-function-in-lib {function libs {otherlibs {}}} {
|
proc proj-check-function-in-lib {function libs {otherlibs {}}} {
|
||||||
set found 0
|
set found 0
|
||||||
define-push {LIBS} {
|
define-push {LIBS} {
|
||||||
set found [cc-check-function-in-lib $function $libs $otherlibs]
|
set found [cc-check-function-in-lib $function $libs $otherlibs]
|
||||||
@ -151,11 +151,11 @@ proc hwaci-check-function-in-lib {function libs {otherlibs {}}} {
|
|||||||
# by the -dirs {LIST} and -subdirs {LIST} flags (each of which have
|
# by the -dirs {LIST} and -subdirs {LIST} flags (each of which have
|
||||||
# sane defaults). Returns either the first matching dir or an empty
|
# sane defaults). Returns either the first matching dir or an empty
|
||||||
# string. The return value does not contain the filename part.
|
# string. The return value does not contain the filename part.
|
||||||
proc hwaci-search-for-header-dir {header args} {
|
proc proj-search-for-header-dir {header args} {
|
||||||
set subdirs {include}
|
set subdirs {include}
|
||||||
set dirs {/usr /usr/local /mingw}
|
set dirs {/usr /usr/local /mingw}
|
||||||
# Debatable:
|
# Debatable:
|
||||||
# if {![hwaci-is-cross-compiling]} {
|
# if {![proj-is-cross-compiling]} {
|
||||||
# lappend dirs [get-define prefix]
|
# lappend dirs [get-define prefix]
|
||||||
# }
|
# }
|
||||||
while {[llength $args]} {
|
while {[llength $args]} {
|
||||||
@ -163,7 +163,7 @@ proc hwaci-search-for-header-dir {header args} {
|
|||||||
-dirs { set args [lassign $args - dirs] }
|
-dirs { set args [lassign $args - dirs] }
|
||||||
-subdirs { set args [lassign $args - subdirs] }
|
-subdirs { set args [lassign $args - subdirs] }
|
||||||
default {
|
default {
|
||||||
hwaci-fatal "Unhandled argument: $args"
|
proj-fatal "Unhandled argument: $args"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -179,21 +179,21 @@ proc hwaci-search-for-header-dir {header args} {
|
|||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# If $v is true, [puts $msg] is called, else puts is not called.
|
# If $v is true, [puts $msg] is called, else puts is not called.
|
||||||
#proc hwaci-maybe-verbose {v msg} {
|
#proc proj-maybe-verbose {v msg} {
|
||||||
# if {$v} {
|
# if {$v} {
|
||||||
# puts $msg
|
# puts $msg
|
||||||
# }
|
# }
|
||||||
#}
|
#}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Usage: hwaci-find-executable-path ?-v? binaryName
|
# Usage: proj-find-executable-path ?-v? binaryName
|
||||||
#
|
#
|
||||||
# Works similarly to autosetup's [find-executable-path $binName] but:
|
# Works similarly to autosetup's [find-executable-path $binName] but:
|
||||||
#
|
#
|
||||||
# - If the first arg is -v, it's verbose about searching, else it's quiet.
|
# - If the first arg is -v, it's verbose about searching, else it's quiet.
|
||||||
#
|
#
|
||||||
# Returns the full path to the result or an empty string.
|
# Returns the full path to the result or an empty string.
|
||||||
proc hwaci-find-executable-path {args} {
|
proc proj-find-executable-path {args} {
|
||||||
set binName $args
|
set binName $args
|
||||||
set verbose 0
|
set verbose 0
|
||||||
if {[lindex $args 0] eq "-v"} {
|
if {[lindex $args 0] eq "-v"} {
|
||||||
@ -213,15 +213,15 @@ proc hwaci-find-executable-path {args} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Uses [hwaci-find-executable-path $binName] to (verbosely) search for
|
# Uses [proj-find-executable-path $binName] to (verbosely) search for
|
||||||
# a binary, sets a define (see below) to the result, and returns the
|
# a binary, sets a define (see below) to the result, and returns the
|
||||||
# result (an empty string if not found).
|
# result (an empty string if not found).
|
||||||
#
|
#
|
||||||
# The define'd name is: if defName is empty then "BIN_X" is used,
|
# The define'd name is: if defName is empty then "BIN_X" is used,
|
||||||
# where X is the upper-case form of $binName with any '-' characters
|
# where X is the upper-case form of $binName with any '-' characters
|
||||||
# replaced with '_'.
|
# replaced with '_'.
|
||||||
proc hwaci-bin-define {binName {defName {}}} {
|
proc proj-bin-define {binName {defName {}}} {
|
||||||
set check [hwaci-find-executable-path -v $binName]
|
set check [proj-find-executable-path -v $binName]
|
||||||
if {"" eq $defName} {
|
if {"" eq $defName} {
|
||||||
set defName "BIN_[string toupper [string map {- _} $binName]]"
|
set defName "BIN_[string toupper [string map {- _} $binName]]"
|
||||||
}
|
}
|
||||||
@ -230,7 +230,7 @@ proc hwaci-bin-define {binName {defName {}}} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Usage: hwaci-first-bin-of bin...
|
# Usage: proj-first-bin-of bin...
|
||||||
#
|
#
|
||||||
# Looks for the first binary found of the names passed to this
|
# Looks for the first binary found of the names passed to this
|
||||||
# function. If a match is found, the full path to that binary is
|
# function. If a match is found, the full path to that binary is
|
||||||
@ -240,7 +240,7 @@ proc hwaci-bin-define {binName {defName {}}} {
|
|||||||
# any define'd name that function stores for the result (because the
|
# any define'd name that function stores for the result (because the
|
||||||
# caller has no sensible way of knowing which result it was unless
|
# caller has no sensible way of knowing which result it was unless
|
||||||
# they pass only a single argument).
|
# they pass only a single argument).
|
||||||
proc hwaci-first-bin-of {args} {
|
proc proj-first-bin-of {args} {
|
||||||
foreach b $args {
|
foreach b $args {
|
||||||
if {[cc-path-progs $b]} {
|
if {[cc-path-progs $b]} {
|
||||||
set u [string toupper $b]
|
set u [string toupper $b]
|
||||||
@ -258,8 +258,8 @@ proc hwaci-first-bin-of {args} {
|
|||||||
#
|
#
|
||||||
# TODO: move this out of this file and back into the 1 or 2 downstream
|
# TODO: move this out of this file and back into the 1 or 2 downstream
|
||||||
# trees which use it.
|
# trees which use it.
|
||||||
proc hwaci-require-bash {} {
|
proc proj-require-bash {} {
|
||||||
set bash [hwaci-bin-define bash]
|
set bash [proj-bin-define bash]
|
||||||
if {"" eq $bash} {
|
if {"" eq $bash} {
|
||||||
user-error "Cannot find required bash shell"
|
user-error "Cannot find required bash shell"
|
||||||
}
|
}
|
||||||
@ -281,7 +281,7 @@ proc hwaci-require-bash {} {
|
|||||||
# passes --foo-bar to configure, even if that invocation would resolve
|
# passes --foo-bar to configure, even if that invocation would resolve
|
||||||
# to the default value of baz. If the user does not explicitly pass in
|
# to the default value of baz. If the user does not explicitly pass in
|
||||||
# --foo-bar (with or without a value) then this returns 0.
|
# --foo-bar (with or without a value) then this returns 0.
|
||||||
proc hwaci-opt-was-provided {key} {
|
proc proj-opt-was-provided {key} {
|
||||||
dict exists $::autosetup(optset) $key
|
dict exists $::autosetup(optset) $key
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -290,7 +290,7 @@ proc hwaci-opt-was-provided {key} {
|
|||||||
# later with [opt-val], [opt-bool], and friends.
|
# later with [opt-val], [opt-bool], and friends.
|
||||||
#
|
#
|
||||||
# Returns $val.
|
# Returns $val.
|
||||||
proc hwaci-opt-set {flag {val 1}} {
|
proc proj-opt-set {flag {val 1}} {
|
||||||
global autosetup
|
global autosetup
|
||||||
if {$flag ni $::autosetup(options)} {
|
if {$flag ni $::autosetup(options)} {
|
||||||
# We have to add this to autosetup(options) or else future calls
|
# We have to add this to autosetup(options) or else future calls
|
||||||
@ -304,15 +304,15 @@ proc hwaci-opt-set {flag {val 1}} {
|
|||||||
########################################################################
|
########################################################################
|
||||||
# Returns 1 if $val appears to be a truthy value, else returns
|
# Returns 1 if $val appears to be a truthy value, else returns
|
||||||
# 0. Truthy values are any of {1 on enabled yes}
|
# 0. Truthy values are any of {1 on enabled yes}
|
||||||
proc hwaci-val-truthy {val} {
|
proc proj-val-truthy {val} {
|
||||||
expr {$val in {1 on enabled yes}}
|
expr {$val in {1 on enabled yes}}
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Returns 1 if [opt-val $flag] appears to be a truthy value or
|
# Returns 1 if [opt-val $flag] appears to be a truthy value or
|
||||||
# [opt-bool $flag] is true. See hwaci-val-truthy.
|
# [opt-bool $flag] is true. See proj-val-truthy.
|
||||||
proc hwaci-opt-truthy {flag} {
|
proc proj-opt-truthy {flag} {
|
||||||
if {[hwaci-val-truthy [opt-val $flag]]} { return 1 }
|
if {[proj-val-truthy [opt-val $flag]]} { return 1 }
|
||||||
set rc 0
|
set rc 0
|
||||||
catch {
|
catch {
|
||||||
# opt-bool will throw if $flag is not a known boolean flag
|
# opt-bool will throw if $flag is not a known boolean flag
|
||||||
@ -322,9 +322,9 @@ proc hwaci-opt-truthy {flag} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# If [hwaci-opt-truthy $flag] is true, eval $then, else eval $else.
|
# If [proj-opt-truthy $flag] is true, eval $then, else eval $else.
|
||||||
proc hwaci-if-opt-truthy {boolFlag thenScript {elseScript {}}} {
|
proc proj-if-opt-truthy {boolFlag thenScript {elseScript {}}} {
|
||||||
if {[hwaci-opt-truthy $boolFlag]} {
|
if {[proj-opt-truthy $boolFlag]} {
|
||||||
uplevel 1 $thenScript
|
uplevel 1 $thenScript
|
||||||
} else {
|
} else {
|
||||||
uplevel 1 $elseScript
|
uplevel 1 $elseScript
|
||||||
@ -332,23 +332,23 @@ proc hwaci-if-opt-truthy {boolFlag thenScript {elseScript {}}} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# If [hwaci-opt-truthy $flag] then [define $def $iftrue] else [define
|
# If [proj-opt-truthy $flag] then [define $def $iftrue] else [define
|
||||||
# $def $iffalse]. If $msg is not empty, output [msg-checking $msg] and
|
# $def $iffalse]. If $msg is not empty, output [msg-checking $msg] and
|
||||||
# a [msg-results ...] which corresponds to the result. Returns 1 if
|
# a [msg-results ...] which corresponds to the result. Returns 1 if
|
||||||
# the opt-truthy check passes, else 0.
|
# the opt-truthy check passes, else 0.
|
||||||
proc hwaci-define-if-opt-truthy {flag def {msg ""} {iftrue 1} {iffalse 0}} {
|
proc proj-define-if-opt-truthy {flag def {msg ""} {iftrue 1} {iffalse 0}} {
|
||||||
if {"" ne $msg} {
|
if {"" ne $msg} {
|
||||||
msg-checking "$msg "
|
msg-checking "$msg "
|
||||||
}
|
}
|
||||||
set rcMsg ""
|
set rcMsg ""
|
||||||
set rc 0
|
set rc 0
|
||||||
if {[hwaci-opt-truthy $flag]} {
|
if {[proj-opt-truthy $flag]} {
|
||||||
define $def $iftrue
|
define $def $iftrue
|
||||||
set rc 1
|
set rc 1
|
||||||
} else {
|
} else {
|
||||||
define $def $iffalse
|
define $def $iffalse
|
||||||
}
|
}
|
||||||
switch -- [hwaci-val-truthy [get-define $def]] {
|
switch -- [proj-val-truthy [get-define $def]] {
|
||||||
0 { set rcMsg no }
|
0 { set rcMsg no }
|
||||||
1 { set rcMsg yes }
|
1 { set rcMsg yes }
|
||||||
}
|
}
|
||||||
@ -361,28 +361,28 @@ proc hwaci-define-if-opt-truthy {flag def {msg ""} {iftrue 1} {iffalse 0}} {
|
|||||||
########################################################################
|
########################################################################
|
||||||
# Args: [-v] optName defName {descr {}}
|
# Args: [-v] optName defName {descr {}}
|
||||||
#
|
#
|
||||||
# Checks [hwaci-opt-truthy $optName] and calls [define $defName X]
|
# Checks [proj-opt-truthy $optName] and calls [define $defName X]
|
||||||
# where X is 0 for false and 1 for true. descr is an optional
|
# where X is 0 for false and 1 for true. descr is an optional
|
||||||
# [msg-checking] argument which defaults to $defName. Returns X.
|
# [msg-checking] argument which defaults to $defName. Returns X.
|
||||||
#
|
#
|
||||||
# If args[0] is -v then the boolean semantics are inverted: if
|
# If args[0] is -v then the boolean semantics are inverted: if
|
||||||
# the option is set, it gets define'd to 0, else 1. Returns the
|
# the option is set, it gets define'd to 0, else 1. Returns the
|
||||||
# define'd value.
|
# define'd value.
|
||||||
proc hwaci-opt-define-bool {args} {
|
proc proj-opt-define-bool {args} {
|
||||||
set invert 0
|
set invert 0
|
||||||
if {[lindex $args 0] eq "-v"} {
|
if {[lindex $args 0] eq "-v"} {
|
||||||
set invert 1
|
set invert 1
|
||||||
set args [lrange $args 1 end]
|
set args [lrange $args 1 end]
|
||||||
}
|
}
|
||||||
set optName [hwaci-lshift_ args]
|
set optName [proj-lshift_ args]
|
||||||
set defName [hwaci-lshift_ args]
|
set defName [proj-lshift_ args]
|
||||||
set descr [hwaci-lshift_ args]
|
set descr [proj-lshift_ args]
|
||||||
if {"" eq $descr} {
|
if {"" eq $descr} {
|
||||||
set descr $defName
|
set descr $defName
|
||||||
}
|
}
|
||||||
set rc 0
|
set rc 0
|
||||||
msg-checking "$descr ... "
|
msg-checking "$descr ... "
|
||||||
if {[hwaci-opt-truthy $optName]} {
|
if {[proj-opt-truthy $optName]} {
|
||||||
if {0 eq $invert} {
|
if {0 eq $invert} {
|
||||||
set rc 1
|
set rc 1
|
||||||
} else {
|
} else {
|
||||||
@ -414,7 +414,7 @@ proc hwaci-opt-define-bool {args} {
|
|||||||
#
|
#
|
||||||
# Note that if it finds LIBLTDL it does not look for LIBDL, so will
|
# Note that if it finds LIBLTDL it does not look for LIBDL, so will
|
||||||
# report only that is has LIBLTDL.
|
# report only that is has LIBLTDL.
|
||||||
proc hwaci-check-module-loader {} {
|
proc proj-check-module-loader {} {
|
||||||
msg-checking "Looking for module-loader APIs... "
|
msg-checking "Looking for module-loader APIs... "
|
||||||
if {99 ne [get-define LDFLAGS_MODULE_LOADER 99]} {
|
if {99 ne [get-define LDFLAGS_MODULE_LOADER 99]} {
|
||||||
if {1 eq [get-define HAVE_LIBLTDL 0]} {
|
if {1 eq [get-define HAVE_LIBLTDL 0]} {
|
||||||
@ -460,11 +460,11 @@ proc hwaci-check-module-loader {} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Sets all flags which would be set by hwaci-check-module-loader to
|
# Sets all flags which would be set by proj-check-module-loader to
|
||||||
# empty/falsy values, as if those checks had failed to find a module
|
# empty/falsy values, as if those checks had failed to find a module
|
||||||
# loader. Intended to be called in place of that function when
|
# loader. Intended to be called in place of that function when
|
||||||
# a module loader is explicitly not desired.
|
# a module loader is explicitly not desired.
|
||||||
proc hwaci-no-check-module-loader {} {
|
proc proj-no-check-module-loader {} {
|
||||||
define HAVE_LIBDL 0
|
define HAVE_LIBDL 0
|
||||||
define HAVE_LIBLTDL 0
|
define HAVE_LIBLTDL 0
|
||||||
define LDFLAGS_MODULE_LOADER ""
|
define LDFLAGS_MODULE_LOADER ""
|
||||||
@ -472,7 +472,7 @@ proc hwaci-no-check-module-loader {} {
|
|||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Opens the given file, reads all of its content, and returns it.
|
# Opens the given file, reads all of its content, and returns it.
|
||||||
proc hwaci-file-content {fname} {
|
proc proj-file-content {fname} {
|
||||||
set fp [open $fname r]
|
set fp [open $fname r]
|
||||||
set rc [read $fp]
|
set rc [read $fp]
|
||||||
close $fp
|
close $fp
|
||||||
@ -482,7 +482,7 @@ proc hwaci-file-content {fname} {
|
|||||||
########################################################################
|
########################################################################
|
||||||
# Returns the contents of the given file as an array of lines, with
|
# Returns the contents of the given file as an array of lines, with
|
||||||
# the EOL stripped from each input line.
|
# the EOL stripped from each input line.
|
||||||
proc hwaci-file-content-list {fname} {
|
proc proj-file-content-list {fname} {
|
||||||
set fp [open $fname r]
|
set fp [open $fname r]
|
||||||
set rc {}
|
set rc {}
|
||||||
while { [gets $fp line] >= 0 } {
|
while { [gets $fp line] >= 0 } {
|
||||||
@ -501,9 +501,9 @@ proc hwaci-file-content-list {fname} {
|
|||||||
#
|
#
|
||||||
# This test has a long history of false positive results because of
|
# This test has a long history of false positive results because of
|
||||||
# compilers reacting differently to the -MJ flag.
|
# compilers reacting differently to the -MJ flag.
|
||||||
proc hwaci-check-compile-commands {{configOpt {}}} {
|
proc proj-check-compile-commands {{configOpt {}}} {
|
||||||
msg-checking "compile_commands.json support... "
|
msg-checking "compile_commands.json support... "
|
||||||
if {"" ne $configOpt && ![hwaci-opt-truthy $configOpt]} {
|
if {"" ne $configOpt && ![proj-opt-truthy $configOpt]} {
|
||||||
msg-result "explicitly disabled"
|
msg-result "explicitly disabled"
|
||||||
define MAKE_COMPILATION_DB no
|
define MAKE_COMPILATION_DB no
|
||||||
return 0
|
return 0
|
||||||
@ -525,14 +525,14 @@ proc hwaci-check-compile-commands {{configOpt {}}} {
|
|||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Runs the 'touch' command on one or more files, ignoring any errors.
|
# Runs the 'touch' command on one or more files, ignoring any errors.
|
||||||
proc hwaci-touch {filename} {
|
proc proj-touch {filename} {
|
||||||
catch { exec touch {*}$filename }
|
catch { exec touch {*}$filename }
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Usage:
|
# Usage:
|
||||||
#
|
#
|
||||||
# hwaci-make-from-dot-in ?-touch? filename(s)...
|
# proj-make-from-dot-in ?-touch? filename(s)...
|
||||||
#
|
#
|
||||||
# Uses [make-template] to create makefile(-like) file(s) $filename
|
# Uses [make-template] to create makefile(-like) file(s) $filename
|
||||||
# from $filename.in but explicitly makes the output read-only, to
|
# from $filename.in but explicitly makes the output read-only, to
|
||||||
@ -545,7 +545,7 @@ proc hwaci-touch {filename} {
|
|||||||
# please the build process.
|
# please the build process.
|
||||||
#
|
#
|
||||||
# Failures when running chmod or touch are silently ignored.
|
# Failures when running chmod or touch are silently ignored.
|
||||||
proc hwaci-make-from-dot-in {args} {
|
proc proj-make-from-dot-in {args} {
|
||||||
set filename $args
|
set filename $args
|
||||||
set touch 0
|
set touch 0
|
||||||
if {[lindex $args 0] eq "-touch"} {
|
if {[lindex $args 0] eq "-touch"} {
|
||||||
@ -557,7 +557,7 @@ proc hwaci-make-from-dot-in {args} {
|
|||||||
catch { exec chmod u+w $f }
|
catch { exec chmod u+w $f }
|
||||||
make-template $f.in $f
|
make-template $f.in $f
|
||||||
if {$touch} {
|
if {$touch} {
|
||||||
hwaci-touch $f
|
proj-touch $f
|
||||||
}
|
}
|
||||||
catch { exec chmod -w $f }
|
catch { exec chmod -w $f }
|
||||||
}
|
}
|
||||||
@ -574,9 +574,9 @@ proc hwaci-make-from-dot-in {args} {
|
|||||||
# order to avoid potential problems with escaping, space-containing
|
# order to avoid potential problems with escaping, space-containing
|
||||||
# tokens, and interfering with autosetup's use of these vars, this
|
# tokens, and interfering with autosetup's use of these vars, this
|
||||||
# routine does not directly modify CFLAGS or LDFLAGS.
|
# routine does not directly modify CFLAGS or LDFLAGS.
|
||||||
proc hwaci-check-profile-flag {{flagname profile}} {
|
proc proj-check-profile-flag {{flagname profile}} {
|
||||||
#puts "flagname=$flagname ?[hwaci-opt-truthy $flagname]?"
|
#puts "flagname=$flagname ?[proj-opt-truthy $flagname]?"
|
||||||
if {[hwaci-opt-truthy $flagname]} {
|
if {[proj-opt-truthy $flagname]} {
|
||||||
set CC [get-define CC]
|
set CC [get-define CC]
|
||||||
regsub {.*ccache *} $CC "" CC
|
regsub {.*ccache *} $CC "" CC
|
||||||
# ^^^ if CC="ccache gcc" then [exec] treats "ccache gcc" as a
|
# ^^^ if CC="ccache gcc" then [exec] treats "ccache gcc" as a
|
||||||
@ -602,7 +602,7 @@ proc hwaci-check-profile-flag {{flagname profile}} {
|
|||||||
# machine, i.e. the local host). If $key == "build" then some
|
# machine, i.e. the local host). If $key == "build" then some
|
||||||
# additional checks may be performed which are not applicable when
|
# additional checks may be performed which are not applicable when
|
||||||
# $key == "host".
|
# $key == "host".
|
||||||
proc hwaci-looks-like-windows {{key host}} {
|
proc proj-looks-like-windows {{key host}} {
|
||||||
global autosetup
|
global autosetup
|
||||||
switch -glob -- [get-define $key] {
|
switch -glob -- [get-define $key] {
|
||||||
*-*-ming* - *-*-cygwin - *-*-msys {
|
*-*-ming* - *-*-cygwin - *-*-msys {
|
||||||
@ -628,7 +628,7 @@ proc hwaci-looks-like-windows {{key host}} {
|
|||||||
#
|
#
|
||||||
# TODO: have someone verify whether this is correct for the
|
# TODO: have someone verify whether this is correct for the
|
||||||
# non-Linux/BSD platforms.
|
# non-Linux/BSD platforms.
|
||||||
proc hwaci-looks-like-mac {{key host}} {
|
proc proj-looks-like-mac {{key host}} {
|
||||||
switch -glob -- [get-define $key] {
|
switch -glob -- [get-define $key] {
|
||||||
*apple* {
|
*apple* {
|
||||||
return 1
|
return 1
|
||||||
@ -645,13 +645,13 @@ proc hwaci-looks-like-mac {{key host}} {
|
|||||||
# build environment is then BUILD_EXEEXT is [define]'d to ".exe", else
|
# build environment is then BUILD_EXEEXT is [define]'d to ".exe", else
|
||||||
# "". If the target, a.k.a. "host", is then TARGET_EXEEXT is
|
# "". If the target, a.k.a. "host", is then TARGET_EXEEXT is
|
||||||
# [define]'d to ".exe", else "".
|
# [define]'d to ".exe", else "".
|
||||||
proc hwaci-exe-extension {} {
|
proc proj-exe-extension {} {
|
||||||
set rH ""
|
set rH ""
|
||||||
set rB ""
|
set rB ""
|
||||||
if {[hwaci-looks-like-windows host]} {
|
if {[proj-looks-like-windows host]} {
|
||||||
set rH ".exe"
|
set rH ".exe"
|
||||||
}
|
}
|
||||||
if {[hwaci-looks-like-windows build]} {
|
if {[proj-looks-like-windows build]} {
|
||||||
set rB ".exe"
|
set rB ".exe"
|
||||||
}
|
}
|
||||||
define BUILD_EXEEXT $rB
|
define BUILD_EXEEXT $rB
|
||||||
@ -659,7 +659,7 @@ proc hwaci-exe-extension {} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Works like hwaci-exe-extension except that it defines BUILD_DLLEXT
|
# Works like proj-exe-extension except that it defines BUILD_DLLEXT
|
||||||
# and TARGET_DLLEXT to one of (.so, ,dll, .dylib).
|
# and TARGET_DLLEXT to one of (.so, ,dll, .dylib).
|
||||||
#
|
#
|
||||||
# Trivia: for .dylib files, the linker needs the -dynamiclib flag
|
# Trivia: for .dylib files, the linker needs the -dynamiclib flag
|
||||||
@ -667,7 +667,7 @@ proc hwaci-exe-extension {} {
|
|||||||
#
|
#
|
||||||
# TODO: have someone verify whether this is correct for the
|
# TODO: have someone verify whether this is correct for the
|
||||||
# non-Linux/BSD platforms.
|
# non-Linux/BSD platforms.
|
||||||
proc hwaci-dll-extension {} {
|
proc proj-dll-extension {} {
|
||||||
proc inner {key} {
|
proc inner {key} {
|
||||||
switch -glob -- [get-define $key] {
|
switch -glob -- [get-define $key] {
|
||||||
*apple* {
|
*apple* {
|
||||||
@ -686,10 +686,10 @@ proc hwaci-dll-extension {} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Static-library counterpart of hwaci-dll-extension. Defines
|
# Static-library counterpart of proj-dll-extension. Defines
|
||||||
# BUILD_LIBEXT and TARGET_LIBEXT to the conventional static library
|
# BUILD_LIBEXT and TARGET_LIBEXT to the conventional static library
|
||||||
# extension for the being-built-on resp. the target platform.
|
# extension for the being-built-on resp. the target platform.
|
||||||
proc hwaci-lib-extension {} {
|
proc proj-lib-extension {} {
|
||||||
proc inner {key} {
|
proc inner {key} {
|
||||||
switch -glob -- [get-define $key] {
|
switch -glob -- [get-define $key] {
|
||||||
*-*-ming* - *-*-cygwin - *-*-msys {
|
*-*-ming* - *-*-cygwin - *-*-msys {
|
||||||
@ -705,11 +705,11 @@ proc hwaci-lib-extension {} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Calls all of the hwaci-*-extension functions.
|
# Calls all of the proj-*-extension functions.
|
||||||
proc hwaci-file-extensions {} {
|
proc proj-file-extensions {} {
|
||||||
hwaci-exe-extension
|
proj-exe-extension
|
||||||
hwaci-dll-extension
|
proj-dll-extension
|
||||||
hwaci-lib-extension
|
proj-lib-extension
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
@ -717,7 +717,7 @@ proc hwaci-file-extensions {} {
|
|||||||
# the filesystem, it fails fatally with an informative message.
|
# the filesystem, it fails fatally with an informative message.
|
||||||
# Returns the last file name it checks. If the first argument is -v
|
# Returns the last file name it checks. If the first argument is -v
|
||||||
# then it emits msg-checking/msg-result messages for each file.
|
# then it emits msg-checking/msg-result messages for each file.
|
||||||
proc hwaci-affirm-files-exist {args} {
|
proc proj-affirm-files-exist {args} {
|
||||||
set rc ""
|
set rc ""
|
||||||
set verbose 0
|
set verbose 0
|
||||||
if {[lindex $args 0] eq "-v"} {
|
if {[lindex $args 0] eq "-v"} {
|
||||||
@ -753,7 +753,7 @@ proc hwaci-affirm-files-exist {args} {
|
|||||||
# but BIN_EMCC is then emcc was not found in the EMSDK_HOME, in which
|
# but BIN_EMCC is then emcc was not found in the EMSDK_HOME, in which
|
||||||
# case we have to rely on the fact that sourcing $EMSDK_ENV from a
|
# case we have to rely on the fact that sourcing $EMSDK_ENV from a
|
||||||
# shell will add emcc to the $PATH.
|
# shell will add emcc to the $PATH.
|
||||||
proc hwaci-check-emsdk {} {
|
proc proj-check-emsdk {} {
|
||||||
set emsdkHome [opt-val with-emsdk]
|
set emsdkHome [opt-val with-emsdk]
|
||||||
define EMSDK_HOME ""
|
define EMSDK_HOME ""
|
||||||
define EMSDK_ENV ""
|
define EMSDK_ENV ""
|
||||||
@ -794,7 +794,7 @@ proc hwaci-check-emsdk {} {
|
|||||||
# Achtung: we have seen platforms which report that a given option
|
# Achtung: we have seen platforms which report that a given option
|
||||||
# checked here will work but then fails at build-time, and the current
|
# checked here will work but then fails at build-time, and the current
|
||||||
# order of checks reflects that.
|
# order of checks reflects that.
|
||||||
proc hwaci-check-rpath {} {
|
proc proj-check-rpath {} {
|
||||||
set rc 1
|
set rc 1
|
||||||
set lp "[get-define prefix]/lib"
|
set lp "[get-define prefix]/lib"
|
||||||
# If we _don't_ use cc-with {} here (to avoid updating the global
|
# If we _don't_ use cc-with {} here (to avoid updating the global
|
||||||
@ -840,7 +840,7 @@ proc hwaci-check-rpath {} {
|
|||||||
# <readline/readline.h>.
|
# <readline/readline.h>.
|
||||||
#
|
#
|
||||||
# Returns the value of HAVE_READLINE.
|
# Returns the value of HAVE_READLINE.
|
||||||
proc hwaci-check-readline {} {
|
proc proj-check-readline {} {
|
||||||
define HAVE_READLINE 0
|
define HAVE_READLINE 0
|
||||||
define LDFLAGS_READLINE ""
|
define LDFLAGS_READLINE ""
|
||||||
define CFLAGS_READLINE ""
|
define CFLAGS_READLINE ""
|
||||||
@ -875,9 +875,9 @@ proc hwaci-check-readline {} {
|
|||||||
|
|
||||||
# Look for readline.h
|
# Look for readline.h
|
||||||
set rlInc ""
|
set rlInc ""
|
||||||
if {![hwaci-is-cross-compiling]} {
|
if {![proj-is-cross-compiling]} {
|
||||||
# ^^^ this check is derived from SQLite's legacy configure script
|
# ^^^ this check is derived from SQLite's legacy configure script
|
||||||
set rlInc [hwaci-search-for-header-dir readline.h \
|
set rlInc [proj-search-for-header-dir readline.h \
|
||||||
-subdirs {include/readline include}]
|
-subdirs {include/readline include}]
|
||||||
if {"" ne $rlInc} {
|
if {"" ne $rlInc} {
|
||||||
if {[string match */*line $rlInc]} {
|
if {[string match */*line $rlInc]} {
|
||||||
@ -896,14 +896,14 @@ proc hwaci-check-readline {} {
|
|||||||
set rlLib ""
|
set rlLib ""
|
||||||
if {"" ne $rlInc} {
|
if {"" ne $rlInc} {
|
||||||
set libTerm ""
|
set libTerm ""
|
||||||
if {[hwaci-check-function-in-lib tgetent {readline ncurses curses termcap}]} {
|
if {[proj-check-function-in-lib tgetent {readline ncurses curses termcap}]} {
|
||||||
# ^^^ check extracted from an ancient autotools configure script.
|
# ^^^ check extracted from an ancient autotools configure script.
|
||||||
set libTerm [get-define lib_tgetent]
|
set libTerm [get-define lib_tgetent]
|
||||||
undefine lib_tgetent
|
undefine lib_tgetent
|
||||||
}
|
}
|
||||||
if {"readline" eq $libTerm} {
|
if {"readline" eq $libTerm} {
|
||||||
set rlLib $libTerm
|
set rlLib $libTerm
|
||||||
} elseif {[hwaci-check-function-in-lib readline readline $libTerm]} {
|
} elseif {[proj-check-function-in-lib readline readline $libTerm]} {
|
||||||
set rlLib [get-define lib_readline]
|
set rlLib [get-define lib_readline]
|
||||||
lappend rlLib $libTerm
|
lappend rlLib $libTerm
|
||||||
undefine lib_readline
|
undefine lib_readline
|
||||||
@ -925,12 +925,12 @@ proc hwaci-check-readline {} {
|
|||||||
|
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Internal helper for hwaci-dump-defs-json. Expects to be passed a
|
# Internal helper for proj-dump-defs-json. Expects to be passed a
|
||||||
# [define] name and the variadic $args which are passed to
|
# [define] name and the variadic $args which are passed to
|
||||||
# hwaci-dump-defs-json. If it finds a pattern match for the given
|
# proj-dump-defs-json. If it finds a pattern match for the given
|
||||||
# $name in the various $args, it returns the type flag for that $name,
|
# $name in the various $args, it returns the type flag for that $name,
|
||||||
# e.g. "-str" or "-bare", else returns an empty string.
|
# e.g. "-str" or "-bare", else returns an empty string.
|
||||||
proc hwaci-defs-type_ {name spec} {
|
proc proj-defs-type_ {name spec} {
|
||||||
foreach {type patterns} $spec {
|
foreach {type patterns} $spec {
|
||||||
foreach pattern $patterns {
|
foreach pattern $patterns {
|
||||||
if {[string match $pattern $name]} {
|
if {[string match $pattern $name]} {
|
||||||
@ -942,50 +942,50 @@ proc hwaci-defs-type_ {name spec} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Internal helper for hwaci-defs-format_: returns a JSON-ish quoted
|
# Internal helper for proj-defs-format_: returns a JSON-ish quoted
|
||||||
# form of the given (JSON) string-type values.
|
# form of the given (JSON) string-type values.
|
||||||
proc hwaci-quote-str_ {value} {
|
proc proj-quote-str_ {value} {
|
||||||
return \"[string map [list \\ \\\\ \" \\\"] $value]\"
|
return \"[string map [list \\ \\\\ \" \\\"] $value]\"
|
||||||
}
|
}
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# An internal impl detail of hwaci-dump-defs-json. Requires a data
|
# An internal impl detail of proj-dump-defs-json. Requires a data
|
||||||
# type specifier, as used by make-config-header, and a value. Returns
|
# type specifier, as used by make-config-header, and a value. Returns
|
||||||
# the formatted value or the value $::hwaci_(defs-skip) if the caller
|
# the formatted value or the value $::proj_(defs-skip) if the caller
|
||||||
# should skip emitting that value.
|
# should skip emitting that value.
|
||||||
set hwaci_(defs-skip) "-hwaci-defs-format_ sentinel"
|
set proj_(defs-skip) "-proj-defs-format_ sentinel"
|
||||||
proc hwaci-defs-format_ {type value} {
|
proc proj-defs-format_ {type value} {
|
||||||
switch -exact -- $type {
|
switch -exact -- $type {
|
||||||
-bare {
|
-bare {
|
||||||
# Just output the value unchanged
|
# Just output the value unchanged
|
||||||
}
|
}
|
||||||
-none {
|
-none {
|
||||||
set value $::hwaci_(defs-skip)
|
set value $::proj_(defs-skip)
|
||||||
}
|
}
|
||||||
-str {
|
-str {
|
||||||
set value [hwaci-quote-str_ $value]
|
set value [proj-quote-str_ $value]
|
||||||
}
|
}
|
||||||
-auto {
|
-auto {
|
||||||
# Automatically determine the type
|
# Automatically determine the type
|
||||||
if {![string is integer -strict $value]} {
|
if {![string is integer -strict $value]} {
|
||||||
set value [hwaci-quote-str_ $value]
|
set value [proj-quote-str_ $value]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
-array {
|
-array {
|
||||||
set ar {}
|
set ar {}
|
||||||
foreach v $value {
|
foreach v $value {
|
||||||
set v [hwaci-defs-format_ -auto $v]
|
set v [proj-defs-format_ -auto $v]
|
||||||
if {$::hwaci_(defs-skip) ne $v} {
|
if {$::proj_(defs-skip) ne $v} {
|
||||||
lappend ar $v
|
lappend ar $v
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set value "\[ [join $ar {, }] \]"
|
set value "\[ [join $ar {, }] \]"
|
||||||
}
|
}
|
||||||
"" {
|
"" {
|
||||||
set value $::hwaci_(defs-skip)
|
set value $::proj_(defs-skip)
|
||||||
}
|
}
|
||||||
default {
|
default {
|
||||||
hwaci-fatal "Unknown type in hwaci-dump-defs-json: $type"
|
proj-fatal "Unknown type in proj-dump-defs-json: $type"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $value
|
return $value
|
||||||
@ -1021,14 +1021,14 @@ proc hwaci-defs-format_ {type value} {
|
|||||||
# Neither is especially satisfactory (and the second is useless), and
|
# Neither is especially satisfactory (and the second is useless), and
|
||||||
# handling of such values is subject to change if any such values ever
|
# handling of such values is subject to change if any such values ever
|
||||||
# _really_ need to be processed by our source trees.
|
# _really_ need to be processed by our source trees.
|
||||||
proc hwaci-dump-defs-json {file args} {
|
proc proj-dump-defs-json {file args} {
|
||||||
file mkdir [file dirname $file]
|
file mkdir [file dirname $file]
|
||||||
set lines {}
|
set lines {}
|
||||||
lappend args -bare {SIZEOF_* HAVE_DECL_*} -auto HAVE_*
|
lappend args -bare {SIZEOF_* HAVE_DECL_*} -auto HAVE_*
|
||||||
foreach n [lsort [dict keys [all-defines]]] {
|
foreach n [lsort [dict keys [all-defines]]] {
|
||||||
set type [hwaci-defs-type_ $n $args]
|
set type [proj-defs-type_ $n $args]
|
||||||
set value [hwaci-defs-format_ $type [get-define $n]]
|
set value [proj-defs-format_ $type [get-define $n]]
|
||||||
if {$::hwaci_(defs-skip) ne $value} {
|
if {$::proj_(defs-skip) ne $value} {
|
||||||
lappend lines "\"$n\": ${value}"
|
lappend lines "\"$n\": ${value}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1067,13 +1067,13 @@ proc hwaci-dump-defs-json {file args} {
|
|||||||
# to carry over any values from hidden aliases into their canonical
|
# to carry over any values from hidden aliases into their canonical
|
||||||
# names, so that in the above example [opt-value canonical] will
|
# names, so that in the above example [opt-value canonical] will
|
||||||
# return X if --alias=X is passed in.
|
# return X if --alias=X is passed in.
|
||||||
proc hwaci-xfer-options-aliases {mapping} {
|
proc proj-xfer-options-aliases {mapping} {
|
||||||
foreach {hidden - canonical} [hwaci-strip-hash-comments_ $mapping] {
|
foreach {hidden - canonical} [proj-strip-hash-comments_ $mapping] {
|
||||||
if {[hwaci-opt-was-provided $hidden]} {
|
if {[proj-opt-was-provided $hidden]} {
|
||||||
if {[hwaci-opt-was-provided $canonical]} {
|
if {[proj-opt-was-provided $canonical]} {
|
||||||
hwaci-fatal "both --$canonical and its alias --$hidden were used. Use only one or the other."
|
proj-fatal "both --$canonical and its alias --$hidden were used. Use only one or the other."
|
||||||
} else {
|
} else {
|
||||||
hwaci-opt-set $canonical [opt-val $hidden]
|
proj-opt-set $canonical [opt-val $hidden]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1095,8 +1095,8 @@ proc hwaci-xfer-options-aliases {mapping} {
|
|||||||
# Sidebar: if we do this before the cc package is installed, it gets
|
# Sidebar: if we do this before the cc package is installed, it gets
|
||||||
# reverted by that package. Ergo, the cc package init will tell the
|
# reverted by that package. Ergo, the cc package init will tell the
|
||||||
# user "Build C compiler...cc" shortly before we tell them:
|
# user "Build C compiler...cc" shortly before we tell them:
|
||||||
proc hwaci-redefine-cc-for-build {} {
|
proc proj-redefine-cc-for-build {} {
|
||||||
if {![hwaci-is-cross-compiling]
|
if {![proj-is-cross-compiling]
|
||||||
&& "nope" eq [get-env CC_FOR_BUILD "nope"]
|
&& "nope" eq [get-env CC_FOR_BUILD "nope"]
|
||||||
&& [get-define CC] ne [get-define CC_FOR_BUILD]} {
|
&& [get-define CC] ne [get-define CC_FOR_BUILD]} {
|
||||||
user-notice "Re-defining CC_FOR_BUILD to CC=[get-define CC]. To avoid this, explicitly pass CC_FOR_BUILD=..."
|
user-notice "Re-defining CC_FOR_BUILD to CC=[get-define CC]. To avoid this, explicitly pass CC_FOR_BUILD=..."
|
16
manifest
16
manifest
@ -1,5 +1,5 @@
|
|||||||
C Remove\sthe\slong-unused,\slegacy\svsixtest/\slogic\sfrom\sthe\ssource\stree.
|
C Rename\sthe\s'hwaci'\sauto.def\sutility\sAPI\sto\sthe\smore\sgeneric\s'proj'\sAPI,\sper\s/chat\sdiscussion.\sFix\sa\sfunction\sname\stypo\swhich\scaused\sreadline\sdetection\sto\skill\sthe\sconfigure\sin\sone\scode\spath.
|
||||||
D 2024-10-28T13:16:32.455
|
D 2024-10-28T14:16:50.100
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md b6e6c1baf38e4339bd3f1e0e5e5bfd0a9a93d133360691b2785c2d4b2f2dcec2
|
F LICENSE.md b6e6c1baf38e4339bd3f1e0e5e5bfd0a9a93d133360691b2785c2d4b2f2dcec2
|
||||||
@ -13,7 +13,7 @@ F art/icon-80x90.gif 65509ce3e5f86a9cd64fe7fca2d23954199f31fe44c1e09e208c80fb83d
|
|||||||
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
|
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
|
||||||
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
|
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
|
||||||
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
|
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
|
||||||
F auto.def 57635a8f8c2e5e91e4c21094a70bbb56473811366e75679ceec9b6626e49a826
|
F auto.def 537d9e3cd85ed5a454ee6055585a4eadedde921fbb686fcb40c8446933be2b5a
|
||||||
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
|
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
|
||||||
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
|
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
|
||||||
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
|
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
|
||||||
@ -47,9 +47,9 @@ F autosetup/cc-lib.tcl 493c5935b5dd3bf9bd4eca89b07c8b1b1a9356d61783035144e21795f
|
|||||||
F autosetup/cc-shared.tcl 4f024e94a47f427ba61de1739f6381ef0080210f9fae89112d5c1de1e5460d78
|
F autosetup/cc-shared.tcl 4f024e94a47f427ba61de1739f6381ef0080210f9fae89112d5c1de1e5460d78
|
||||||
F autosetup/cc.tcl 7e2fe943ae9d45cf39e9f5b05b6230df8e719415edea5af06c30eb68680bde14
|
F autosetup/cc.tcl 7e2fe943ae9d45cf39e9f5b05b6230df8e719415edea5af06c30eb68680bde14
|
||||||
F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
|
F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
|
||||||
F autosetup/hwaci-common.tcl 48c221838bca6e362b34c85c3dff2ba7f69efcec9558d3807c9b33b1d8c13c28
|
|
||||||
F autosetup/jimsh0.c 27ea5f221359ef6c58780fc6c185aadbf8d3bee9a021331a3e5de0eba0dc6de6
|
F autosetup/jimsh0.c 27ea5f221359ef6c58780fc6c185aadbf8d3bee9a021331a3e5de0eba0dc6de6
|
||||||
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
|
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
|
||||||
|
F autosetup/proj.tcl b01940e6b2e9c24f2c50f0e180d308a0a4f88d2e2b00c6902edd5980d221becf w autosetup/hwaci-common.tcl
|
||||||
F autosetup/system.tcl 3a39d6e0b3bfba526fd39afe07c1d0d325e5a31925013a1ba7c671e1128e31bb
|
F autosetup/system.tcl 3a39d6e0b3bfba526fd39afe07c1d0d325e5a31925013a1ba7c671e1128e31bb
|
||||||
F autosetup/tmake.auto eaebc74ad538dfdd3c817c27eefc31930c20510c4f3a3704071f6cb0629ed71f
|
F autosetup/tmake.auto eaebc74ad538dfdd3c817c27eefc31930c20510c4f3a3704071f6cb0629ed71f
|
||||||
F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d700c7a9
|
F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d700c7a9
|
||||||
@ -2216,8 +2216,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
|
|||||||
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
||||||
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
||||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||||
P f06122a543f7dac016c8da1cd92a629eb647142b95c85a131b9da8e0dc5516b0
|
P 45ec9415b2b76a757e8bd25eed520dcc012ba67cbb3530ee8dcc42ac6125464a
|
||||||
R 12ff824529fe88bfe6b4597dc4df53e3
|
R 958d2a4928946501ff168cf6ab041f76
|
||||||
U drh
|
U stephan
|
||||||
Z 126f0766a209d0ba5b53f17fec16055d
|
Z a0759550cfa13ca8b9d7c93a198730e1
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
@ -1 +1 @@
|
|||||||
45ec9415b2b76a757e8bd25eed520dcc012ba67cbb3530ee8dcc42ac6125464a
|
e20610f06bfc6f4ebc5806da05c307d91e1f0a8c7a7501a7953273dbf1816fee
|
||||||
|
Loading…
Reference in New Issue
Block a user