Commit Graph

133 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
88349483ef Move the .default-CFLAGS handling into a utility function, rename the corresponding file to .env-VAR, and apply that lookup to a couple more places.
FossilOrigin-Name: f01b61f21d105706e78eb1e3e7971e9ccb7a68250f8cda96ce285f0fd6b2f7f2
2024-11-03 21:32:24 +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
97c709b5be If any autotools-conventional dir names are explicitly overridden via ./configure --dirname=X then export those names as-is to the makefile, otherwise derive them from $prefix. This is, at least in part, a compromise to provide package maintainers a way to specify a libdir which will be incorporated into the -rpath link flag (which we can only determine at configure-time).
FossilOrigin-Name: 832abe8a8a347718e47f73a1f9be1fb084a1c28cac6b1c70f6c9a9cabeb0fb53
2024-11-03 19:42:41 +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
afb8798580 When configuring with --with-wasi-sdk, ensure that we use that SDK's 'ar' tool instead of whatever is in the PATH. When pushing/popping the define var scope for the jimsh compatility check, include more defines per consultation with autosetup's creator.
FossilOrigin-Name: 2dcc465a7090811ddbc210673f37b4c3a4439c501874abefd403efe1e98f5b17
2024-11-01 01:56:27 +00:00
drh
583770af28 Omit unnecessary bold text in ./configure output.
FossilOrigin-Name: d1368dc12b05e9828cb86a608771b666914c0e027ac4c42dea0042b0345d8b22
2024-10-31 11:21:35 +00:00
stephan
98eb4ad6ee Add -trim flag to proj-file-content.
FossilOrigin-Name: babf66f5c7074c24ca8ae898cd850964e99cef41fd1395a0d6c582cab75ae3bf
2024-10-31 08:12:48 +00:00
stephan
ec04c41be6 Remove some proj-assert checks which are not valid on OpenBSD. Ensure that queued up notices about TCL warnings are displayed before leaving sqlite-check-tcl.
FossilOrigin-Name: 3447308f3f66046ffedd502161757211bef0384d7a735ff675c06c04fbc22655
2024-10-31 08:03:35 +00:00
stephan
7be78606ff When reading in .default-CFLAGS, trim it.
FossilOrigin-Name: a62a5171ace53b79feda93701f90d6d6f88eb5542bd35ac76f962745c58588b0
2024-10-31 07:30:53 +00:00
stephan
343fe033c0 If a file named .default-CFLAGS exists in the build dir, use its contents as the default value of the CFLAGS unless it's overridden by being passed in or in the environment.
FossilOrigin-Name: 731d333c224e70190dadd214de1970ea541a3d716d1d7ff2c0ef6c63b8be9b13
2024-10-31 06:52:09 +00:00
stephan
0e07bc36d9 When --with-wasi-sdk is active, temporarily swap CC and CC_FOR_BUILD for purposes of looking for APIs required by B.cc.
FossilOrigin-Name: 435f2ee818d7181551c6860b6bc4db97f82d76b58fd82765a6cf49e2d02ff18c
2024-10-31 06:38:30 +00:00
stephan
c6cfc8e3ea Change default CFLAGS to {-g -O2} to match the legacy build.
FossilOrigin-Name: 511774942903277b3d38f28336599667df20f94a8de79746b6c236b827b7ffc6
2024-10-31 05:47:56 +00:00
stephan
1e563f4817 Move the linenoise flavor check from auto.def to proj.tcl for re-use in downstream projects.
FossilOrigin-Name: 84e503dc1e3672fe7787fb747ed70ca14ad181a743925bd1658c40baaa8a27cd
2024-10-30 22:49:40 +00:00
stephan
2d73547cdb Expand [c0048e4482e9] to determine the linenoise API flavor via a compile test rather than guessing based on the filename.
FossilOrigin-Name: dbf0079190d98ec1760cc3b55aa0116c9f85f215586bd864c5d6cede5a034fa5
2024-10-30 22:41:12 +00:00
drh
9bcb0a510f Fix the CLI so that it can use either the canonical Antirez linenoise
(with HAVE_LINENOISE=1) or Steve Bennett's enhanced linenoise that works
on the Win32 console as well as on Unix (with HAVE_LINENOISE=2).  The
./configure script detects which one to use and sets HAVE_LINENOISE accordingly.

