summaryrefslogtreecommitdiffstats
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
parentsb/reports.py: Remove spurious error check (diff)
downloadrtems-source-builder-113c65cb56d04c59a0e145f85864fb431419dfa9.tar.bz2
databases/sqlite: Update to 3.31.1
closes #3927.
-rw-r--r--rtems/config/databases/sqlite-3.31.1-1.cfg23
-rw-r--r--rtems/config/databases/sqlite-3.8.8.1-1.cfg27
-rw-r--r--rtems/config/databases/sqlite.bset2
-rw-r--r--source-builder/config/sqlite-3-1.cfg44
4 files changed, 49 insertions, 47 deletions
diff --git a/rtems/config/databases/sqlite-3.31.1-1.cfg b/rtems/config/databases/sqlite-3.31.1-1.cfg
new file mode 100644
index 0000000..cd2b5ef
--- /dev/null
+++ b/rtems/config/databases/sqlite-3.31.1-1.cfg
@@ -0,0 +1,23 @@
+#
+# Sqlite 3.31.1
+#
+
+%if %{release} == %{nil}
+ %define release 1
+%endif
+
+%include %{_configdir}/rtems-bsp.cfg
+
+#
+# Sqlite Version.
+#
+%define sqlite_version 3.31.1
+%define sqlite_src_version 3310100
+%define sqlite_src_year 2020
+
+%hash sha512 sqlite-autoconf-%{sqlite_src_version}.tar.gz d85250ba5f78f0c918880f663741709aba662192f04888b2324a0df17affdf5b8540e8428c6c7315119806e7adad758ea281c9b403c0ad94ac6a9bd1b93fd617
+
+#
+# Sqlite configuration
+#
+%include %{_configdir}/sqlite-3-1.cfg
diff --git a/rtems/config/databases/sqlite-3.8.8.1-1.cfg b/rtems/config/databases/sqlite-3.8.8.1-1.cfg
deleted file mode 100644
index aac06be..0000000
--- a/rtems/config/databases/sqlite-3.8.8.1-1.cfg
+++ /dev/null
@@ -1,27 +0,0 @@
-#
-# Sqlite 3.8.8.1
-#
-
-%if %{release} == %{nil}
- %define release 1
-%endif
-
-%include %{_configdir}/rtems-bsp.cfg
-
-#
-# Sqlite Version.
-#
-# Sqlite uses a different version number label in source to the
-# actual version number. I suppose this is related to Windows.
-#
-#
-%define sqlite_version 3.8.8.1
-%define sqlite_src_version 3080801
-%define sqlite_src_year 2015
-
-%hash sha512 sqlite-src-%{sqlite_src_version}.zip 4f09228cb0c9c608e492da6e480afe3d27a63e27ccdcf33a88d5e56427f0846efab8930c81026b8e608f1bbb8d63e8d937dd26571deb828617f7efa27a765950
-
-#
-# Sqlite configuration
-#
-%include %{_configdir}/sqlite-3-1.cfg
diff --git a/rtems/config/databases/sqlite.bset b/rtems/config/databases/sqlite.bset
index f7c97b6..9f84f5d 100644
--- a/rtems/config/databases/sqlite.bset
+++ b/rtems/config/databases/sqlite.bset
@@ -12,4 +12,4 @@
#
# Build Sqlite
#
-databases/sqlite-3.8.8.1-1
+databases/sqlite-3.31.1-1
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