From ee398fb5539afa74875cb5fcf08428e18059a426 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Mon, 23 Jan 2023 20:06:01 +0300 Subject: Upgrade to 3.39.4 --- README-DEV | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) (limited to 'README-DEV') diff --git a/README-DEV b/README-DEV index 6194695..3d3db57 100644 --- a/README-DEV +++ b/README-DEV @@ -8,24 +8,21 @@ that we package separately (see the respective README-DEV files for details). We extract the upstream package from the archive and symlink the required files into the build2 package subdirectories. -For 3.35.5 the archive URL is -https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz. For the future +For 3.39.4 the archive URL is +https://www.sqlite.org/2022/sqlite-autoconf-3390400.tar.gz. For the future releases the URL can be deduced from the above. The upstream package can be configured to contain a specific feature set. We reproduce the union of features configured for the upstream source package in Debian and Fedora distributions. The configuration options defining these sets -are specified in the Debian's rules and Fedora's RPM .spec files. Note, -however, that at the time of this writing Debian doesn't provide the 3.35.5 -package version, so we will use 3.36.0 instead. That's probably ok since -3.36.0 doesn't introduce any new configuration options comparing to 3.35.5. -These files can be obtained as follows: +are specified in the Debian's rules and Fedora's RPM .spec files. These files +can be obtained as follows: -$ wget http://deb.debian.org/debian/pool/main/s/sqlite3/sqlite3_3.36.0-2.debian.tar.xz -$ tar xf sqlite3_3.36.0-2.debian.tar.xz debian/rules +$ wget wget https://deb.debian.org/debian/pool/main/s/sqlite3/sqlite3_3.39.4-1.debian.tar.xz +$ tar xf sqlite3_3.39.4-1.debian.tar.xz debian/rules -$ wget https://kojipkgs.fedoraproject.org/packages/sqlite/3.35.5/1.fc35/src/sqlite-3.35.5-1.fc35.src.rpm -$ rpm2cpio sqlite-3.35.5-1.fc35.src.rpm | cpio -civ '*.spec' +$ wget https://kojipkgs.fedoraproject.org/packages/sqlite/3.39.4/1.fc38/src/sqlite-3.39.4-1.fc38.src.rpm +$ rpm2cpio sqlite-3.39.4-1.fc38.src.rpm | cpio -civ '*.spec' Some of the features are enabled via the preprocessor macro definitions and others via the configure script options. Here are the discovered configuration @@ -42,6 +39,7 @@ Debian: -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_ENABLE_DBSTAT_VTAB + -DSQLITE_ALLOW_ROWID_IN_VIEW -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 -DSQLITE_ENABLE_LOAD_EXTENSION -DSQLITE_ENABLE_JSON1 @@ -57,24 +55,23 @@ Debian: --enable-threadsafe --enable-load-extension - --enable-json1 + --enable-json --enable-fts4 --enable-fts5 + --disable-amalgamation Fedora: -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_DISABLE_DIRSYNC=1 - -DSQLITE_ENABLE_FTS3=1 - -DSQLITE_ENABLE_RTREE=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 - -DSQLITE_ENABLE_JSON1=1 - -DSQLITE_ENABLE_FTS4=1 - -DSQLITE_ENABLE_MATH_FUNCTIONS + -DSQLITE_ENABLE_DBPAGE_VTAB + --enable-rtree + --enable-fts3 --enable-fts4 --enable-fts5 --enable-threadsafe @@ -89,6 +86,7 @@ Translating the configure script options into the macro definitions and adding the unconditionally defined macros (see upstream's Makefile.am and configure.ac for details) we end up with: + -DSQLITE_ALLOW_ROWID_IN_VIEW=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_DBPAGE_VTAB=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1 @@ -98,16 +96,17 @@ configure.ac for details) we end up with: -DSQLITE_ENABLE_FTS3_TOKENIZER=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_FTS5=1 + -DSQLITE_ENABLE_GEOPOLY=1 -DSQLITE_ENABLE_JSON1=1 -DSQLITE_ENABLE_LOAD_EXTENSION=1 -DSQLITE_ENABLE_MATH_FUNCTIONS=1 -DSQLITE_ENABLE_PREUPDATE_HOOK=1 -DSQLITE_ENABLE_RTREE=1 - -DSQLITE_ENABLE_GEOPOLY=1 -DSQLITE_ENABLE_SESSION=1 -DSQLITE_ENABLE_STMTVTAB=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 + -DSQLITE_HAVE_ZLIB -DSQLITE_LIKE_DOESNT_MATCH_BLOBS=1 -DSQLITE_MAX_SCHEMA_RETRY=25 -DSQLITE_MAX_VARIABLE_NUMBER=250000 @@ -117,6 +116,9 @@ configure.ac for details) we end up with: -DSQLITE_THREADSAFE=1 -DSQLITE_USE_URI=1 +Note, however, that -DSQLITE_HAVE_ZLIB is only meaningful for sqlite3 program +(see sqlite3/buildfile for details). + As a side note, on Debian and Fedora the library, headers and program are packaged as follows: -- cgit v1.1