From c71357819cb5961104e440b45d71f1311460d875 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Thu, 8 Oct 2026 21:00:29 +0200 Subject: [PATCH] sqlite: Update version from 3.38.5 to 3.53.4 SHA3-256 checksum matches the one listed on https://sqlite.org/download.html: 454e45f61c6bd75b7420e7190732dea03ce6639c63ada47bbc592f67fc340338 Since 3.48.0, the autoconf tarball ships an autosetup configure script, so bee does not detect the build type anymore, and the options change: - `--enable-dynamic-extensions` is gone: Error: Unknown option --dynamic-extensions Use its successor `--enable-load-extension`. Keep `--enable-threadsafe` and `--enable-readline` explicit, although they are the defaults: an explicit `--enable-readline` makes configure fail, if readline is not found, instead of silently building the shell without line editing. - Without `--soname`, the library gets *no* SONAME at all. Pass `--soname=legacy` to keep `libsqlite3.so.0`, which all consumers link against. - The new build adds `RPATH /usr/lib`, which 3.38.5 did not have: 0x000000000000000f (RPATH) Library rpath: [/usr/lib] Pass `--disable-rpath` to drop it. - Use `--fts3`, `--fts4`, `--fts5`, `--rtree`, `--geopoly`, and `--dbstat` instead of the defines, so that `PRAGMA compile_options` of the library lists everything 3.38.5 did. The new build only adds upstream defaults: > DIRECT_OVERFLOW_READ > ENABLE_PERCENTILE < MAX_FUNCTION_ARG=127 > MAX_FUNCTION_ARG=1000 < MAX_PAGE_COUNT=1073741823 > MAX_PAGE_COUNT=0xfffffffe The library file is now `libsqlite3.so.3.53.4`, with `libsqlite3.so.0` and `libsqlite3.so` pointing to it. Tested with beesh on hotelcalifornia: FTS3/FTS5, R*Tree, JSON and dbstat work, and the Python 3 `sqlite3` module built against 3.38.5 loads the new library. Assisted-by: claude-opus-5.5 (Claude Code) --- sqlite.be0 | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/sqlite.be0 b/sqlite.be0 index 57758d3fd..211ffedcc 100755 --- a/sqlite.be0 +++ b/sqlite.be0 @@ -1,20 +1,30 @@ #!/bin/env beesh -# BEE_VERSION sqlite-3.38.05.00-0 +# BEE_VERSION sqlite-3.53.04.00-0 -# SRCURL[0]="https://sqlite.org/2022/sqlite-autoconf-${PKGVERSION//./}.tar.gz" -# https://sqlite.org/2022/sqlite-autoconf-3380500.tar.gz -SRCURL[0]="https://beehive.molgen.mpg.de/d7d14ef5e1cf2ce974bdd62a9cee347f/sqlite-autoconf-3380500.tar.gz" +# SRCURL[0]="https://sqlite.org/2026/sqlite-autoconf-${PKGVERSION//./}.tar.gz" +# https://sqlite.org/2026/sqlite-autoconf-3530400.tar.gz +SRCURL[0]="https://beehive.molgen.mpg.de/ee54db5a5b04e77d4883ce0c051a1eba/sqlite-autoconf-3530400.tar.gz" + +# Since 3.48.0, configure is generated by autosetup instead of GNU autoconf. +BEE_BUILDTYPE=autotools mee_configure() { bee_configure \ --disable-static \ --enable-threadsafe \ --enable-readline \ - --enable-dynamic-extensions \ - CFLAGS="-g -O2 -DSQLITE_ENABLE_FTS3=1 \ + --enable-load-extension \ + --soname=legacy \ + --disable-rpath \ + --fts3 \ + --fts4 \ + --fts5 \ + --rtree \ + --geopoly \ + --dbstat \ + CFLAGS="-g -O2 \ -DSQLITE_ENABLE_COLUMN_METADATA=1 \ -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 \ - -DSQLITE_SECURE_DELETE=1 \ - -DSQLITE_ENABLE_DBSTAT_VTAB=1" + -DSQLITE_SECURE_DELETE=1" }