1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00
Commit Graph

266 Commits

Author SHA1 Message Date
ed36fb77e9 Move the configure output about the SQLite version and build dirs up, so that they appear before any tests for the C compiler and such.
FossilOrigin-Name: 83e0f3d138abf33751f735169aee752ba1677c5df37c3947f2c8be3ea3629822
2025-02-24 10:30:59 +00:00
3111c4687f Further consolidation of the main auto.def and the autoconf auto.def content into sqlite-config.tcl.
FossilOrigin-Name: 76a4efa9668791f23de8d4db1788708891f5efa01ba73bced6abfc54391c3b28
2025-02-24 08:42:40 +00:00
644b99641f Configure-internal doc tweaks. Fix the distclean rules for libsqlite3.dll.a on msys/cygwin/mingw, broken when the DLL basename was changed for those platforms.
FossilOrigin-Name: 8641e2c7c868be67ebb367fe7c8ceeee0e0d96574c164191ce9e340e7a527f49
2025-02-24 07:06:36 +00:00
a63dee09a6 Add some internal notes about potential changes for the rpath flag handling.
FossilOrigin-Name: 6f904f0695c7e3396522c061170d6201b256af0294afeefcf8b6672e3ba15987
2025-02-24 05:10:09 +00:00
09591b78ae Update jimsh0.c from upstream autosetup to address [https://github.com/msteveb/autosetup/issues/75|autosetup ticket #75], triggered by this build in the Gentoo project.
FossilOrigin-Name: ffd05de8a3b7cab1b8e91b99da74b43ec5a7b91c78dcfd7cf338b66126e30a56
2025-02-24 04:47:34 +00:00
8f2e95fa6c Add (disabled) infrastructure for disabling use of the rpath linker flag. This is a proactive precautionary measure because how the rpath is used does not match up with what the unix-on-windows environments do with their DLLs.
FossilOrigin-Name: 38ba8e837c2679f12a4019612f7188cb4afffd43cef7af4a4aa02e62c20885ac
2025-02-23 17:55:41 +00:00
7b90beebd5 Internal cleanups to how certain linker flags are tested.
FossilOrigin-Name: 6743e3e5b87f1d2308ec8cebef3c7ecccddafdace107630e0d8feee2b089d105
2025-02-23 17:24:55 +00:00
43aeed3fec Internal configure doc cleanups. Apply the [5ecbe7ddc4] unix-on-windows DLL install dir fix to the canonical build.
FossilOrigin-Name: 51b9812df9087ec0aa7656178a069ddf2d60dcffa5ab0de57a84bd412b2f71c7
2025-02-23 15:34:05 +00:00
fdb2bdc2a3 Update the help text to account for [35b1c32f80b9].
FossilOrigin-Name: f2e7355d87450f9a4d98390cf9d830e9902105048f9308e02c597190ecf2a594
2025-02-22 17:33:18 +00:00
cbdbf534a3 Replace --dll-basename=none with --dll-basename=default.
FossilOrigin-Name: 35b1c32f80b9aed04776508683a1828fd5777ee8bb0e42e593557ae3cca558e4
2025-02-22 17:30:08 +00:00
524b8a6df2 On unix-on-windows platforms, if either of --out-implib or --dll-basename are not provided, auto-enable them. Add the 'none' special value to those flags to specifically disable the environment-specific handling of those flags.
FossilOrigin-Name: 486400801a4540392c04d805a47df5249c4010b1a5fbac91900db6149374c274
2025-02-22 16:31:16 +00:00
df5d5faebe Random non-functional configure script cleanups.
FossilOrigin-Name: 2ee73109809e7d4a9d203cfa42f29c62837c06dc414f9dbf17ce00d9bbb5a883
2025-02-22 14:53:31 +00:00
a8d6fcf40d Configure docs/help text tweaks. No functional changes.
FossilOrigin-Name: 701cc1aff423b87996134801abbbcd06d529bbf522c725837844b6aea406fb1c
2025-02-21 23:27:03 +00:00
f8c2382d70 Only use the platform-specific --dll-basename if that option is explicitly provided, else use libsqlite3.
FossilOrigin-Name: 69bacfdce5d99ba532feb30d19ccea9ef49ed3bbf33e44d41bb8740811f5b0cf
2025-02-21 22:46:18 +00:00
4d58d3938a Add --dll-basename flag to give clients control over the DLL's base name. Split the DLL installation makefile rules into digestible, platform-specific chunks. On Windows-side Unix-like environments, install the DLL into the bin dir. Requires testing and feedback from those platforms' package maintainers to confirm it follows the expectated conventions.
FossilOrigin-Name: 8d5fed807b7151dcb79b97cfc2da0e8ac3586a0bf8b4c28967ad4cffafa53c08
2025-02-21 21:58:32 +00:00
72b119d5e4 Extend --out-implib to optionally specify the import lib's name. Add as-yet-unused internals for specifying the DLL's base name (which differs across the Windows-side Unix-esque environments).
FossilOrigin-Name: 12a55d343f9663acb68cd0f75fbb6c9ab67f4f88ad296e3e266f12d91522dd19
2025-02-21 20:28:44 +00:00
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
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
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
3cc3898e13 Internal reordering/re-grouping of some configure flags. No functional changes.
FossilOrigin-Name: 0c085a5ab51d6ac793a147a865bd086b1a6a572932c251b38d3854e4ea802f8d
2025-02-16 19:16:09 +00:00
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
4e87ddc105 A cleaner workaround for [6a21d6a2], provided by autosetup's creator.
FossilOrigin-Name: 334ed723d0fc0b202f79a9746459181f637ca99c54864a4aa11629eecb4b8d0c
2025-02-15 14:12:24 +00:00
6b5599726b More informative output for the pthread feature test.
FossilOrigin-Name: 01b9ed73ca6e72411dcf5a81f445c15c5bc42fa068fc7eca485ac72635b9d2fc
2025-02-14 18:17:31 +00:00
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
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
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
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
56ff8df023 Tiny tcl comment tweaks. No functional changes.
FossilOrigin-Name: da94e551c0ed354ae782c89fd9495d607b77ad7572d90c41ceac12bd6ec4c31b
2025-02-12 14:51:02 +00:00
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
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
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
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
b2972b8c6f Minor autosetup doc tweaks.
FossilOrigin-Name: bb53beb267ee5f5836020a58f32f1bed8deb587890eef9a6e034dad53f8c3f42
2025-02-10 18:41:46 +00:00
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
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
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
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
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
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
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
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
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
7ae051df2a Correct a version number in autosetup/README.md.
FossilOrigin-Name: c338caf0fd4adc7baacf20f6d4274b1776b9487a5a976b8d85e490791be82b11
2025-01-24 15:41:33 +00:00
7a16413a84 Update autosetup/README.md to reflect recent refactoring.
FossilOrigin-Name: 601636829b79888deda7d4dc5786f82b4f0b302d84663ee96b4d47fcb429abcf
2025-01-24 14:13:20 +00:00
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
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
ae24e13bc7 Add 'dist' and missing 'install' pieces to the autoconf bundle.
FossilOrigin-Name: 16fa20413e3f3f0b6ea5d97022945843d1f785ac0142836f2a3651fd1917385f
2025-01-20 19:57:32 +00:00
17dca772e0 Get the CLI shell building in the autoconf bundle.
FossilOrigin-Name: 241cdbc40a2f82df53c149849a103a335b0643a65e229a1e80ab90a0e457bb6b
2025-01-19 19:51:47 +00:00
2534bf4011 Initial work towards converting the autoconf bundle to autosetup. Currently non-functional.
FossilOrigin-Name: d7708372ff2fef4bfa61e56dbfbb363cac7685587a61a151497991d9a08bb07f
2025-01-19 18:58:09 +00:00
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