diff options
Diffstat (limited to 'README-DEV')
-rw-r--r-- | README-DEV | 42 |
1 files changed, 25 insertions, 17 deletions
@@ -8,23 +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.27.2 the archive URL is -https://www.sqlite.org/2019/sqlite-autoconf-3270200.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 Fedora doesn't provide the 3.27.2 -package version, so we will use 3.29.0 instead. 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.27.2-3.debian.tar.xz -$ tar xf sqlite3_3.27.2-3.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.29.0/2.fc31/src/sqlite-3.29.0-2.fc31.src.rpm -$ rpm2cpio sqlite-3.29.0-2.fc31.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 @@ -41,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 @@ -56,22 +55,24 @@ 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_DBPAGE_VTAB + --enable-rtree + --enable-fts3 + --enable-fts4 --enable-fts5 --enable-threadsafe --enable-threads-override-locks @@ -82,9 +83,10 @@ automatically enables functionality that uses zlib, which is the case for both distributions. Translating the configure script options into the macro definitions and adding -the unconditionally defined macros (see upstream's Makefile.am for details) we -end up with: +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 @@ -94,14 +96,17 @@ 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_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 @@ -111,6 +116,9 @@ 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: @@ -119,4 +127,4 @@ Debian/Ubuntu: libsqlite3-0 libsqlite3-dev sqlite3 Fedora/RHEL: sqlite-libs sqlite-devel sqlite Search for the Debian and Fedora packages at https://packages.debian.org/search -and https://apps.fedoraproject.org/packages/. +and https://src.fedoraproject.org/. |