Commit Graph

855 Commits

Author SHA1 Message Date
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
a9b00b0fb7 Fix a CFLAGS.jimsh typo in Makefile.in. Change default jimsh flags to include -O1, which slows down its build but speeds up its runtime considerably.
FossilOrigin-Name: a912c169152623f261fb5469a49f00aca1d8a273d8f7187744de12a26aede7cf
2024-11-03 20:15:38 +00:00
stephan
f0e7f4c1f2 An experiment in hybridizing overriding of autotools-conventional XYZdir vars, the goal being to be able to provide both overrriding of them at configure-time and make-time with sensible semantics. Based on notes from [forum:00d12a41f7|forum post 00d12a41f7].
FossilOrigin-Name: cc259bf5f176bf89b6effedfc716d19d2437fc761c20870d1c69205d4bcee12b
2024-11-02 05:50:22 +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
03cfce20c9 Fix the clean-autosetup target in Makefile.in so that it does not fail even
in cases where gmake is unavailable.

FossilOrigin-Name: 207ca21bd7060a163da60b432f61ffaad8bedb6c0d59f090f9c5addb5b56d82d
2024-10-31 17:38:30 +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
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
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
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
e034c18591 General auto.def cleanups and docs.
FossilOrigin-Name: e2f41c2540d8ff7686bfe22336598896de9083d139fc5a291c0f19896b9c1d20
2024-10-29 20:27:36 +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
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
stephan
ee0b5e9bed Document why -IPREFIX/include is now part of T.cc.sqlite.
FossilOrigin-Name: d64dcb1a897f6cc690c680cdaf85272e2dd249f36798219834116b1375f74d34
2024-10-28 02:49:45 +00:00
stephan
99438c843c Correct the default config value for HAVE_TCL (0 until proven otherwise) and fix the starting dir for SQLITE_AUTORECONFIG (formerly SQLITE_AUTOREMAKE), as reported in [forum:8ab69387008f2f6c | forum post 8ab69387008f2f6c].
FossilOrigin-Name: 55f78b639624ad360d04c102339ef7147d6d24dd9bd0d17b346df0c03ee443b6
2024-10-28 02:46:57 +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
e34646b5dc configure: add --with-icu-lib=LDFLAGS and --enable-icu-collations. Fix auto-reconfigure when flags contain spaces.
FossilOrigin-Name: 2a881a2e1b7355c7733c3a41a82290ba6f3983232a9ec378d9a1b62ee4109f54
2024-10-27 07:06:03 +00:00
stephan
68b0e8db05 Makefile.in: include CPPFLAGS in the CFLAGS, as the legacy Makefile.in did, because some downstream scripts rely on that. Remove a duplicated TCLLIBDIR assignment.
FossilOrigin-Name: 8e352f4199e048030113e0cc359eaadb6d29bc4b3dd7a0442d7500f7c3847e50
2024-10-27 06:03:27 +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
stephan
f84060f2f8 Ensure that jimsh is built in the proper dir in an out-of-tree build and that jimsh0 is cleaned up by distclean.
FossilOrigin-Name: e0286e258b17e7812387f5e661910ddd3c015bd5ac62dcbd7e02b69379dc9277
2024-10-25 05:53:50 +00:00
stephan
14e4d9ad30 Rename config-defines.json to config.defines.json for consistent with other generated config.* files. Rename --defs-json-include-lowercase to the even less wieldy --defines-json-include-lowercase.
FossilOrigin-Name: 131a2a7ef87b65527d03b3c838de9d34eaca94992a973283ad6eeb296250db92
2024-10-25 04:48:40 +00:00
stephan
957209e7ac Add --defs-json-include-lowercase configure flag to cause config-defs.json to include lower-case defines, which are primarily the various build-related system paths.
FossilOrigin-Name: 0f2555ea3c7c1950566182c8f5a4d98049461e9db305e892c8434ba3fbf3497a
2024-10-25 04:39:14 +00:00
stephan
7db8d195c3 ./configure now emits config-defs.json, a JSON-formatted counterpart of the DEFS=... info which the pre-built autotools bundles emit.
FossilOrigin-Name: 800b083c3a55a990bd5b7fd587e24144b0084a394f9cf8160c3aa0a6880f8053
2024-10-25 03:18:11 +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
stephan
4cd85bda4a Various build cleanups centered around straightening out various uses of CFLAGS and its cousins. Teach Makefile.linux-generic to figure out the TOP dir on its own (a GNU Make-ism, but it's a Linux-specific makefile).
FossilOrigin-Name: 58a0f7e79ce913b432dfd4db018e5a92efa8a6bd8a50bd78ab705ceac0322e9c
2024-10-24 07:31:39 +00:00
stephan
30b20563e4 More potentially-controversial makefile symbol renaming. This is simply more readable to my eyes.
FossilOrigin-Name: 6d4d1d5fefb82ec7458efc2e93c933d9dc415dfa06fa46ff4725c30fc920ca5a
2024-10-24 05:33:30 +00:00
stephan
b3cff449f9 Bump version number to 3.48.0 (in this branch only - in trunk, doing so requires a specific autoconf version) and rename the RELEASE and VERSION makefile symbols for clarity's sake.
FossilOrigin-Name: 4193d90f2158e25fe25f9bcf579ae38a6e0ab6c26f52cd07a777d67b87107632
2024-10-24 05:03:20 +00:00
stephan
caf8c28420 Potentially controversial/unconventional makefile symbol renamings and docs explaining them.
FossilOrigin-Name: 7eceb7539dcce16104a93ad0ca1f755f23621751878cc4b01465e61333795b72
2024-10-24 04:56:44 +00:00
stephan
ce236e031e Generic build cleanups.
FossilOrigin-Name: be7b32a77f58ae3eb15cb828385035e63236b7e6c0669f90f2321f0509f0de1b
2024-10-24 04:34:39 +00:00
stephan
e74c738e55 Get Makefile.linux-generic (formerly Makefile.linux-gcc) working with jimsh in out-of-tree builds. Pass on -DHAVE_READLINE=1 to the sqlite3 shell if configure detects it.
FossilOrigin-Name: a555ff6dbc2ded5a9c65c8ef483f3197298848a580dda25ba0b721ba13167ad4
2024-10-24 03:50:40 +00:00
stephan
8c97ad8834 General make cleanups. Start adding a sanity-check mechanism to main.mk which does basic validation of the vars it expects to be set by the file which includes it. Get Makefile.linux-gcc working for the core-most rules.
FossilOrigin-Name: 85b2c73ccb85d7f5830a6fac692b380c5c79e7a54ee3fc6fc37343fa23816ef8
2024-10-24 03:14:40 +00:00
stephan
4dadb531b0 Rename some build vars for legibility. Fix hwaci-make-from-dot-in when the input file list is multi-line.
FossilOrigin-Name: fdb584421578cae825365d457cd533721839e3503f3744c77832c5925815b537
2024-10-24 01:26:50 +00:00
stephan
e615b73040 Fix out-of-tree builds configured with --disable-amalgamation.
FossilOrigin-Name: 182dac1c46f8ada2e1f3abd4959ac72f0ecfd451b41fbe699f5077f338ae7d62
2024-10-24 00:02:44 +00:00
stephan
a7d3d40e06 After compiling jimsh, run sanity tests on it to ensure that it is built with -DJIM_COMPAT and one of (-DHAVE_REALPATH, -DHAVE__FULLPATH).
FossilOrigin-Name: ea6a14a6e64c0ed2306b9b3048132659094259b95b49a9572f7178c26b28f93a
2024-10-23 16:46:46 +00:00
stephan
284e70b3a1 Add missing export of LDFLAGS_DLOPEN to Makefile.in.
FossilOrigin-Name: d18af84bf76db16513791b43850c41dbb5a83c435b8d3e93afaa8c2920460ac7
2024-10-23 15:05:08 +00:00
stephan
fa8a7f88ff Minor build docs and cleanups.
FossilOrigin-Name: 0eb96ea2d153c0f7bd9743b759849c95b3e9f1e6e4a9cdb30c26aa2ca43c1e14
2024-10-22 17:57:22 +00:00
stephan
894bd83f52 Touch configure-generated files at configure-time even if autosetup does not update them because their contents would not be changed. Works around wonky deps causing too-frequent rebuilds.
FossilOrigin-Name: 339b48af1728f6acb4c3a02f84bd432466dcc728d3d01f9728e82f3c6aedb002
2024-10-22 03:33:11 +00:00
stephan
31465666ff Bring checksymbols target up to date and add a TODO based on a feature request from the forum.
FossilOrigin-Name: c00a03256b3f06411f93e690f875e9bc59a750aeea3ecf84bf8c8bec7c08b8ae
2024-10-21 22:15:04 +00:00
stephan
7968c38540 Get most of the numerous misc tool binaries building.
FossilOrigin-Name: fa74cbb40c0f2e0135ac97fc4fa899b2ab7973f925f154e8e18c85661d60e17f
2024-10-21 21:22:18 +00:00
stephan
ad8e79ce53 Simplify how the targets which may or may not be enabled, depending on config flags, are formulated in main.mk.
FossilOrigin-Name: 7bea793ce46ab5c41b242c5e69b4f9bd8536a9b106e8c39f7ac002451d5db6ea
2024-10-21 20:12:03 +00:00
stephan
b124098e51 Start moving most Makefile.in docs over to main.mk. Fix compilation of tclsqlite.c.
FossilOrigin-Name: 5b154e08ab5e8a8fd1ac1b28debd46824ef55b533a60ca5711c55b5a59a871cd
2024-10-21 17:50:55 +00:00
stephan
a3d219a794 Build doc touchups.
FossilOrigin-Name: 109d441bf1bcdbc01d1f3f2aa145039539fc5aad02f91fc987a0c3702e21809d
2024-10-20 02:47:56 +00:00
stephan
857bcb6035 Minor doc updates.
FossilOrigin-Name: 6578a8d59e351182ee16a1f4e4b2c88a042a92dd8b32049947aa0436464b8588
2024-10-20 01:34:13 +00:00
stephan
f9c73ef7c5 Generic build cleanups and reorgs.
FossilOrigin-Name: 365a3d71cf9e0be11e7b3e90b6500142619102d8321c1d6f8111f37117a57929
2024-10-20 01:09:51 +00:00
stephan
003d304c9b More build cleanups and get it working with BSD make (which apparently does not support $< and behaves slightly differently than gmake with X?=Y).
FossilOrigin-Name: dcf4fc78fb2813d37eb56c358009f1e5225f28a0c85c710c8127db330efaf319
2024-10-19 20:53:46 +00:00
stephan
25557128fe Move most of the makefile code into the static main.mk.
FossilOrigin-Name: 09905ed094f7102dbb4fc81b059452c50b48b0f3a2bd9736bed364b0639d89d7
2024-10-19 20:26:17 +00:00
stephan
abf470d7a3 Factor out all autosetup-processed @if/@else blocks from Makefile.in in prep for moving most of the makefile code into main.mk (which has, so far, been completely overlooked in this port but will now become the main basis for the static parts of the build). The idea is that all build configuration goes into a platform-dependent makefile which then includes main.mk.
FossilOrigin-Name: 707e0f5857d58ec8b457270f988126b1dd0f01b5a3445a43ff7b5429324b1b3d
2024-10-19 18:31:47 +00:00
stephan
816f4b9cc1 Generic build cleanups.
FossilOrigin-Name: 510afccf02dc9c3e3b928c64c34d10bee66a2343ecec6e24c4770cb0f139cd65
2024-10-19 16:58:17 +00:00