1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-09-13 21:02:00 +03:00
Commit Graph

150 Commits

Author SHA1 Message Date
stephan
220260b896 configure: in several places where support for -Wl,... linker flags are checked, ensure that the check invokes the linker (not just the compiler) to avoid false positives. This allows us to remove the AIX-specific handling and --disable-rpath bits added in [a15e0f680], as well as make several similar checks more robust.
FossilOrigin-Name: 4e81e2c707a954dcda6219dc94e2b96dd0c9907bd4beab28adad51d488b7d739
2025-02-21 03:19:21 +00:00
stephan
a80089c516 configure: automatically fail the check for rpath on AIX systems and provide a --disable-rpath flag as a fallback for use on platforms which pass the configure-time rpath check but then fail at link-time. Based on discussion in [forum:ae5bd8a84b|forum thread ae5bd8a84b].
FossilOrigin-Name: a15e0f6802a5ba7bc5a7a70d6a162ea4548b49b132a5ac31263e64c388bbafcb
2025-02-20 17:14:40 +00:00
stephan
f8a9f45595 configure: when running proj-check-function-in-lib, strip -Werror from CFLAGS for the duration of the test. This enables CFLAGS='-Wall -Werror' and the like to be passed to configure without breaking these configure-time checks.
FossilOrigin-Name: 4ae9d6c642295e3a0c1732dacf7c18ecacd39d3e74e38381ac5531c8396f5f1c
2025-02-20 03:27:47 +00:00
stephan
3cc3898e13 Internal reordering/re-grouping of some configure flags. No functional changes.
FossilOrigin-Name: 0c085a5ab51d6ac793a147a865bd086b1a6a572932c251b38d3854e4ea802f8d
2025-02-16 19:16:09 +00:00
stephan
c2d56ea4ea Re-add the --disable-static-shell configure feature to the autoconf bundle. It got lost in the autoconf-to-autosetup port, as reported in [forum:cc219ee7044|forum post cc219ee7044].
FossilOrigin-Name: 47e817f663468ce08dae4965b7ecacefb921a77398ec958b35bf5cedee767e24
2025-02-16 18:14:05 +00:00
stephan
4e87ddc105 A cleaner workaround for [6a21d6a2], provided by autosetup's creator.
FossilOrigin-Name: 334ed723d0fc0b202f79a9746459181f637ca99c54864a4aa11629eecb4b8d0c
2025-02-15 14:12:24 +00:00
stephan
6b5599726b More informative output for the pthread feature test.
FossilOrigin-Name: 01b9ed73ca6e72411dcf5a81f445c15c5bc42fa068fc7eca485ac72635b9d2fc
2025-02-14 18:17:31 +00:00
stephan
d04782206b Make failure to find pthreads support non-fatal unless --enable-threadsafe is specifically passed in. Build regression reported in [8e0fdb8c0d].
FossilOrigin-Name: 806ad1ac173d7c0d6d94bfccd3b961fc5c9541b32773c063a8c4082380d7a90d
2025-02-14 18:06:28 +00:00
stephan
a09fd7b913 Work around a autosetup --help bug which only(?) triggers on tcl 8.6, introduced by [9978c87139b7b042] and reported upstream as [https://github.com/msteveb/autosetup/issues/73|ticket #73]. Summary: calling 'options' from a proc, instead of the global scope, triggers an error about an invalid use of 'break'.
FossilOrigin-Name: 6a21d6a2ed627ba0a864bef85369ed17553b808ae5c19891fa1f70505dfcbe39
2025-02-14 17:21:05 +00:00
stephan
e3157582bf ICU config support: add more details to error messages and correct a typo which would cause a configure crash if --with-icu-config=X refered to a non-executable X.
FossilOrigin-Name: ff508926651d632d86081ccde89d3367c89538dde469e9e925540d634ac8a416
2025-02-14 16:42:37 +00:00
stephan
1be96b44c1 configure --help cleanups and eliminate the use of a JS-esque inner function in sqlite-config.tcl. No functional changes.
FossilOrigin-Name: 6df859cd18ded3ca64a184e45709503dd9b6a3f65e7611d3352f0bad288400f4
2025-02-12 16:59:07 +00:00
stephan
56ff8df023 Tiny tcl comment tweaks. No functional changes.
FossilOrigin-Name: da94e551c0ed354ae782c89fd9495d607b77ad7572d90c41ceac12bd6ec4c31b
2025-02-12 14:51:02 +00:00
stephan
db253d0862 Rename a configure-internal function and fix handling of --dump-defines for the autoconf bundle.
FossilOrigin-Name: 6aa54cc180e034a10d8fc8f8b0c13d7bc0c94509b4240ac855121d501853768f
2025-02-11 17:20:12 +00:00
stephan
ba8e3ca139 Move the configure flags definition and handling into autosetup/sqlite-config.tcl to avoid duplication between auto.def and autoconf/auto.def while still giving us a way to filter the canonical-tree-only flags out of the autoconf build.
FossilOrigin-Name: 9978c87139b7b04208fd1f62121fc4e1e2080723fde69a2bbdca88769f4baf22
2025-02-11 17:10:10 +00:00
stephan
62e1d44846 Make the --out-implib support ([6092b0b86bf93a3d]) specifically opt-in because the feature check for it passes on some platforms where it is not recognized at link-time.
FossilOrigin-Name: 75535f2355b3b2e83dd57f4c30340af98c8dbcfe6ff1e9be17d23bd30d7d766c
2025-02-11 13:13:46 +00:00
stephan
df9b89932f Adapt [https://fossil-scm.org/home/info/3bff7b92d6d|Fossil SCM patch 3bff7b92d6d], applying -lrt for platforms which need it for one of {fdatasync, nanosleep}.
FossilOrigin-Name: 1768de6e9e2c6ff3a9ee29fa6f488fb3d23a3599195ac7d1b09e61c02b7d18b3
2025-02-11 13:00:40 +00:00
stephan
b2972b8c6f Minor autosetup doc tweaks.
FossilOrigin-Name: bb53beb267ee5f5836020a58f32f1bed8deb587890eef9a6e034dad53f8c3f42
2025-02-10 18:41:46 +00:00
stephan
3ea05b5b4f configure: when dlopen() is not found, only fail fatally if --enable-loadable-module is explicitly provided, else warn instead. Based on discussion around [forum:2efe9c33bd9021ca|forum post 2efe9c33bd9021ca]. Update proj-indented-notice to behave like its docs say it should when the -error flag is used.
FossilOrigin-Name: f28e52cbf9e80cb5a1cde7cba099e2c2b6787a77263796e4f9febf3f30bc99dc
2025-02-10 15:01:14 +00:00
stephan
63f4926524 configure: if the linker supports --out-implib, generate libsqlite3.X.a, where X is the platform's DLL file extension. Discussion in/around [forum:0c7fc097b2|forum post 0c7fc097b2].
FossilOrigin-Name: 6092b0b86bf93a3d58a83774b6d07ef9735e6c8a0f2ac2d0a6d263c2e9f1e3ca
2025-02-09 04:38:56 +00:00
stephan
3e06f2d79b configure: when transfering ENABLE/OMIT flags from CFLAGS to OPT_FEATURE_FLAGS, also do the same for CPPFLAGS and remove those ENABLE/OMIT flags from CFLAGS/CPPFLAGS to mimic legacy build behavior. Strip ENABLE/OMIT flags from BUILD_CFLAGS but do not transfer those to OPT_FEATURE_FLAGS, also to mimic legacy behavior. This is the second part of a fix discussed at [forum:9801e54665afd728|forum post 9801e54665afd728].
FossilOrigin-Name: 16d307cc6c1e203900e7a2dc0730fc0e453946622a2114a07d64ebb99045cfbf
2025-02-09 01:25:00 +00:00
stephan
189a4a0bbb Mac-specific build fixes discussed in [forum:9dfd5b8fd525a5d7|forum thread 9dfd5b8fd525a5d7]: rename dylib links and add legacy-compatibility versioning stamps to libsqlite3.dylib.
FossilOrigin-Name: 668bcf327a82a63d45be8cf38fdddc855dbcefdedf6c208e091eb7e2d244929d
2025-02-07 14:44:31 +00:00
stephan
7a7002143c configure: change extension of static libraries from .lib to .a on msys/cygwin, as per discussion in [forum:02db2d4240|forum post 02db2d4240]. Replace unidiomatic JS-style use of inner procs in autosetup/proj.tcl with TCL lambdas.
FossilOrigin-Name: 46f51e2a3707614a2b3ca6261bc6e0e8835477fdb7cbcf2f06b20cdebde2bab9
2025-02-07 12:58:09 +00:00
stephan
6c074e5dc4 Summarize known incompatibilities/gotches between JimTCL and canonical TCL, and their workarounds. Doc changes only.
FossilOrigin-Name: 60c932e67b886d4c050698f36e1d3fc04eb99473d62bb3b1585a97d90e27227e
2025-02-05 12:56:55 +00:00
stephan
97af1346f0 Upstream JimTCL patch and minor tcl script tweaks to support (fconfigure -translation binary) for better cross-platform build portability.
FossilOrigin-Name: 0974a17c4565f202777fc6203df20dca19acc1e8740ede15334783f41e3e5054
2025-02-05 12:49:15 +00:00
stephan
73dcf45a3d Minor code de-duplication across the top-level auto.def and autoconf/auto.def.
FossilOrigin-Name: 3c990d77cb83ab371d92c97e0528f790ab6126c60f48ff77e48bd166d7834cf0
2025-01-30 12:19:30 +00:00
stephan
00d6b7abfc Fix build regression, introduced in [d2fe6b05f38d9d] (3.48.0), in which SQLITE_OMIT and SQLITE_ENABLE flags passed to configure via CFLAGS were not propagated to the OPT_FEATURE_FLAGS list. Reported in [forum:9801e54665afd728|forum post 9801e54665afd728].
FossilOrigin-Name: ec71d9dcd582188d7fb4ab945187de1023eaaecffeeb2903a6fcc49650bd21e9
2025-01-30 11:19:16 +00:00
stephan
7ae051df2a Correct a version number in autosetup/README.md.
FossilOrigin-Name: c338caf0fd4adc7baacf20f6d4274b1776b9487a5a976b8d85e490791be82b11
2025-01-24 15:41:33 +00:00
stephan
7a16413a84 Update autosetup/README.md to reflect recent refactoring.
FossilOrigin-Name: 601636829b79888deda7d4dc5786f82b4f0b302d84663ee96b4d47fcb429abcf
2025-01-24 14:13:20 +00:00
stephan
72543206e5 Move small parts of ext/wasm/GNUmakefile into ext/wasm/config.make.in and have the configure script populate that, rather than dynamically determining those values on each 'make' invocation. Add a configure-time check for the optional wasm-opt binary in prep for pending experimentation with using it to reduce the wasm file sizes.
FossilOrigin-Name: 0a426a549577b883e2de7cd0605041cc97b57f53ee6657bc318b0bfde7b62677
2025-01-23 14:09:02 +00:00
stephan
985b4bc157 configure script: work around msys's inability to 'exec' a '.sh' file by prefixing the call with an explicit 'sh', as reported in [forum:befb352a42a7cd6d|forum post befb352a42a7cd6d].
FossilOrigin-Name: 25b01f1c9a5e606441bfd4e729fb88361436dffc76ef7a10c04a4d4ad0bcc655
2025-01-20 20:48:18 +00:00
stephan
ae24e13bc7 Add 'dist' and missing 'install' pieces to the autoconf bundle.
FossilOrigin-Name: 16fa20413e3f3f0b6ea5d97022945843d1f785ac0142836f2a3651fd1917385f
2025-01-20 19:57:32 +00:00
stephan
17dca772e0 Get the CLI shell building in the autoconf bundle.
FossilOrigin-Name: 241cdbc40a2f82df53c149849a103a335b0643a65e229a1e80ab90a0e457bb6b
2025-01-19 19:51:47 +00:00
stephan
2534bf4011 Initial work towards converting the autoconf bundle to autosetup. Currently non-functional.
FossilOrigin-Name: d7708372ff2fef4bfa61e56dbfbb363cac7685587a61a151497991d9a08bb07f
2025-01-19 18:58:09 +00:00
stephan
c6a39debf9 Further refactoring of auto.def to simplify creation of variant builds like the autoconf bundle.
FossilOrigin-Name: f806c563a29240c709508316846fbe0cb3ed61b68a6c1d9544eb699e30141d8d
2025-01-19 18:32:45 +00:00
stephan
815709dd00 Minor internal refactoring of auto.def to support the pending autoconf subdir port to autosetup. No functional changes.
FossilOrigin-Name: 01ff37584708f3f79c62c1b5ed8cceab721cf8348a69a65f0559b1ef8845e85b
2025-01-19 16:26:25 +00:00
stephan
6cd83aecb9 Move some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in the pending migration of the autoconf bundle to autosetup. This is just reorg, no functional changes.
FossilOrigin-Name: 2f1e94994f3595baad4045ab05ffee0668059c23ab37a39c25b83c62bfbaea28
2025-01-19 14:53:45 +00:00
stephan
25e042c0b0 Typo fixes and cleanups in autosetup/README.md.
FossilOrigin-Name: 7f366565f41fa4eb532cfaf83074106e235436bfc377116e3bf823ac08fd01a5
2024-11-28 20:46:51 +00:00
stephan
187c115a69 Configure script doc updates and cleanups. Skip check for EMSDK when doing an out-of-tree build, as ext/wasm does not support that build mode.
FossilOrigin-Name: 9d2f4148db1641e9bf2989c2b1adf5b9dcb2b123526ecacd063bca208b3c36cf
2024-11-28 16:14:19 +00:00
stephan
19a6315ccf Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. Update autosetup/README.md with details of the patch.
FossilOrigin-Name: 00dffd10f0c77fed53bdbf1536f6ef9b6076775f1b9a10794b87e3ace33ca1d9
2024-11-26 19:19:12 +00:00
stephan
58cb5644bc Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. --with-debug is now an alias for --enable-debug but can be removed entirely if all scripts which have been adjusted for the autosetup build are edited to (re)use the older flag name.
FossilOrigin-Name: 3296c8d30559eafa20f4748339177149172ecf79b019c42ed0d5ee9cf62a666a
2024-11-26 19:02:16 +00:00
stephan
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
stephan
d676227f2c configure: tiny simplification of proj-assert.
FossilOrigin-Name: bfdc416b561937aa74483bf96c042e701e6f98997150f1f1a6b165cddd40d8d1
2024-11-16 09:00:31 +00:00
stephan
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
stephan
d29a369fe2 Doc update to account for [05073350087b].
FossilOrigin-Name: b81976c520fbad0bbdbbb877fe85691bcda25c12cf5597cfe224fb6306cd65b3
2024-11-11 09:53:40 +00:00
stephan
45c2b1804f Rename proj-define-if-opt-truthy to the more accurate, and less verbose, proj-define-for-opt.
FossilOrigin-Name: 05073350087b368312515134bdf9a266eb8289a065f208421fe08aa38b562d4b
2024-11-11 09:37:19 +00:00
stephan
e9b04e524b Simplify usage of proj-assert by making the expr prefix implicit. Add an optional description arg to proj-assert, defaulting to the body of the assertion script.
FossilOrigin-Name: ada7b36c37c59ea02e54462b0eb8b93ff6ab45863edfd67b19f1e1a7bb2f97de
2024-11-09 10:23:04 +00:00
stephan
5c792a484d Remove three unused files from autosetup/.
FossilOrigin-Name: 906563a7e07fca81effb31a77ee5d7cdacd4cc6157e16e1139da70c92716869a
2024-11-09 09:19:29 +00:00
stephan
6f95d95015 Disable setting of the SONAME (enabled by [2a2419ef742]), as it's not clear whether blindly setting the SONAME, which now differs from its historical value, will cause more grief than it solves. Add a (disabled) experiment which permits setting (or not) the SONAME to the legacy or current values. This change is up for further change as experimentation proves whether we truly need/want the SONAME. See discussion in/around [forum:0c6fc6f46b2cb3|forum post 0c6fc6f46b2cb3].
FossilOrigin-Name: d931456805e7d5c3379ca68b97a0a1d4ab1eb80c5e90c169cf43fc8239247d25
2024-11-08 05:26:26 +00:00
stephan
ee9950d09b Extend the set of --flags which get cleared/unset when using --with-wasi-sdk.
FossilOrigin-Name: 2a2419ef742c9f37c32be04d417337c1fa22503305d2df154fa38b2b69eae943
2024-11-07 16:59:15 +00:00
stephan
6e6820148a Doc touchups in the line-editing feature check code.
FossilOrigin-Name: bb5656bdc905947df205432e108ca6724393061a27028e23bf35b4bf48505d4f
2024-11-07 15:23:54 +00:00