fbbe262820
Enhance the makefile to make it easier to build from a read-only source tree.
...
FossilOrigin-Name: f99a70eca2fd8a54be3a6629dabd62efc623488706eed5e5a1bd0be577ac1acb
2025-01-06 23:33:45 +00:00
8b53358f8f
Improvements to TCL extension test procedure description. Improvements to
...
the tclextension-list and tclextension-verify makefile targets to suppress
unnecessary output.
FossilOrigin-Name: 3e92fea09af13259d61afd2953fe5f3fc16e3cedfef09e350903aa5299b8e469
2025-01-05 11:19:32 +00:00
1e03bd8a89
Improvements to testing and validation of the SQLite TCL extension.
...
FossilOrigin-Name: 9d7597cad4a167aef7688e85513d8695e8d919e41f5cd44909aefee5ddf13345
2025-01-04 20:50:21 +00:00
95f6df5b8d
Add the convenience makefile target (unix-only) "src-archives" that builds
...
the various tarballs and ZIP archives that go on the download page. This is
intended to make it easier and less error prone to put up new "draft" download
pages for testing.
FossilOrigin-Name: 2b17bc49655c577029919c2d409de994b0d252f8efb5da1ba0913f2c96bee552
2024-12-30 21:23:53 +00:00
b56f179e45
Correct duplicated soname linker flags, one of them mis-named.
...
FossilOrigin-Name: 87dfd92d3a5a6a09c32c70e724a3f341bc63b9c6dfa0aa94fbbbdd45cc9c29f3
2024-11-25 17:07:58 +00:00
5c945264b0
Move handling of the tempstore feature flag into the OPT_FEATURE_FLAGS list and remove the CFLAGS.libsqlite3 makefile var which exists solely to account for the tempstore being tracked separately from the other feature flags.
...
FossilOrigin-Name: 2df5065d118ca4abcb4f285d07819e73c5e32f7e470d30eabc7e3d999ec8d0f2
2024-11-22 14:18:23 +00:00
dcaf03fccf
Makefile doc cleanups. No functional changes.
...
FossilOrigin-Name: 64add0ac706101c53e2d2877fdc0d1ccd071814cae969768d2741cee05f23c01
2024-11-22 14:12:18 +00:00
7a13effa20
Remove the libsqlite3.so.3 link from the installation process, as it now serves no functional purpose. We retain libsqlite3.so.0 (A) for compatibility with clients linked against legacy builds and (B) 0 is still valid as the library's ABI version.
...
FossilOrigin-Name: 91bd9813e04e34e088d5e73bfe2a4f338513363d9a99095a232b811c6b616354
2024-11-22 13:47:12 +00:00
0cf7131555
Add links to [/forumpost/5a3b44f510df8ded|the SONAME discussion] at relevant places in auto.def and the makefiles. No functional changes.
...
FossilOrigin-Name: c78dcc318a36af123676e54d85fc7f980c21b0ea366d164a96e2d998286d3813
2024-11-22 13:22:25 +00:00
914e32f24a
Use shared-library flags, not shared-object flags, to create shared libraries.
...
This makes no difference on Linux, but is required for Mac.
FossilOrigin-Name: bfaa3ee7588b6f6be9799882c6ed6472357d988fac31512d5e92fe28f57029c6
2024-11-20 16:17:01 +00:00
a34fbd1b9b
Add fix from [bfab759611b0] to sqltclsh. Remove some now-unneeded has_tclsh84/5 checks in cases where jimsh can be used.
...
FossilOrigin-Name: 9d389b998317c5006876f2f40d56cd763d1555bbeaf48b2bca9bd46dcd02b80e
2024-11-19 21:19:12 +00:00
18c9e2638e
Add missing $TCL_LIBS to the link for sqlite3_analyzer.
...
FossilOrigin-Name: bfab759611b0562837d8733ce56591854db08c122956524799dc1d5b3e2d0279
2024-11-19 21:14:48 +00:00
457d9384a2
Rename --link-tools-dynamically to --dynlink-tools, per discussion.
...
FossilOrigin-Name: 50b9f6fde44f9afda27e47badde6115ab6d9ccd5e22b446a8d8127499848815f
2024-11-19 20:21:40 +00:00
c73b85c156
Get sqlite3_analyzer optionally linking against libsqlite3.so instead of embedding sqlite3.c. Patch mkccode.tcl to accept digits in its IFDEF/IFNDEF checks and sqlite3_analyzer.c.in to only include sqlite3.c if -DINCLUDE_SQLITE3_C is passed to mkccode.tcl.
...
FossilOrigin-Name: 80f3bf8c2ee31ba1ab9187d64d5dcbbf97a61845a21b036f89ea9133153575c0
2024-11-19 19:47:51 +00:00
3cd93a0b67
Revert linking the shell to the dll for reasons explained in new makefile comments. Move the --with-debug configure flag into the developer options set and add commentary about why it should never be used for production builds.
...
FossilOrigin-Name: 7b14309be42be4204c4d30e9741d56d75ab8ec34686791d032612337fe1c4dcf
2024-11-19 17:41:13 +00:00
5ef61df185
Reformulate sqldiff deps and rules so that the target matches the resulting file name, to avoid rebuilding it on every make invocation. Apply the same treatment to the sqlite3 CLI shell.
...
FossilOrigin-Name: 9a17b83f859ef14629cb78d8c9af1b3f2493b0c8756bc2ebcf92f0872fb507c3
2024-11-19 16:40:49 +00:00
fbd9de1830
Initial configure support for linking certain binaries to libsqlite3.so instead of embedding it dynamically (which they typically do). This currently applies only to sqldiff, but support for adding the same for other tools is planned. This requires disabling the soname because setting it causes the build to link to whatever libsqlite3.so.0 is installed system-wide, so the soname now defaults to off.
...
FossilOrigin-Name: 9192c146e2898456a6b8ea43a6f02c0227ddce5b584374fbeb2d63bd2ecd5d8c
2024-11-19 15:20:47 +00:00
0df847cc77
Remove the .POSIX entries from the makefiles because they cause portability problems rather than solve them.
...
FossilOrigin-Name: e1330ecf170436678c5c235557fb95b8acbf4fad62583edba4af03aff49afbc5
2024-11-18 14:15:08 +00:00
f6c7cc606e
Add the --destdir flag to the tclextension-install makefile target.
...
FossilOrigin-Name: d1663cf05f7dcaafd479bacf083b6b774f34fd3db89012b49599d30817eb174f
2024-11-16 14:30:43 +00:00
1adf87592f
In the interest of minimizing downstream disruption, set the soname of libsqlite3.so to (by default) its legacy value of libsqlite3.so.0 and unconditionally create (or replace) a symlink with that name at install-time, in addition to the newer-named symlinks.
...
FossilOrigin-Name: 0773677b553e032e992266c6c75e10565729238df3ef52b56602a92cf651bea7
2024-11-15 19:42:49 +00:00
009601d534
Remove $prefix/include from the default -I path because it can cause the build to pick up an unintended copy of sqlite3.h. Extend the ICU configure support (the origin of -I$prefix/include) to enable fetching the -I path from icu-config and apply it only to those objects which need it.
...
FossilOrigin-Name: f778dfdd6d6a4975c903d8ca0ebfb4fa917d543289136ea0ab740cb47d2510c1
2024-11-14 19:25:23 +00:00
59c80e0533
Add new makefile target "sqlite3d" (where the "d" means either "development" or
...
"debug") that always uses separate source files, regardless of the
--disable-amalgmation setting.
FossilOrigin-Name: 91da205beb7e5cab7a76be98e4cfddc4fb4c07022825ea645bc97f331c6bcdaa
2024-11-14 19:06:00 +00:00
074cad3026
Wrap some exceptionally long lines in main.mk. Add option to override LDFLAGS on the sqlite3.dll target. Audit: all targets for which it is hypothetically relevant can now inherit user-supplied LDFLAGS, but only those provided to the configure script, not at make-time, in order to mimic the historical build's restriction in that regard.
...
FossilOrigin-Name: 073080cae3ea0d12b133d9c9ae98413bb32870a9738c98b89bc345181be81f23
2024-11-11 18:15:50 +00:00
f1b88ec953
Fix a deps problem, introduced in [1bd9de719], which breaks the build on systems where HAVE_TCL=0.
...
FossilOrigin-Name: 7953a8bdcba7242c98f786283270d7b3f8830058a29f2d810457eef697855325
2024-11-09 14:34:20 +00:00
4441897daa
Remove one dep from .tclenv.sh which is only valid for configure-driven builds, not static makefiles.
...
FossilOrigin-Name: 22986767da8f086daaa6dc760c15e6aedcc5d2d6033937ac2f112ee5750d7fdb
2024-11-08 14:34:33 +00:00
a700db9387
Add 'tcl' makefile target which builds all but tclextension (which does not have a well-defined name and dependencies). Improve the deps for .tclenv.sh to avoid getting a stale tclsh when re-configuring with a different --with-tcl(sh).
...
FossilOrigin-Name: 1bd9de719b0944fdceec32103da3131a7d387820850ab03f652f813d840355b8
2024-11-08 13:37:00 +00:00
a4093dcc06
Add missing CFLAGS.intree_includes to T.compile.tcl to fix build of tclsqlite3.
...
FossilOrigin-Name: bb3c6dc126896528328bb9f51a28a1d46d4549e687c93c16f2d164230c6b1684
2024-11-08 08:01:56 +00:00
62801081f3
More closely emulate the legacy build's handling of LDFLAGS, permitting them to be passed to configure but not to make. We cannot 100% enforce that because main.mk is not filtered by the configure script, so we instead add a level of indirection to make passing of LDFLAGS=... to make a no-op.
...
FossilOrigin-Name: d1af9f31831dc99a808b916df4d414943f5d56796c8342411ee4a57abfde85e2
2024-11-08 07:37:12 +00:00
3b306aac6e
Support clients passing in LDFLAGS to configure/make, but in a more limited form than the legacy build it (i.e. only to select targets rather than all targets). Rename make-side internal uses of CFLAGS to CFLAGS.env for consistency with the new LDFLAGS.env. See discussion in [forum:5fcbea40f3|forum thread 5fcbea40f3].
...
FossilOrigin-Name: a5e07e8063ad50f2cf46b6be568717adc9604bd6dbf926a526de43bda2996ad0
2024-11-08 06:22:15 +00:00
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
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
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
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
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
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
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
e595a83856
Fix another T.exe typo and remove an outdated TODO.
...
FossilOrigin-Name: 02208e6bfa7b791b958d45ad25eaac3a16d3e9f6ab203b9fc760c67785525395
2024-11-03 05:33:45 +00:00
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
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
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
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
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
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
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
26eccee741
proj.tcl/main.mk doc updates. No functional changes.
...
FossilOrigin-Name: e06574c6b4b666ef26f0fa06e6d60e5d896caaf1b1ca27f5369f5b7650d12b9b
2024-10-30 22:09:49 +00:00
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
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
fe5f721de6
Generic makefile cleanups.
...
FossilOrigin-Name: 6f86ff2e8c190e83c15dab532660a2a0c359621d1fcce4e6852e56ac6b7f71e3
2024-10-30 03:51:21 +00:00
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
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