Commit Graph

777 Commits

Author SHA1 Message Date
dan d42855e404 Fix an OOB write that could occur in fts3 when dealing with corrupt database records.
FossilOrigin-Name: 108863ec7998e0a35569e3c6534b538f00d4ef87fdb316bd6a4a9a7a272bba47
2024-11-07 17:34:53 +00:00
stephan c7882b975e tcl configuration: --with-tcl=prefix is equivalent to passing the --prefix dir to it. If --with-tcl or --enable-tcl are explicitly passed in and tclConfig.sh is not found, fail fatally. When TCL is either explicitly disabled or default search for it fails non-fatally, be more explicit about which components are not available.
FossilOrigin-Name: c5389d39a90047683e80ae9081d5d10aaa95da00dfc8a133b4a1a6949a11620d
2024-11-07 15:04:15 +00:00
stephan 199925a352 Add a section to autosetup/README.md describing the motivations for the more glaring design decisions.
FossilOrigin-Name: c0940a822a63bff74585bd37401eca92f74ddf9fe95748d2474039ee9b2bd9b6
2024-11-06 05:54:27 +00:00
stephan d2ac1c5b7c Remove the --enable-rbu flag from the configure script, per /chat discussion, because it's a highly niche feature not in active use.
FossilOrigin-Name: 77db0cd736746873d4ed3dbf0e9a43a3e15ab49961fccee20417e01f88de8664
2024-11-05 13:03:58 +00:00
stephan 63346a4bca Add the --enable-rbu configure flag and building of the commented-out rbu binary.
FossilOrigin-Name: 6c6fa3adfee6ec2c57dc76461e7c97416b4fad45772ce367d223cc67e66049f6
2024-11-05 07:55:33 +00:00
stephan 2fd38836dc Fix typo of --libexec ==> --libexecdir, discovered via audit of a downstream build script. Unrelated doc touchups.
FossilOrigin-Name: a60e5d76d06ae0568fbc6e068a7012c77778607cd60da92a1b84ff8f33049a93
2024-11-04 12:11:20 +00:00
stephan f3d279595e When installing the shared lib, re-activate the accommodation of legacy-style .so links (removed in [80584e165e4]) based on two reports that not having those will cause all clients linked against the legacy naming convention to fail to dynamically link (which would preclude an update of a system-level libsqlite3 package). Set up the infrastructure needed for adding an SONAME to the library but do not yet activate it. See discussion in/around [forum:046133a7da|forum post 046133a7da].
FossilOrigin-Name: 1586eaceb1716fbeafc4af691d0f80206cd5390388b099d4939e6be5d3eb975b
2024-11-04 08:29:02 +00:00
stephan e595a83856 Fix another T.exe typo and remove an outdated TODO.
FossilOrigin-Name: 02208e6bfa7b791b958d45ad25eaac3a16d3e9f6ab203b9fc760c67785525395
2024-11-03 05:33:45 +00:00
stephan 13f03afd17 Fix T.exe typos in main.mk which break installation on platforms where that value is not empty. Also some unrelated doc tweaks.
FossilOrigin-Name: ab97ff44e66fd3639adbae4e0cc387fbcd09fbd5cd90ec3df7294c3e7b3a446e
2024-11-03 01:31:34 +00:00
stephan dea749acc3 Add autotools-compatible overridable dir name vars for the various installation targets, calculated at make-time instead of exported at configure-time for reasons explained at length in the accompanying comments.
FossilOrigin-Name: 24aba7ee58f3048d70ff0c2b2cda26bc04bfb46b3055d25d62ab5ff97b106be2
2024-11-02 03:34:04 +00:00
drh f5187de2fb When building a shared library on Mac, one must specify the original *.o
files that go into that library.  It does not work to specify a prior shared
library containing a subset of the files to be included.