FossilOrigin-Name: c0048e4482e9cb9662637899922af9609e7c8fb002a37b71e6181074df7a0dd1
2024-10-30 14:03:56 +00:00
stephan
7d7e82c9b1 Clean up and add docs to the TCL vetting steps. Make warning and error messages bold if stdout isatty.
FossilOrigin-Name: 47157dcf9ec6b52b37578bcd5dc5ace8c36e62c8ca2625c94252c15db784b115
2024-10-30 05:07:18 +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
691e7eceb6 Try to detect if --with-readline-cflags is passed a non-cflags value, e.g. readline/readline.h, and fail loudly if it is. The legacy configure accepted that formulation but silently did nothing useful with it and that formulation now causes the auto-completion test to fail, as reported in [forum:f13b8e8f38402367 | forum post f13b8e8f38402367].
FossilOrigin-Name: c97f34d064c1fc1e6860761a417aaab2a79bd3871bcd1dad1d0d3b6f4b692a1e
2024-10-29 23:19:29 +00:00
stephan
e034c18591 General auto.def cleanups and docs.
FossilOrigin-Name: e2f41c2540d8ff7686bfe22336598896de9083d139fc5a291c0f19896b9c1d20
2024-10-29 20:27:36 +00:00
stephan
ca698abb5a Reformulate the readline completion signature compatibility test so that -Wunused-variable in the CFLAGS does not cause it to fail. Problem reported via email.
FossilOrigin-Name: 3891669a3fdd71f7095cf464f6e4e2b870d6c23e79b9f796b1125b2040f05519
2024-10-29 19:03:22 +00:00
stephan
47f4bb3f2d Rename an almost-name-colliding auto.def function. Fix a refactoring-induced change which broke implicit lookup of tclConfig.sh. Add msg-debug proc to enable toggling of developer-level debug messages via a configure argument.
FossilOrigin-Name: 265ba15df1e64a50722118ac6d84667b0abd35fe8f4db28facf7788c50ac6cde
2024-10-29 18:50:25 +00:00
stephan
d3335a7970 Remove some extraneous configure output.
FossilOrigin-Name: 2234569edb15bb8b229e1b785aea08dd515798419ffe39c50f8399ce984258ac
2024-10-29 17:55:12 +00:00
stephan
02834a9a3d When either --readline or --editline are explicitly provided but the corresponding feature is not found, fail fatally. If not explicitly requested, simply disable that feature if the lib is not found.
FossilOrigin-Name: 1d24a29c6ef05185950ba5c45f2a60a92f12a8e5c57026b599f716c9f2f6cf84
2024-10-29 08:42:06 +00:00
stephan
4cbc413a25 Minor --help text tweak.
FossilOrigin-Name: 80ac10ed8d0ee9eaf83a6c43608098c631f5f9535c8b125da5bfe2d6a4d23bec
2024-10-29 08:18:45 +00:00
stephan
13e735a5b5 Add proj-assert proc and add a couple of asserts to the editline/readline checks.
FossilOrigin-Name: db9870caa806c902cae033a96fec48db1b2d78b96b124e568479c5326e006c9b
2024-10-29 08:14:34 +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
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
de4fc707b5 Rename the 'hwaci' auto.def utility API to the more generic 'proj' API, per /chat discussion. Fix a function name typo which caused readline detection to kill the configure in one code path.
FossilOrigin-Name: e20610f06bfc6f4ebc5806da05c307d91e1f0a8c7a7501a7953273dbf1816fee
2024-10-28 14:16:50 +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
5a6dc86df2 Have --enable-editline fail rather than emit a warning which would easily be overlooked by automated builds. The error message explains a potential workaround for activating libedit.
FossilOrigin-Name: 2bd1b9557a1619adcaf5aa6dc5d5d0972e8416dafc9f36621b409192be95223d
2024-10-28 02:11:51 +00:00
stephan
1682fedaa0 Add --with-icu-config flag to use the icu-config binary to find the required ldflags for linking the ICU libraries.
FossilOrigin-Name: 64f33bb125102b3fec3901f4b56098429509ec0b6ce6e6b88af2393c344ac864
2024-10-28 00:56:31 +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
2005250d7f Generic cleanups in auto.def and hwaci-common.tcl.
FossilOrigin-Name: 428e542452bac99d48950f1f62b65b4e235636540b946151747e2d5b59dbfd99
2024-10-27 20:46:09 +00:00
stephan
5be20f3927 Doc additions and minor cleanups in the --flag alias handling.
FossilOrigin-Name: 37a1da038195365cd7eb866b3aa749ad8060a656ac38063520fdb70cf0a0e5f1
2024-10-27 20:14:49 +00:00
stephan
f6e86e38ac Rename --with-readline-lib/inc to --with-readline-ldflags/cflags, for clarity, but retain the older names as aliases using autosetup's "hidden alias" feature. Rename the newly-added --with-icu-lib to --with-icu-ldflags (with no backwards compatibility).
FossilOrigin-Name: e50a03f9f2a40a5e65f874ffff234a7b397ce4ebdc7b360d4e6ade7575577c38
2024-10-27 20:04:23 +00:00
stephan
6bb44daae4 When ICU is enabled, ensure that the CLI shell build enables its feature flag and include LDFLAGS_ICU in sqlite3.pc.
FossilOrigin-Name: abec913c00564ee5453075f45b1a6680e92ee1b1e61e3b19e4cf74e46785d3bf
2024-10-27 19:26:54 +00:00
stephan
9905e7e22b When readline is enabled, attempt to determine whether the completion API is compatible and, if it's not, disable it in the shell app.
FossilOrigin-Name: 4564dbe4ac0040803b5d139c9fff22a60a45b4769d80ad7c824456cc6b9f1722
2024-10-27 18:46:11 +00:00
stephan
954c02b414 Remove some incorrect code comments.
FossilOrigin-Name: 6dfda7f5799f5a2448d3bd57fe9422de100bd8f4f9e53e97f73eeb85c3707b0f
2024-10-27 09:28:35 +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
b909f23581 Generic auto.def cleanups.
FossilOrigin-Name: 19a5377e608e7ab8fb5733a87ab02a6a69511570c3829e2c1befecc582a6f8ee
2024-10-27 08:29:18 +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
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
c9f16f6562 configure: document why --enable-editline does not work and emit a warning with a potential alternative/workaround if it's used. Various cosmetic cleanups.
FossilOrigin-Name: ccb8f16f8a5c500b683800672aa4bc87d2f109e87ebdabf6c54d5b6dc69718f7
2024-10-27 05:28:52 +00:00
stephan
ac1f151796 Bring the automated readline detection up to parity with the legacy configure script.
FossilOrigin-Name: 2ddeb7a8f55735cc7f2cf95cbbb0b20c563ced87db1429816fcfb0ee89e751f0
2024-10-27 04:27:47 +00:00