Commit Graph

88 Commits

Author SHA1 Message Date
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
stephan
66fee051a6 Rename --with-readline-ldflags/cflags to --with-readline-lib/inc because it turns out that ldflags/cflags have (when passed an explicit value) the same semantics the legacy lib/inc flags. Still to-fix is that the no-flag-given readline search behavior differs, and is much more limited, from the legacy configure behavior.
FossilOrigin-Name: 8f6897b92c6a059f1c658ccce5bdc9ff3d29b41eec8298c6d46c7aeabace1d89
2024-10-27 02:27:07 +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
ae50e509f5 configure flag --disable-readline now trumps --with-readline-...
FossilOrigin-Name: b66076e51bc1601864973be0f3f2b702b51139ed3818f17433fbaa8351119ad6
2024-10-26 18:34:39 +00:00
stephan
784623d599 Add new configure --with-readline-ldflags/cflags/header flags as brute-force method for clients to tell configure how to compile and link against readline.
FossilOrigin-Name: eaa3a8053eb0935bc47abc1001ff101d79b3f181ac7ea51d3e567cb59ae4c7b3
2024-10-26 18:17:17 +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
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
d045b42854 Use (cc-with {-includes stdint.h}) when checking for the various int types because, despite it being C99, it turns out that we do indeed use it if it's available.
FossilOrigin-Name: 51a9278134b5b9093c92c7036cc91b823f30dd36f677f2335927854744225024
2024-10-25 23:25:49 +00:00
stephan
cbb182fef2 When --with-tclsh=X is used, use X for all TCL purposes, including in-tree code generation, per developer request.
FossilOrigin-Name: 12498e55c0c689f43c78002fb850a58dda337feae51194b9cade7f5dff15e833
2024-10-25 23:13:12 +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
stephan
a2a875e3b8 Experimentally: when ./configure CC=foo is used in a non-cross-compilation build and CC_FOR_BUILD is not explicitly provided, force CC_FOR_BUILD to default to CC. This is debatable - see the code comments for the justification.
FossilOrigin-Name: a49bee68418f9e8c3813a60f76de265b8e6a98a15ab9b246aa42d9e9558a03eb
2024-10-25 23:03:33 +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
d2cbc22dd5 Minor auto.def cleanups and doc addtions.
FossilOrigin-Name: ea53aba82b1083bd59262e768b9331bfdc5c4ca6c4121b98aeedcbeb5af01b07
2024-10-25 13:56:13 +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
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
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
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
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
6d288e2408 Remove unused configure check for clang-18.
FossilOrigin-Name: d73ac7286aba8e8f9d1236dd06f6055bc3026879ff15efb151cc54175d02e315
2024-10-23 17:40:07 +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
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
55fca9585c Reorder some auto.def code to avoid breaking --help.
FossilOrigin-Name: 151d7dfc8da64932f624528ed55764df6408a578bddc741b3dbf2f14567a0d71
2024-10-23 02:17:46 +00:00
stephan
fdcd599992 Minor cleanups in the --with-wasi-sdk bits.
FossilOrigin-Name: d952c17981073cb0158b392edd9b0818dfba2456ab9997d360af56774c9f4216
2024-10-23 02:11:52 +00:00
stephan
54e1dff24b Get auto.def handling the case that no tclsh is installed in a default location. If not, use jimsh if we can find realpath(), else bail out.
FossilOrigin-Name: 359741bc7624006014d73c4cf5cdd29fa38c33a446ed04b46032e5d3ca18d13c
2024-10-23 01:59:34 +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
4f72770b34 Minor cleanups to how configure generates tool/emcc.sh.
FossilOrigin-Name: 4484b4623684b09df018f85d95a2b2894a13f38013902831be20a263db605001
2024-10-22 13:02:48 +00:00
stephan
6ac6bedc80 Teach ext/wasm/GNUmakefile to use tool/emcc.sh and fix a syntax error in tool/emcc.sh.in. Work around a JimTCL incompatibility in tool/mkshellc.tcl.
FossilOrigin-Name: 24e0f6ecc67615a2a8c2df08aa47a782cf692fb1a5a59246eab83c0232e78edc
2024-10-22 12:56:00 +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
5bae363b99 More build doc tweaks and get ./startup building.
FossilOrigin-Name: cee285029c7225a2457062eb2b4ea7c6a17a3a5ba5fb776ebbb4ea8be62b9fff
2024-10-21 19:51:32 +00:00
stephan
59ac8f4c7f Add docs introducing how to define and use autosetup configure flags. Use -DJIM_COMPAT when building jimsh to force its expr command to be syntax-compatible with canonical TCL.
FossilOrigin-Name: a6a275de3d975fdf7432d71a915b40426a976725ebd81a178b5e80d14cf3a2df
2024-10-21 16:06:49 +00:00
stephan
a3d219a794 Build doc touchups.
FossilOrigin-Name: 109d441bf1bcdbc01d1f3f2aa145039539fc5aad02f91fc987a0c3702e21809d
2024-10-20 02:47:56 +00:00
stephan
ec5e611935 Cosmetic tweaks to auto.def.
FossilOrigin-Name: 476d2407e52ebf66e18f4f5f70c7c2a37bb4d253969c23e1e75d4cb0460a93e0
2024-10-20 01:41:36 +00:00
stephan
8bdece9034 Do not check for Emscripten when doing a --with-wasi-sdk build.
FossilOrigin-Name: 111cff2cf38886ccec11b45db8b891ec84e24d0b61d413b35fd474b51003e8f2
2024-10-20 01:14:54 +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
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
stephan
b08f1d5d97 Get mptest(er) building.
FossilOrigin-Name: f740f6a4447543751800465ddfa11c9e3c89fb7054a9dfb5450938885b8f9633
2024-10-19 00:49:01 +00:00
stephan
20755cef7d Get most of the fuzzing-related apps building, sans dbuzz2-asan/msan, both of which refuse to link with clang v18 because it's trying to use -lstdc++ despite the app being only C.
FossilOrigin-Name: 3e843452927aaea152eab60213337912c34966e2c77d3cfd50d2ee9eb77c6796
2024-10-18 16:39:17 +00:00