Commit Graph

63 Commits

Author SHA1 Message Date
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
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
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
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
5f05a7c3c7 Simplify how hwaci-xfer-options-aliases figures out whether flags are provided.
FossilOrigin-Name: f06122a543f7dac016c8da1cd92a629eb647142b95c85a131b9da8e0dc5516b0
2024-10-28 11:13:00 +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
36cb4d03ac Docs and small code cleanups in hwaci-common.tcl.
FossilOrigin-Name: 1353d4b600ae2849d2591b3fba0cad71289ee996334222a6886dc01cd4be5c07
2024-10-28 01:13:00 +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
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
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
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
stephan
bad9725a29 Correct sqlite3.pc to represent the library, not the CLI shell. Remove the half-baked an unused READLINE_H config define. Internal tcl doc fixes.
FossilOrigin-Name: c8c70353bbdcee20487766f5f03f1638a1c35022bb5f1249141b86d561f1b613
2024-10-27 02:08:38 +00:00
stephan
1fa0ef3ae8 Get --with-linenoise=DIR configure flag working.
FossilOrigin-Name: 66ce47e5de21c607d2ef1f1e6e639f3c6da132ff3db582e12bd174f7d89d8150
2024-10-26 21:51:04 +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
stephan
70188a66e0 Fix BUILD_CFLAGS (for B.cc) to not inherent CFLAGS (which are only for T.cc).
FossilOrigin-Name: ffdce13deb8a1fbce717da9ca44fd34409bedad4db805722100647372c06f4f5
2024-10-25 23:04:50 +00:00
drh
4ccc5de98f New jimsh0.c file for autosetup.
FossilOrigin-Name: cfacf864119170365fb21a09d2cca5f2a16354837ef0c3c726b00a886ea8e7e2
2024-10-25 12:22:29 +00:00
stephan
7ad582ad5a Internal cleanups and docs in hwaci-common.tcl.
FossilOrigin-Name: 30699b57d21f70dd42ec61f5157859358c6be5e3e14bb2989f8874ceeda5dae6
2024-10-25 04:16:36 +00:00
stephan
a1bc2ad6ce Docs related to the -array defs-dump option. Rename some internal-use hwaci-common.tcl APIs after discovering that a - as a symbol suffix fails for var derefs (but works for procs calls).
FossilOrigin-Name: 0d5da3888e79166fec560554a921e2ef4290558e988144465f1ea7138ca263a3
2024-10-25 03:56:09 +00:00
stephan
aa7c9050fa Experimentally add the -array formatting option to hwaci-dump-defs-json and emit OPT_FEATURE_FLAGS/OPT_SHELL in both flat string and array forms.
FossilOrigin-Name: ce6bc4603c27952ca44ff55c81dd50a04b0f6ef8f198720ee0da3aff4c291449
2024-10-25 03:35:01 +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
drh
a734793b2f Fix a bug in jimsh0.c for when it is compiled using MSVC.
FossilOrigin-Name: f7def0be742fad9863f1eba11d0c2f1fa739ad1262e67d24380698e3948cedb7
2024-10-24 17:16:38 +00:00
drh
936fa83402 Fix jimsh0.c so that it compiles using MSVC: "cl jimsh0.c"
FossilOrigin-Name: f531825d4e16502ac8fa496fba51ea735232e2988aa9ddd0f232825f6ec2a9a2
2024-10-24 12:18:53 +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
8d69bd2a20 Fix a #define typo in jimsh0.c, eliminating the need to explicitly pass -DJIM_COMPAT when building it. This fix has since made its way upstream.
FossilOrigin-Name: 9b105abf6fb6425d223ab9319f539b9d0cc2df488e0c23c5070853ba4778ebee
2024-10-23 16:59:12 +00:00
stephan
8a6ddc551e Another fix for autosetup/autosetup-find-tclsh for the case where a tclsh is found on the system.
FossilOrigin-Name: 19d78fcef469a15487953ce2d227746ad83c0360fdc42cd4b6df6a2bc5ebb8ae
2024-10-23 02:36:50 +00:00
stephan
5d6c11b766 Latest autosetup/autosetup-find-tclsh from [https://github.com/msteveb/autosetup/issues/67 | autosetup ticket #67].
FossilOrigin-Name: 0e33f6cd48cb844331e66bfcfd93f83671380edef70b1e6684c09a7d4671eb17
2024-10-23 02:22:57 +00:00
stephan
fdcd599992 Minor cleanups in the --with-wasi-sdk bits.
FossilOrigin-Name: d952c17981073cb0158b392edd9b0818dfba2456ab9997d360af56774c9f4216
2024-10-23 02:11:52 +00:00
stephan
591123eea9 Fix /dev/null and stderr redirection ordering in autosetup/autosetup-find-tclsh so that the extraneous strlcpy()/snprintf()/rand() warning output from ld on OpenBSD does not break detection of jimsh0.
FossilOrigin-Name: cd447e50d1b31e7539e4a8b5dc2a88c5a6a3814a28718b5829167b830dfd0edd
2024-10-23 01:33:15 +00:00
stephan
198b72cfe8 Use pkg-config for readline detection, if available. Unrelated minor tcl cleanups.
FossilOrigin-Name: 3a41ac08a443f96c3f34432f5034d2d12f03913f2a1db19d9f133b365b39ad20
2024-10-23 01:18:16 +00:00
stephan
fa8a7f88ff Minor build docs and cleanups.
FossilOrigin-Name: 0eb96ea2d153c0f7bd9743b759849c95b3e9f1e6e4a9cdb30c26aa2ca43c1e14
2024-10-22 17:57:22 +00:00
stephan
1e38a9cc1a After discussing [4d4423df8d14] with Steve Bennett, do not prepend $prefix/bin to the search path for binaries, as that path is commonly used for cross-compiled targets and we want binaries which will run on the build host.
FossilOrigin-Name: f2008a7d797263de25eaed60d4b6bd5c87cdb917bb92cfc8700f91e6416d744c
2024-10-22 03:56:21 +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
f4ab0ad8ee Rename hwaci-error to the more descriptive hwaci-fatal. Use autosetup's file-isexec instead of [file executable] for portability. Remove the binary file lookup cache - unnecessary complexity. When searching for tools like tclsh, check under $prefix/bin before checking the $PATH. This seems like the right thing to do, but the fact that autosetup's file-search API's do not do that by default leaves some room for doubt about the wisdom of this change.
FossilOrigin-Name: 4d4423df8d14fb683bb89bebeac4b108a40847259a116fcb634b9e6594907026
2024-10-22 03:12:11 +00:00
stephan
84f952ba8f A possible fix for some as-yet-unused configure code which looks for a module loader.
FossilOrigin-Name: c6c799a54b3fad2f8c2b73b0a88f64dda38736a283bbf4dd286ac9dd6d6bf153
2024-10-20 02:35:25 +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
49bb81844c Generic build cleanups.
FossilOrigin-Name: 2cd213b38748d93134dc88b25aada4741838eaed683e44d5cc7837a6586fa4cf
2024-10-09 05:28:29 +00:00
stephan
59ded3ff14 Get some basic install rules working.
FossilOrigin-Name: e9ab211f82f789c89ab52e8d5fe7526c09943b2b8b3002fa7a16fb2b40addc8f
2024-10-08 16:06:11 +00:00
stephan
2e7c9ae473 Fix reversed logic in the build/target/host names in several hwaci-* functions.
FossilOrigin-Name: fde7257ad9ce84be6d907be3c6d277b04dd9466ee6828bfded4cfefc86db22db
2024-10-01 11:04:02 +00:00
stephan
aca993423f Add static library build. Get build working (for a given value of working) with the --disable-amalgamation flag.
FossilOrigin-Name: ddfda58004fa3e43c4f2d497c6feecbea3b195d14196bf179f4aafd21ea089ea
2024-09-30 19:01:41 +00:00
stephan
c4c951adbe More generic build tinkering.
FossilOrigin-Name: 433bfc790258e1d2e7c9ea4839a9edb25dde0b99d1e888d1e2a4cf669825fb79
2024-09-30 17:44:41 +00:00
stephan
0831b3a989 Generic build tinkering.
FossilOrigin-Name: b6c1772ce0278988ecaea485c4feb8b0919fa1530f0c53b8321d9bd2277b5acd
2024-09-30 14:33:36 +00:00
stephan
595a2532f3 Get libsqlite3.so building.
FossilOrigin-Name: c65e3679e0d28e980bb555b47f31690b27915d9ff0850f598e3bed528b18ca1d
2024-09-28 14:51:10 +00:00
stephan
5ff68db4f1 Latest upstream autosetup for a --help fix on QNX.
FossilOrigin-Name: b9faebbb543fb3a03f46dd4defe28ffa0c32a9a46ed73912f93b86e41f3db04a
2024-09-28 00:41:34 +00:00
stephan
05c5e76c94 Add basic libreadline detection and build CLI shell.
FossilOrigin-Name: 2ba7ab562580667bc9249f2d1f2402c605553d5583eec497398abe6d196c83d4
2024-09-27 13:29:50 +00:00
stephan
1865e85e0b General tinkering and cleanups in the autosetup bits.
FossilOrigin-Name: a290e3b15de75f6a0a4975b5747449525fb2b58b3947b8ca0ab64a4d3cca228e
2024-09-27 12:15:14 +00:00