mirror of
https://github.com/sqlite/sqlite.git
synced 2024-11-21 19:29:09 +01:00
Disable generation of config.defines.json until/unless it proves interesting. Honor the --disable-largefile flag. When installing libsqlite3.so and an older-style libtool installation is found, re-link the libtool-generated files to the newly-installed ones to retain their historical names.
FossilOrigin-Name: 0a50e33051fbdd5b7b7f0ab7eb2b2561d259098075fa8847868017041d789484
This commit is contained in:
parent
a2d88f6a03
commit
65d83fa221
69
auto.def
69
auto.def
@ -51,7 +51,11 @@ set DUMP_DEFINES_TXT ./config.defines.txt
|
||||
# least one high-profile client to extract build config info for use
|
||||
# in compiling a scripting-language binding, so its name should not be
|
||||
# arbitrarily changed.
|
||||
set DUMP_DEFINES_JSON ./config.defines.json
|
||||
#
|
||||
# 2024-10-26: generation of this file is disabled (via an empty file
|
||||
# name) until/unless someone voices a specific interest in it. The
|
||||
# original motivating use case is handled fine by sqlite_cfg.h.
|
||||
set DUMP_DEFINES_JSON ""; #./config.defines.json
|
||||
|
||||
########################################################################
|
||||
# Regarding flag compatibility with the historical autotool configure
|
||||
@ -149,7 +153,7 @@ set DUMP_DEFINES_JSON ./config.defines.json
|
||||
# - [opt-val FLAG]
|
||||
#
|
||||
########################################################################
|
||||
options [subst {
|
||||
set flags {
|
||||
with-debug:=1 => {Enable debug build flags}
|
||||
with-tclsh:PATH => {Full pathname of tclsh to use}
|
||||
with-tcl:DIR => {Directory containing tclConfig.sh}
|
||||
@ -182,10 +186,15 @@ options [subst {
|
||||
with-wasi-sdk:=/opt/wasi-sdk
|
||||
=> {Top-most dir of the wasi-sdk for a WASI build}
|
||||
with-emsdk:DIR => {Top-most dir of the Emscripten SDK installation}
|
||||
defines-json-include-lowercase=0
|
||||
=> {Include lower-case defines (primarily system paths) in $DUMP_DEFINES_JSON}
|
||||
dump-defines=0 => {Dump autosetup defines to $DUMP_DEFINES_TXT (for build debugging)}
|
||||
}]
|
||||
}
|
||||
if {"" ne $DUMP_DEFINES_JSON} {
|
||||
lappend flags \
|
||||
defines-json-include-lowercase=0 \
|
||||
=> {Include lower-case defines (primarily system paths) in $DUMP_DEFINES_JSON}
|
||||
}
|
||||
options [subst $flags]
|
||||
unset flags
|
||||
|
||||
########################################################################
|
||||
# Notes about certain historical flags:
|
||||
@ -385,7 +394,10 @@ hwaci-check-wasi-sdk
|
||||
|
||||
#
|
||||
# Enable large file support (if special flags are necessary)
|
||||
cc-check-lfs
|
||||
define HAVE_LFS 0
|
||||
if {[opt-bool largefile]} {
|
||||
cc-check-lfs
|
||||
}
|
||||
|
||||
#
|
||||
# Check for needed/wanted data types
|
||||
@ -741,6 +753,11 @@ if {1} {
|
||||
# Figure out what C libraries are required to compile programs
|
||||
# that use "readline()" library.
|
||||
add-shell-opt -DHAVE_READLINE=[hwaci-check-readline]
|
||||
# TODO: reimplement:
|
||||
# --enable-editline
|
||||
# --with-readline-lib specify readline library
|
||||
# --with-readline-inc specify readline include paths
|
||||
# --with-linenoise=DIR source directory for linenoise library
|
||||
} else {
|
||||
# Older impl solely for reference while porting...
|
||||
#
|
||||
@ -1024,26 +1041,28 @@ if {"" ne $oFF} {
|
||||
}
|
||||
unset oFF
|
||||
|
||||
########################################################################
|
||||
# Dump config-defines.json...
|
||||
# Demonstrate (mis?)handling of spaces in JSON-export array values:
|
||||
# define-append OPT_FOO.list {"-DFOO=bar baz" -DBAR="baz barre"}
|
||||
define OPT_FEATURE_FLAGS.list [get-define OPT_FEATURE_FLAGS]
|
||||
define OPT_SHELL.list [get-define OPT_SHELL]
|
||||
set dumpDefsOpt {
|
||||
-bare {SIZEOF_* HAVE_DECL_*}
|
||||
-none {HAVE_CFLAG_* LDFLAGS_* SH_* SQLITE_AUTOREMAKE TARGET_* USE_GCOV TCL_*}
|
||||
-array {*.list}
|
||||
-auto {OPT_* PACKAGE_* HAVE_*}
|
||||
if {"" ne $DUMP_DEFINES_JSON} {
|
||||
########################################################################
|
||||
# Dump config-defines.json...
|
||||
# Demonstrate (mis?)handling of spaces in JSON-export array values:
|
||||
# define-append OPT_FOO.list {"-DFOO=bar baz" -DBAR="baz barre"}
|
||||
define OPT_FEATURE_FLAGS.list [get-define OPT_FEATURE_FLAGS]
|
||||
define OPT_SHELL.list [get-define OPT_SHELL]
|
||||
set dumpDefsOpt {
|
||||
-bare {SIZEOF_* HAVE_DECL_*}
|
||||
-none {HAVE_CFLAG_* LDFLAGS_* SH_* SQLITE_AUTOREMAKE TARGET_* USE_GCOV TCL_*}
|
||||
-array {*.list}
|
||||
-auto {OPT_* PACKAGE_* HAVE_*}
|
||||
}
|
||||
if {[opt-bool defines-json-include-lowercase]} {
|
||||
lappend dumpDefsOpt -none {lib_*} ; # remnants from hwaci-check-function-in-lib and friends
|
||||
lappend dumpDefsOpt -auto {[a-z]*}
|
||||
}
|
||||
lappend dumpDefsOpt -none *
|
||||
hwaci-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt
|
||||
undefine OPT_FEATURE_FLAGS.list
|
||||
undefine OPT_SHELL.list
|
||||
}
|
||||
if {[opt-bool defines-json-include-lowercase]} {
|
||||
lappend dumpDefsOpt -none {lib_*} ; # remnants from hwaci-check-function-in-lib and friends
|
||||
lappend dumpDefsOpt -auto {[a-z]*}
|
||||
}
|
||||
lappend dumpDefsOpt -none *
|
||||
hwaci-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt
|
||||
undefine OPT_FEATURE_FLAGS.list
|
||||
undefine OPT_SHELL.list
|
||||
|
||||
########################################################################
|
||||
# Some build-dev/debug-only output
|
||||
|
25
main.mk
25
main.mk
@ -1297,7 +1297,19 @@ all: so
|
||||
#
|
||||
# The historical SQLite build always used a version number of 0.8.6
|
||||
# for reasons lost to history but having something to do with libtool
|
||||
# (which is not longer used in this tree).
|
||||
# (which is not longer used in this tree). In order to retain filename
|
||||
# compatibility for systems which have libraries installed using those
|
||||
# conventions, if libsqlite3.so.0.8.6 is found on then it is re-linked
|
||||
# to point to the new names. libsqlite3.so.0 historically symlinks to
|
||||
# libsqlite3.so.0.8.6, and that link is left in place. We cannot
|
||||
# retain both the old and new installation because they both share the
|
||||
# high-level name $(libsqlite3.SO). The down-side of this is that it
|
||||
# may well upset packaging tools when we replace libsqlite3.so (from a
|
||||
# legacy package) with a new symlink. In this case we also delete
|
||||
# libsqlite3.la because it cannot work with the non-libtool library
|
||||
# this installation replaces. Since two versions of such a package
|
||||
# cannot coexist anyway (they share identical file names), that
|
||||
# conflict is believed to be an imaginary problem.
|
||||
#
|
||||
install-so-1: $(install-dir.lib) $(libsqlite3.SO)
|
||||
$(INSTALL) $(libsqlite3.SO) $(install-dir.lib)
|
||||
@ -1307,9 +1319,16 @@ install-so-1: $(install-dir.lib) $(libsqlite3.SO)
|
||||
mv $(libsqlite3.SO) $(libsqlite3.SO).$(PACKAGE_VERSION) || exit $$?; \
|
||||
ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO).3 || exit $$?; \
|
||||
ln -s $(libsqlite3.SO).3 $(libsqlite3.SO) || exit $$?; \
|
||||
ls -la $(libsqlite3.SO) $(libsqlite3.SO).3 $(libsqlite3.SO).$(PACKAGE_VERSION)
|
||||
ls -la $(libsqlite3.SO) $(libsqlite3.SO).3*; \
|
||||
if [ -e $(libsqlite3.SO).0.8.6 ]; then \
|
||||
echo "ACHTUNG: older libtool-compatible install found. Re-linking it..."; \
|
||||
rm -f $(libsqlite3.SO).0.8.6 libsqlite3.la; \
|
||||
ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO).0.8.6 || exit $$?; \
|
||||
ls -la $(libsqlite3.SO).0*; \
|
||||
fi
|
||||
install-so-0 install-so-:
|
||||
install: install-so-$(ENABLE_SHARED)
|
||||
install-so: install-so-$(ENABLE_SHARED)
|
||||
install: install-so
|
||||
|
||||
#
|
||||
# Install $(libsqlite3.LIB)
|
||||
|
14
manifest
14
manifest
@ -1,5 +1,5 @@
|
||||
C Correct\sunresolved\s@LIBS@\splaceholder\sin\ssqlite3.pc.in.
|
||||
D 2024-10-25T23:45:05.569
|
||||
C Disable\sgeneration\sof\sconfig.defines.json\suntil/unless\sit\sproves\sinteresting.\sHonor\sthe\s--disable-largefile\sflag.\sWhen\sinstalling\slibsqlite3.so\sand\san\solder-style\slibtool\sinstallation\sis\sfound,\sre-link\sthe\slibtool-generated\sfiles\sto\sthe\snewly-installed\sones\sto\sretain\stheir\shistorical\snames.
|
||||
D 2024-10-26T03:05:20.205
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
F LICENSE.md b6e6c1baf38e4339bd3f1e0e5e5bfd0a9a93d133360691b2785c2d4b2f2dcec2
|
||||
@ -13,7 +13,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 d7401a7cec04aa6a71c3a7c1faa89494f091917307a4b1b7a6d423e81a348010
|
||||
F auto.def f3c94971e3559636a89276adaa9cfe949b1d83f72c300a21226f28377c56ec74
|
||||
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
|
||||
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
|
||||
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
|
||||
@ -707,7 +707,7 @@ F ext/wasm/wasmfs.make bc8bb227f35d5bd3863a7bd2233437c37472a0d81585979f058f9b9b5
|
||||
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
|
||||
F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
|
||||
F magic.txt 5ade0bc977aa135e79e3faaea894d5671b26107cc91e70783aa7dc83f22f3ba0
|
||||
F main.mk ad39030eeac4f0b775ed458c484211c7519ddbe29375a88eea88c0c719af3bf5
|
||||
F main.mk 2a1e41234197e59df10160408ca221815f6fecb7de6ad60231b03944c5cd8a8f
|
||||
F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
|
||||
F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
|
||||
F mptest/crash01.test 61e61469e257df0850df4293d7d4d6c2af301421
|
||||
@ -2237,8 +2237,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 51a9278134b5b9093c92c7036cc91b823f30dd36f677f2335927854744225024
|
||||
R a314c5e68fb037432cac9fe3ae63e4a5
|
||||
P 63218898ed0a6d466a282f10819d51a7f480d8f12316b74ee8a3f402fcc4e927
|
||||
R 7933f107530fbfe42f5cc26d7f7899b9
|
||||
U stephan
|
||||
Z 16d047a5bb3a50c8e6fef3840bc7d061
|
||||
Z fb78edb2f2fc1c6af37f2783aae577ac
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
@ -1 +1 @@
|
||||
63218898ed0a6d466a282f10819d51a7f480d8f12316b74ee8a3f402fcc4e927
|
||||
0a50e33051fbdd5b7b7f0ab7eb2b2561d259098075fa8847868017041d789484
|
||||
|
Loading…
Reference in New Issue
Block a user