mirror of
https://github.com/sqlite/sqlite.git
synced 2024-11-21 19:29:09 +01:00
Get --enable-all flag essentially working.
FossilOrigin-Name: 0a49436c983848c3d88f3f5ec33fb9ac31cce62e94bf515ab1c357a10f5cd515
This commit is contained in:
parent
63c4d89ae1
commit
dd5b962a15
143
auto.def
143
auto.def
@ -14,35 +14,48 @@ set DUMP_DEFINES_FILE defines.list
|
||||
#
|
||||
# 3) If they default to true, the actual flag mapped to them is
|
||||
# --disable-FLAG.
|
||||
#
|
||||
# 4) For boolean options, configure will accept any of --flag, --enable-flag,
|
||||
# or --disable-flag. Unfortunately, it reserves --debug for its own use.
|
||||
#
|
||||
# 5) Mapping with their full name, e.g. enable-foo=1 or disable-bar=0,
|
||||
# will lead to breakage in calls to either [opt-bool foo] or
|
||||
# [opt-bool enable-foo].
|
||||
#
|
||||
# (2) and (3) mean that the help text for flag=1 should start with
|
||||
# "Disable" and flag=0 should start with "Enable".
|
||||
#
|
||||
# In trying to helpfully map between --foo/--enable-foo/--disable-foo,
|
||||
# it ends up creating some degree of confusion.
|
||||
options {
|
||||
with-tclsh:PATHNAME => {Full pathname of tclsh to use}
|
||||
with-tcl:DIR => {Directory containing tclConfig.sh}
|
||||
disable-tcl=0 => {building accessory programs that require TCL-dev}
|
||||
enable-test-status=0 => {status of tests}
|
||||
with-wasi-sdk:=/opt/wasi-sdk => {Path to the wasi-dsk}
|
||||
disable-threadsafe=0 => mutexing
|
||||
enable-releasemode=0 => {libtool link to release mode}
|
||||
enable-tempstore=0 => {an in-ram database for temporary tables never,no,yes,always}
|
||||
enable-editline=0 => {BSD editline support}
|
||||
disable-readline=0 => {readline support}
|
||||
tcl=1 => {Disable building accessory programs that require TCL-dev}
|
||||
test-status => {Enable status of tests}
|
||||
threadsafe=1 => {Disable mutexing}
|
||||
releasemode => {libtool link to release mode}
|
||||
tempstore=0 => {an in-ram database for temporary tables never,no,yes,always}
|
||||
editline=0 => {BSD editline support}
|
||||
readline=0 => {readline support}
|
||||
with-readline-lib => {readline library}
|
||||
with-readline-inc => {readline include paths}
|
||||
with-linenoise:DIR => {}
|
||||
disable-amalgamation=0 => {Disable the amalgamation and instead build all files separately}
|
||||
load-extension=1 => {loading of external extensions}
|
||||
math=1 => {math functions}
|
||||
json=1 => {JSON functions}
|
||||
all=0 => {Enable FTS4, FTS5, Geopoly, RTree, Sessions}
|
||||
enable-memsys5=0 => MEMSYS5
|
||||
enable-memsys3=0 => MEMSYS3
|
||||
enable-fts3=0 => {Enable the FTS3 extension}
|
||||
enable-fts4=0 => {Enable the FTS4 extension}
|
||||
enable-fts5=0 => {Enable the FTS5 extension}
|
||||
enable-update-limit=0 => {Enable the UPDATE/DELETE LIMIT clause}
|
||||
enable-geopoly=0 => {Enable the GEOPOLY extension}
|
||||
enable-rtree=0 => {Enable the RTREE extension}
|
||||
enable-session=0 => {Enable the SESSION extension}
|
||||
enable-gcov=0 => {Enable coverage testing using gcov}
|
||||
amalgamation=1 => {Disable the amalgamation and instead build all files separately}
|
||||
load-extension=1 => {Disable loading of external extensions}
|
||||
math=1 => {Disable math functions}
|
||||
json=1 => {Disable JSON functions}
|
||||
all => {Enable FTS4, FTS5, Geopoly, RTree, Sessions}
|
||||
memsys5 => {Enable MEMSYS5}
|
||||
memsys3 => {Enable MEMSYS3}
|
||||
fts3 => {Enable the FTS3 extension}
|
||||
fts4 => {Enable the FTS4 extension}
|
||||
fts5 => {Enable the FTS5 extension}
|
||||
update-limit => {Enable the UPDATE/DELETE LIMIT clause}
|
||||
geopoly => {Enable the GEOPOLY extension}
|
||||
rtree => {Enable the RTREE extension}
|
||||
session => {Enable the SESSION extension}
|
||||
gcov => {Enable coverage testing using gcov}
|
||||
with-wasi-sdk:=/opt/wasi-sdk => {Top-most dir of the wasi-sdk for a WASI build}
|
||||
dump-defines=1 => {Dump autosetup defines to $DUMP_DEFINES_FILE}
|
||||
}
|
||||
# debug=0 => {debugging & verbose explain}
|
||||
@ -124,6 +137,29 @@ proc add-feature-flag {flag} {
|
||||
}
|
||||
# add-feature-flag -DSQLITE_JUST_TESTING=3
|
||||
|
||||
########################################################################
|
||||
# Force-set autosetup option $flag to $val.
|
||||
proc opt-bool-set {flag {val 1}} {
|
||||
if {![dict exists ::autosetup(options) $flag]} {
|
||||
# We have to add this to autosetup(options) or else future calls
|
||||
# to [opt-bool $flag] will fail validation of $flag.
|
||||
dict set ::autosetup(options) $flag {}
|
||||
}
|
||||
dict set ::autosetup(optset) $flag $val
|
||||
}
|
||||
|
||||
########################################################################
|
||||
# If [opt-bool $boolFlag] is true, eval $then, else eval $else.
|
||||
proc if-enabled {boolFlag then {else {}}} {
|
||||
if {[opt-bool $boolFlag]} {eval $then} else {eval $else}
|
||||
}
|
||||
|
||||
########################################################################
|
||||
# If [opt-bool $boolFlag] is false, eval $then, else eval $else.
|
||||
proc if-disabled {boolFlag then {else {}}} {
|
||||
if {![opt-bool $boolFlag]} {eval $then} else {eval $else}
|
||||
}
|
||||
|
||||
#########
|
||||
# Programs needed
|
||||
if {1} {
|
||||
@ -158,7 +194,6 @@ if {1} {
|
||||
malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
|
||||
}
|
||||
|
||||
|
||||
##########
|
||||
# Handle --with-wasi-sdk=DIR
|
||||
#
|
||||
@ -362,6 +397,14 @@ if {0} {
|
||||
# XXX fi
|
||||
# XXX AC_SUBST BUILD_CC
|
||||
|
||||
if-enabled all {
|
||||
opt-bool-set fts4
|
||||
opt-bool-set fts5
|
||||
opt-bool-set geopoly
|
||||
opt-bool-set rtree
|
||||
opt-bool-set session
|
||||
}
|
||||
|
||||
##########
|
||||
# Do we want to support multithreaded use of sqlite
|
||||
#
|
||||
@ -387,9 +430,11 @@ if {0} {
|
||||
##########
|
||||
# Do we want to support release
|
||||
#
|
||||
if {[opt-bool enable-releasemode]} {
|
||||
if-enabled releasemode {
|
||||
msg-result "Release-mode build."
|
||||
set enable_releasemode 1
|
||||
} else {
|
||||
} {
|
||||
msg-result "Non-release-mode build."
|
||||
set enable_releasemode 0
|
||||
}
|
||||
|
||||
@ -658,22 +703,6 @@ if {0} {
|
||||
# XXX AC_SUBST HAVE_ZLIB
|
||||
}
|
||||
|
||||
proc if-disabled {boolFlag then {else {}}} {
|
||||
if {![opt-bool $boolFlag]} {
|
||||
eval $then
|
||||
} else {
|
||||
eval $else
|
||||
}
|
||||
}
|
||||
|
||||
proc if-enabled {boolFlag then {else {}}} {
|
||||
if {[opt-bool $boolFlag]} {
|
||||
eval $then
|
||||
} else {
|
||||
eval $else
|
||||
}
|
||||
}
|
||||
|
||||
if-enabled load-extension {
|
||||
if {[cc-check-function-in-lib dlopen dl]} {
|
||||
define LDFLAGS_DLOPEN [get-define lib_dlopen]
|
||||
@ -693,21 +722,17 @@ if-enabled math {
|
||||
define LDFLAGS_MATH [get-define lib_ceil]
|
||||
undefine lib_ceil
|
||||
add-feature-flag {-DSQLITE_ENABLE_MATH_FUNCTIONS}
|
||||
msg-result "Enabling math functions."
|
||||
msg-result "Enabling math SQL functions"
|
||||
} {
|
||||
define LDFLAGS_MATH ""
|
||||
msg-result "Disabling math functions."
|
||||
msg-result "Disabling math SQL functions"
|
||||
}
|
||||
|
||||
if-enabled json {
|
||||
msg-result "Enabling JSON SQL functions."
|
||||
msg-result "Enabling JSON SQL functions"
|
||||
} {
|
||||
add-feature-flag {-DSQLITE_OMIT_JSON}
|
||||
msg-result "Disabling JSON SQL functions."
|
||||
}
|
||||
|
||||
if-enabled all {
|
||||
msg-result "TODO: handle --enable-all"
|
||||
msg-result "Disabling JSON SQL functions"
|
||||
}
|
||||
|
||||
if {0} {
|
||||
@ -909,8 +934,18 @@ if {0} {
|
||||
# XXX AC_SUBST AMALGAMATION_LINE_MACROS
|
||||
}
|
||||
|
||||
#########
|
||||
# Output the config header
|
||||
foreach {boolFlag featureFlag} {
|
||||
fts4 -DSQLITE_ENABLE_FTS4
|
||||
fts5 -DSQLITE_ENABLE_FTS5
|
||||
geopoly -DSQLITE_ENABLE_GEOPOLY
|
||||
rtree -DSQLITE_ENABLE_GEOPOLY
|
||||
session -DSQLITE_ENABLE_GEOPOLY
|
||||
} {
|
||||
if {[opt-bool $boolFlag]} {
|
||||
add-feature-flag $featureFlag
|
||||
msg-result "Enabling $boolFlag"
|
||||
}
|
||||
}
|
||||
|
||||
if {0} {
|
||||
#########
|
||||
@ -922,6 +957,10 @@ if {0} {
|
||||
make-config-header sqlite_cfg.h
|
||||
}
|
||||
|
||||
if {"" ne [get-define OPT_FEATURE_FLAGS]} {
|
||||
msg-result "Final feature flags: [get-define OPT_FEATURE_FLAGS]"
|
||||
}
|
||||
|
||||
if {[opt-bool dump-defines]} {
|
||||
msg-result "--dump-defines is creating file: $DUMP_DEFINES_FILE"
|
||||
make-config-header $DUMP_DEFINES_FILE -bare OPT_FEATURE_FLAGS -auto {*}
|
||||
|
12
manifest
12
manifest
@ -1,5 +1,5 @@
|
||||
C Get\sseveral\sof\sthe\s--enable/--disable\sconfigure\sflags\sworking.
|
||||
D 2024-09-25T03:37:34.226
|
||||
C Get\s--enable-all\sflag\sessentially\sworking.
|
||||
D 2024-09-25T04:20:58.189
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||
@ -14,7 +14,7 @@ F art/icon-80x90.gif 65509ce3e5f86a9cd64fe7fca2d23954199f31fe44c1e09e208c80fb83d
|
||||
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
|
||||
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
|
||||
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
|
||||
F auto.def 1c121db3f48b25002887220168e1120b5f8865f2d0468d62dca4220192367bef
|
||||
F auto.def 0b1a9058f9082f5583b7335eed55bbbfe480b17a0f9f0bac00c7538a82a242c9
|
||||
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
|
||||
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
|
||||
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
|
||||
@ -2232,8 +2232,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080
|
||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||
P 4b104926bf0862a5088e51549c2d688c2af649d45bf0e396cc48e171bed06b0a
|
||||
R 5abab1c4da63e377666cdbb79ca9e337
|
||||
P fd16d53d3a95cd4f5f81f4b1b09955f04c89116586aa16fa01627ae4904d587b
|
||||
R f6136e043e4d9fa45a54af863cc98153
|
||||
U stephan
|
||||
Z 675f689497b17977048f4ba0ec321727
|
||||
Z 3a634646a8a85d4b2cf979a7d9e5b89f
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
@ -1 +1 @@
|
||||
fd16d53d3a95cd4f5f81f4b1b09955f04c89116586aa16fa01627ae4904d587b
|
||||
0a49436c983848c3d88f3f5ec33fb9ac31cce62e94bf515ab1c357a10f5cd515
|
||||
|
Loading…
Reference in New Issue
Block a user