summaryrefslogtreecommitdiffstats
path: root/source-builder
diff options
context:
space:
mode:
authorJonathan Brandmeyer <jbrandmeyer@planetiq.com>2020-04-02 16:35:15 -0600
committerJoel Sherrill <joel@rtems.org>2020-04-02 19:08:16 -0500
commit113c65cb56d04c59a0e145f85864fb431419dfa9 (patch)
tree9a97434f373b3fef875252defaea4a6c7576d73f /source-builder
parentsb/reports.py: Remove spurious error check (diff)
downloadrtems-source-builder-113c65cb56d04c59a0e145f85864fb431419dfa9.tar.bz2
databases/sqlite: Update to 3.31.1
closes #3927.
Diffstat (limited to 'source-builder')
-rw-r--r--source-builder/config/sqlite-3-1.cfg44
1 files changed, 25 insertions, 19 deletions
diff --git a/source-builder/config/sqlite-3-1.cfg b/source-builder/config/sqlite-3-1.cfg
index 07699fd..d7ba101 100644
--- a/source-builder/config/sqlite-3-1.cfg
+++ b/source-builder/config/sqlite-3-1.cfg
@@ -11,15 +11,15 @@
Name: sqlite-%{sqlite_version}-%{_host}-%{release}
Summary: SQLite is an in-process library that implements a
self-contained, serverless, zero-configuration,
- transactional SQL database engine.
+ transactional SQL database engine.
Version: %{sqlite_version}
Release: %{release}
-URL: http://www.sqlite.org/
+URL: http://www.sqlite.org/
#
# Sqlite Source
#
-%source set sqlite http://www.sqlite.org/%{sqlite_src_year}/sqlite-src-%{sqlite_src_version}.zip
+%source set sqlite http://www.sqlite.org/%{sqlite_src_year}/sqlite-autoconf-%{sqlite_src_version}.tar.gz
#
# Prepare the source code.
@@ -27,8 +27,8 @@ URL: http://www.sqlite.org/
%prep
build_top=$(pwd)
- source_dir_sqlite="sqlite-src-%{sqlite_src_version}"
- %source setup sqlite -q -n sqlite-src-%{sqlite_src_version}
+ source_dir_sqlite="sqlite-autoconf-%{sqlite_src_version}"
+ %source setup sqlite -q -n sqlite-autoconf-%{sqlite_src_version}
%patch setup sqlite -p1
cd ${build_top}
@@ -43,7 +43,21 @@ URL: http://www.sqlite.org/
%{host_build_flags}
- CFLAGS="${CFLAGS} -DSQLITE_OMIT_WAL=1 -DSQLITE_ENABLE_COLUMN_METADATA=1"
+ # RTEMS-specific SQLite configuration options.
+ # See also
+ # - https://sqlite.org/wal.html#noshm
+ # - https://sqlite.org/malloc.html
+ #
+ # Many other compile-time options may be passed in via CFLAGS.
+ # See also https://sqlite.org/compile.html
+ #
+ # RTEMS filesystems do not support POSIX advisory file locks. Applications
+ # must choose an appropriate SQLite VFS which avoids them, such as unix-none
+ # (no locking at all: Application logic must avoid collisions) or
+ # unix-dotfile. This step must be performed at application startup time.
+ # See also https://sqlite.org/c3ref/vfs_find.html
+ #
+ CFLAGS="${CFLAGS} -DSQLITE_MAX_MMAP_SIZE=0 -DSQLITE_DEFAULT_LOCKING_MODE=1 -DSQLITE_ENABLE_MEMSYS5"
../${source_dir_sqlite}/configure \
--host=%{_host} \
@@ -57,17 +71,10 @@ URL: http://www.sqlite.org/
--infodir=%{_infodir} \
--datadir=%{_datadir} \
--disable-largefile \
- --disable-tcl \
- --disable-readline \
- --disable-amalgamation
+ --disable-readline
%{__make} %{?_smp_mflags} sqlite3.h libsqlite3.la
- #
- # Create the sqlite shell executable so the install works.
- #
- touch sqlite3
-
cd ${build_top}
%install
@@ -76,10 +83,9 @@ URL: http://www.sqlite.org/
%{__rmdir} $SB_BUILD_ROOT
cd ${build_dir}
- %{__make} DESTDIR=$SB_BUILD_ROOT install
+ # Warning: The unusual install targets avoid attempting to compile and link
+ # the SQLite3 command-line shell. The SQLite3 shell is not supported by
+ # RTEMS.
+ %{__make} DESTDIR=$SB_BUILD_ROOT install-data install-libLTLIBRARIES
cd ${build_top}
- #
- # Remove the sqlite shell as it is just a touch.
- #
- %{__rm} $SB_BUILD_ROOT%{_bindir}/sqlite3