FossilOrigin-Name: 5adc7d5dabbd9e2b18b3e13ab4e6463bfa8b5c1d604c94c8e67e6b812873ed30
2024-10-31 11:53:18 +00:00
stephan 07cdceed8e Add the .POSIX special target to the main makefiles to hint to the make impl that it should behave POSIXly-correct. Fix the default file extension for static libs in main.mk.
FossilOrigin-Name: 2c615d3a3206536f12c0723b8997bda9ab61f95a468f77697856213b46c0135e
2024-10-31 07:20:22 +00:00
stephan cf758d23cd Add more deps to T.tcl.env.sh so that it gets rebuilt if configure is run with a different --with-tcl value. Remove all references to the superfluous XYZdir makefile vars conventionally set by the autotools (they're just noise in this build).
FossilOrigin-Name: 831665101e9c62cf49c173cb11705033eb9135a6a6965718285d81113ee5ba4c
2024-10-31 07:01:31 +00:00
stephan fe9baec645 Fix a corner case in automatic TCLLIBDIR detection: if the $auto_path list is not empty but none of them refer to an existing dir, the last dir in that list would have been accepted as the TCLLIBDIR. It will now error out instead.
FossilOrigin-Name: 1d2ecae1304d9f677bd50eaae6bd9cb25cb75c611d88a30839f5287a7a97d7d5
2024-10-31 01:51:00 +00:00
stephan 7a55fe3a95 Reimplement how the TCL-related environment vars are made available to make recipes which need them, reducing the console noise and consolidating it with the has_tclconfig flag file. It now uses a generated shell snippet which it sources, rather than inlining all of that shell code.
FossilOrigin-Name: 0cdfd142e11824d41ebb6c6e508933e04ac6f6dc0dc375cc5b0032f56eb7f423
2024-10-31 00:56:05 +00:00
stephan 26eccee741 proj.tcl/main.mk doc updates. No functional changes.
FossilOrigin-Name: e06574c6b4b666ef26f0fa06e6d60e5d896caaf1b1ca27f5369f5b7650d12b9b
2024-10-30 22:09:49 +00:00
drh 4f0529e33e Adjust Makefile.in to honor the CC environment variable. Add the
"show-variables" target to main.mk, for debugging.

FossilOrigin-Name: e5f1a01f9f574a64e464c66c1b88f76aeea83f0bbe697c53bb63d3592d93e55e
2024-10-30 19:13:07 +00:00
stephan 55865c47a7 Remove accommodation of the legacy-named shared libraries from the installation rules, per discussion. Rename install-includes to install-headers. Quote installation target dir names "just in case".
FossilOrigin-Name: 80584e165e4652e76cc3188befcee814f168298486743940bcf46696043686a0
2024-10-30 04:07:16 +00:00
stephan fe5f721de6 Generic makefile cleanups.
FossilOrigin-Name: 6f86ff2e8c190e83c15dab532660a2a0c359621d1fcce4e6852e56ac6b7f71e3
2024-10-30 03:51:21 +00:00
stephan 067f809402 Re-enable exporting of TCLLIBDIR at configure-time so that clients can override it once there rather than having to override it on an arbitrary number of make invocations (which they can still do, but now need not). Based on feedback in [forum:38f6988e57b738e5|forum post 38f6988e57b].
FossilOrigin-Name: ee6e15f12ee55fd13cf31317d876e6ba03a7ae1fb9056f0013106948d81b31d9
2024-10-30 02:06:41 +00:00
stephan 49e7cfc9a3 When calculating the TCLLIBDIR in main.mk, allow the user to override it using an environment var or make var assignment, per feedback in [forum:38f6988e57b738e5|forum post 38f6988e57b].
FossilOrigin-Name: 838633182c3f9f9c4c1a23384ed025777c25427d9c4c1f1a47f1630cf4038ca5
2024-10-30 01:47:48 +00:00
stephan 5be33f7b3f Split the core-most CFLAGS, which should not be overridable (like -fPIC), into CFLAGS.core, so that went CFLAGS=... is passed on in a make invocation the -fPIC flag is not lost (as reported in [forum:39f8c54391d38c72 | forum post 39f8c543]).
FossilOrigin-Name: f5899d22c6c2e65383d7e1ca43da740d3a56fb87daa204a642ce1dc963a98de2
2024-10-29 23:42:24 +00:00
stephan e32a50a025 Teach configure --editline to report itself to shell.c as either HAVE_EDITLINE or HAVE_READLINE, depending on which headers are available (editline/readline.h or readline/readline.h, both of which work and some systems only have the latter), but then link against libedit regardless of which one shell.c thinks it is using.
FossilOrigin-Name: 85077b20e69ed269f8840bb900e823981bebd82063853fbf178b1af44a6951ba
2024-10-29 08:01:56 +00:00
stephan 7097105bea Remove LDFLAGS_LIBZ from sqlite3.pc.in (pkg-config) because it's not needed by the library, only the shell. Re-enable the notice about --disable-static only being partially true.
FossilOrigin-Name: e03c564aff6e3ac558f17670bfdd5fc129a8d33ec50975af843973152483e3fa
2024-10-29 04:21:11 +00:00
stephan a94ca1d37c Remove some dead auto.def code. Link tclsqlite3 shell against the .so instead of .a, analog to [45315f8f275d]. Move some header file tests which are only needed for jimsh into the jimsh compilability check block.
FossilOrigin-Name: 9a259026ae2dce5d60b80bd7d662a6e73734e51056f4a4226c3fa5ac636b5e3a
2024-10-29 03:29:45 +00:00
stephan 4824b9c664 Minor makefile formatting cleanups. No functional changes.
FossilOrigin-Name: 10b2cfdccd06553752baf684ccd7f4f85a697e3f0f6dfc5e5dda6b231fa4352d
2024-10-28 18:41:42 +00:00
stephan 51d5aa0915 Calculate TCLLIBDIR in the makefile targets which use it, rather than via the configure script. This enables its use in static makefiles.
FossilOrigin-Name: 6b1494cecb48535b909f8a48ccb56e147221601380a1457ff85ab861fa576ea1
2024-10-28 18:30:46 +00:00
drh bc4df6079c Remove the never-used and never-documented and long-ago deprecated
user-authentication feature option.

FossilOrigin-Name: 3a3f7bf4307c27e56546e51da06ecc9a262cdf155fda2dd359aa2326d207a147
2024-10-28 17:27:15 +00:00
stephan fe5602ffd9 Perform some makefile acrobatics to get the tclConfig.sh state applied for static makefiles.
FossilOrigin-Name: 9b141d108b64c8f4e1103de6f142d972b5151eed0f07988fea308fc71cec45b8
2024-10-28 17:20:18 +00:00
drh 42516b2ef9 Omit the antiquated and long-unsupport async extension since it has been
superseded by WAL mode for over a decade.

FossilOrigin-Name: 10b1b86821bfc21377e7ccceb31146ab01aa6eaf418b85a204abcab5b793958e
2024-10-28 15:38:53 +00:00
drh 8625bd64c2 Omit ext/consio from the tree. No longer needed or supported.
FossilOrigin-Name: 1ce8507f732a26508a9b336cb27756a0a8638e14395efdd59b5faef40526ede5
2024-10-28 14:53:45 +00:00
stephan 1a466a386e Link libtclsqlite3.so to libsqlite3.so, not libsqlite3.a.
FossilOrigin-Name: 45315f8f275db6059bdff7a8269014f06a793debd90675ac877f3a6f5c6ba4a4
2024-10-28 14:24:36 +00:00
stephan e550d98bbf Expand the 'make help' target and clean up some overly-noisy configure output.
FossilOrigin-Name: c895766ed31f55c02f05d357333e9cf45e82ec5af4d8b0491270e4fda7a57d42
2024-10-27 22:34:07 +00:00
stephan 3a92a5c4b3 Re-order the auto.def flags logical groups. Add some discrete bold formatting to select configure output. Remove some dead code. Account for behavior misunderstanding of user-notice. Add the start of a 'make help' target. General cosmetic cleanups.
FossilOrigin-Name: ab95ee33dfe56bd3b223f978626e6014414881c30443a2b88c782de724c39ae1
2024-10-27 22:18:33 +00:00
stephan 6c45a5d60e Re-add the --disable-static flag to (mostly) disable static lib build. Some components require the static lib and will trump this preference if they are activated.
FossilOrigin-Name: e296cd11a2bd87bffc9c661baea6539c0258b5e9cf3e9bc516f07c758b3e5939
2024-10-27 08:52:20 +00:00
stephan e2a4ec3921 Ensure that --disable-tcl is honored. Move LDFLAGS.icu from the CLI shell target to LDFLAGS.libsqlite3.
FossilOrigin-Name: 39ce3f6350d811f27e5104e3dd01de2b04ce2a36edcbefd08596b8ca6c6226ff
2024-10-27 08:10:56 +00:00
stephan 1fa0ef3ae8 Get --with-linenoise=DIR configure flag working.
FossilOrigin-Name: 66ce47e5de21c607d2ef1f1e6e639f3c6da132ff3db582e12bd174f7d89d8150
2024-10-26 21:51:04 +00:00
stephan 26068b7901 Remove the install-lib makefile dep from install-tcl, as it breaks non-root-user invocations of 'make install-tcl' when the --prefix is left at its default and --with-tcl is explicitly provided.
FossilOrigin-Name: e7eabfb61f72dc396fab9d0671642f8150cde23aea965c5e77ac3d9ad11c749f
2024-10-26 19:16:18 +00:00
stephan ccb1211b54 Patch bundle accumulated via /chat: add missing --enable/disable-shared flag to configure script and update testrunner.tcl for other configure script flag changes.
FossilOrigin-Name: 32fc9c3f62601684b4ded783a79ebf817d093588c87ece02b449c3542881b65a
2024-10-26 16:03:04 +00:00
drh 26d5652b56 Fix a bug in the computation of LDFLAGS.libsqlite3 introduced by [63218898ed0a6d46].
FossilOrigin-Name: 58373d523cece0b39a29edcccecf93cfdc7ac68f9f12130ee8e487675d3f6a4d
2024-10-26 11:18:29 +00:00
stephan 8ee82c6202 Add missing B.exe extension to src-verify, as reported in the forum.
FossilOrigin-Name: 2801fb6507fc98730449168f3cf49495690e634c004c7074b4d45a0bd7513d41
2024-10-26 04:31:04 +00:00
stephan dac467890e Doc typo fix.
FossilOrigin-Name: da50e85d9a2020f4c59a72d6ae775fa32c275f0d5086c3caf9b13ab0a937fe1f
2024-10-26 03:30:18 +00:00
stephan bf441f7575 Rephrase 'older' as 'legacy' in the docs from [0a50e33051] and [2b2ca7dec18d].
FossilOrigin-Name: d212cc36824acd490a0afd8bc393159612075438b9f3fab992deec9d78d8a366
2024-10-26 03:22:44 +00:00
stephan 56d46d9d38 Expand the libtool-style link support from [0a50e33051] such that if INSTALL_SO_086_LINKS=1 is passed to 'make install' then the libtool-style names are always linked in, regardless of whether they already existed or not. In either case, we unconditionally remove libsqlite3.la because it cannot work with the newly-installed non-libtool .so file.
FossilOrigin-Name: 2b2ca7dec18d6b53ba7810a2ecf3937d98b5b08232d4f82d16fa2ad5f9fd83b2
2024-10-26 03:19:29 +00:00
stephan 65d83fa221 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
2024-10-26 03:05:20 +00:00
stephan a2d88f6a03 Correct unresolved @LIBS@ placeholder in sqlite3.pc.in.
FossilOrigin-Name: 63218898ed0a6d466a282f10819d51a7f480d8f12316b74ee8a3f402fcc4e927
2024-10-25 23:45:05 +00:00
stephan 895ad5f4af Rename VERSION_XYZ to the more conventional PACKAGE_VERSION and remove the unused VERSION_XY.
FossilOrigin-Name: 2d2f6dfdebbaba181d0ac16b5b0fa63490fb4c4bdb5ee2e8bf70f06ec862a77f
2024-10-25 22:44:58 +00:00
drh 35660cb5a6 Restore the amalgamation-tarball and snapshot-tarball targets, at least for
now.

FossilOrigin-Name: 1baf4b948854cb4f7c509395df4520a04c16c10cf9e4b67e73e26118636b3204
2024-10-25 14:36:23 +00:00
stephan 72ef506925 Back out [bd66222721] because it causes conflicts with test runs, apparently due to .o files being built with different flags. This means that the CLI shell currently does not honor --disable-amalgamation.
FossilOrigin-Name: b063317352e1360293787909cafe46dbfda68a75a89c6559bac69ad160d5ec43
2024-10-24 14:33:11 +00:00
stephan e3565d9424 Minor makefile tweaks to account for customizations via a custom hand-built makefile.
FossilOrigin-Name: 7f92e820e675ea5d54284c534d44ec4f7f242b30920a5f84c020b93f2e7e969d
2024-10-24 12:57:45 +00:00