<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch release-2.7
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/186990ae54e455a05ba7913e80614b3e2989aa76">https://github.com/macports/macports-base/commit/186990ae54e455a05ba7913e80614b3e2989aa76</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/release-2.7 by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 186990ae Check SQLite runtime version
</span>186990ae is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 186990ae54e455a05ba7913e80614b3e2989aa76
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Fri May 21 22:16:15 2021 +1000
<span style='display:block; white-space:pre;color:#404040;'> Check SQLite runtime version
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Check sqlite3_libversion_number() directly at runtime where it's not
</span><span style='display:block; white-space:pre;color:#404040;'> too unwieldy to do so. In the other cases, still check at build time,
</span><span style='display:block; white-space:pre;color:#404040;'> but using a new macro MP_SQLITE_VERSION, which is the lesser of
</span><span style='display:block; white-space:pre;color:#404040;'> the SQLITE_VERSION_NUMBER and sqlite3_libversion_number() values found
</span><span style='display:block; white-space:pre;color:#404040;'> at configure time. It's not binary portability, but it should be enough
</span><span style='display:block; white-space:pre;color:#404040;'> for the case where selfupdate has to build against an SDK that doesn't
</span><span style='display:block; white-space:pre;color:#404040;'> match the OS version it's building on.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/62929
</span><span style='display:block; white-space:pre;color:#404040;'> (cherry picked from commit 0249b3cf7e2fcb721e5ecae38e632a23007e647d)
</span>---
aclocal.m4 | 72 ++++++++++++++++------------
configure | 119 ++++++++++++++++++++++++++++++++++++-----------
configure.ac | 5 +-
src/config.h.in | 3 ++
src/cregistry/entry.c | 20 ++++----
src/cregistry/file.c | 6 +--
src/cregistry/registry.c | 22 +++++----
src/cregistry/sql.c | 14 +++---
8 files changed, 174 insertions(+), 87 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/aclocal.m4 b/aclocal.m4
</span><span style='display:block; white-space:pre;color:#808080;'>index d9562911..d6125c1e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1166,10 +1166,10 @@ AC_DEFUN([MP_WERROR],[
</span> #------------------------------------------------------------------------
# MP_CHECK_SQLITE_VERSION --
#
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Check for a specific SQLite version and execute commands depending on availability
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Check the version of SQLite that was found
</span> #
# Arguments:
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Required SQLite version for the test to succeed in the form of SQLITE_VERSION_NUMBER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# None.
</span> #
# Requires:
# MP_SQLITE3_FLAGS
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1180,58 +1180,72 @@ AC_DEFUN([MP_WERROR],[
</span> # Results:
# Result is cached.
#
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# sets mp_sqlite_version_ge_$1 to yes or no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Sets mp_sqlite_version to the older of the SQLite versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# found in the header and at runtime, in the same numeric format
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# as SQLITE_VERSION_NUMBER.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# (Runtime check is skipped if cross-compiling and the result is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# then always the header version.)
</span> #
#------------------------------------------------------------------------
AC_DEFUN(MP_CHECK_SQLITE_VERSION, [
AC_REQUIRE([MP_SQLITE3_FLAGS])
<span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_MSG_CHECKING([for SQLite >= $1])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_MSG_CHECKING([for SQLite version in header])
</span>
mp_check_sqlite_version_cppflags_save=$CPPFLAGS
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_check_sqlite_version_ldflags_save=$LDFLAGS
</span> CPPFLAGS="$CPPFLAGS $CFLAGS_SQLITE3"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS="$LDFLAGS $LDFLAGS_SQLITE3"
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_CACHE_VAL(mp_cv_sqlite_version_defined, [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CACHE_VAL([mp_cv_sqlite_version], [
</span> AC_PREPROC_IFELSE(
[AC_LANG_SOURCE(
[[
#include <sqlite3.h>
#ifndef SQLITE_VERSION_NUMBER
# error "SQLITE_VERSION_NUMBER undefined"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int mp_sqlite_version = SQLITE_VERSION_NUMBER;
</span> #endif
]]
)],
<span style='display:block; white-space:pre;background:#ffe0e0;'>- [mp_cv_sqlite_version_defined="yes"],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [mp_cv_sqlite_version=`grep '^[[[:space:]]]*int mp_sqlite_version = [[0-9]]*;$' conftest.i | sed -E 's/[[^0-9]]*([[0-9]]+);/\1/'`],
</span> [AC_MSG_ERROR("SQLITE_VERSION_NUMBER undefined or sqlite3.h not found")]
)
])
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if test x"${mp_cv_sqlite_version_defined}" = "xno"; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_MSG_RESULT([SQLite version not found])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_sqlite_version_ge_$1="no"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_CACHE_VAL(mp_cv_sqlite_version_ge_$1, [
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_PREPROC_IFELSE(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- [AC_LANG_SOURCE(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- [[
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <sqlite3.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #if (SQLITE_VERSION_NUMBER >= $1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Everything is fine */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # error "SQLite version too old"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ]]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- )],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- [mp_cv_sqlite_version_ge_$1="yes"],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- [mp_cv_sqlite_version_ge_$1="no"]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_MSG_RESULT(${mp_cv_sqlite_version})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_sqlite_version=${mp_cv_sqlite_version}
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- AC_MSG_RESULT(${mp_cv_sqlite_version_ge_$1})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_sqlite_version_ge_$1=${mp_cv_sqlite_version_ge_$1}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_MSG_CHECKING([for SQLite version at runtime])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CACHE_VAL([mp_cv_sqlite_run_version], [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_RUN_IFELSE(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [AC_LANG_SOURCE(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [[
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sqlite3.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main(int argc, char* argv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int vers = sqlite3_libversion_number();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (argc > 1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf("%d\n", vers);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [mp_cv_sqlite_run_version=`./conftest$EXEEXT noisy`],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [AC_MSG_ERROR("Failed to run sqlite3_libversion_number test program")],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [mp_cv_sqlite_run_version=$mp_cv_sqlite_version]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_MSG_RESULT(${mp_cv_sqlite_run_version})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$mp_cv_sqlite_run_version" -lt "$mp_cv_sqlite_version"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_sqlite_version=$mp_cv_sqlite_run_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span>
CPPFLAGS=$mp_check_sqlite_version_cppflags_save
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS=$mp_check_sqlite_version_ldflags_save
</span> ])
#------------------------------------------------------------------------
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/configure b/configure
</span><span style='display:block; white-space:pre;color:#808080;'>index d4ae477a..27a9dae3 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/configure
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/configure
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1915,6 +1915,49 @@ fi
</span> as_fn_set_status $ac_retval
} # ac_fn_c_try_cpp
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# ac_fn_c_try_run LINENO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# ----------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# executables *can* be run.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ac_fn_c_try_run ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { { ac_try="$ac_link"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+case "(($ac_try" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *) ac_try_echo=$ac_try;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf "%s\n" "$ac_try_echo"; } >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (eval "$ac_link") 2>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_status=$?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { { case "(($ac_try" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *) ac_try_echo=$ac_try;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf "%s\n" "$ac_try_echo"; } >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (eval "$ac_try") 2>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_status=$?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ test $ac_status = 0; }; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_retval=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+else $as_nop
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf "%s\n" "$as_me: program exited with status $ac_status" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf "%s\n" "$as_me: failed program was:" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+sed 's/^/| /' conftest.$ac_ext >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_retval=$ac_status
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ as_fn_set_status $ac_retval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} # ac_fn_c_try_run
</span> ac_configure_args_raw=
for ac_arg
do
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8168,13 +8211,15 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SQLite >= 3003011" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-printf %s "checking for SQLite >= 3003011... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SQLite version in header" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf %s "checking for SQLite version in header... " >&6; }
</span>
mp_check_sqlite_version_cppflags_save=$CPPFLAGS
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_check_sqlite_version_ldflags_save=$LDFLAGS
</span> CPPFLAGS="$CPPFLAGS $CFLAGS_SQLITE3"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS="$LDFLAGS $LDFLAGS_SQLITE3"
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if test ${mp_cv_sqlite_version_defined+y}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test ${mp_cv_sqlite_version+y}
</span> then :
printf %s "(cached) " >&6
else $as_nop
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8185,13 +8230,15 @@ else $as_nop
</span> #include <sqlite3.h>
#ifndef SQLITE_VERSION_NUMBER
# error "SQLITE_VERSION_NUMBER undefined"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int mp_sqlite_version = SQLITE_VERSION_NUMBER;
</span> #endif
_ACEOF
if ac_fn_c_try_cpp "$LINENO"
then :
<span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_cv_sqlite_version_defined="yes"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_cv_sqlite_version=`grep '^[[:space:]]*int mp_sqlite_version = [0-9]*;$' conftest.i | sed -E 's/[^0-9]*([0-9]+);/\1/'`
</span> else $as_nop
as_fn_error $? "\"SQLITE_VERSION_NUMBER undefined or sqlite3.h not found\"" "$LINENO" 5
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8201,48 +8248,64 @@ rm -f conftest.err conftest.i conftest.$ac_ext
</span> fi
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if test x"${mp_cv_sqlite_version_defined}" = "xno"; then
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: SQLite version not found" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-printf "%s\n" "SQLite version not found" >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_sqlite_version_ge_3003011="no"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if test ${mp_cv_sqlite_version_ge_3003011+y}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${mp_cv_sqlite_version}" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf "%s\n" "${mp_cv_sqlite_version}" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_sqlite_version=${mp_cv_sqlite_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SQLite version at runtime" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf %s "checking for SQLite version at runtime... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test ${mp_cv_sqlite_run_version+y}
</span> then :
printf %s "(cached) " >&6
else $as_nop
<span style='display:block; white-space:pre;background:#ffe0e0;'>- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$cross_compiling" = yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_cv_sqlite_run_version=$mp_cv_sqlite_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+else $as_nop
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span> /* end confdefs.h. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <sqlite3.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #if (SQLITE_VERSION_NUMBER >= 3003011)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Everything is fine */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # error "SQLite version too old"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sqlite3.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main(int argc, char* argv[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int vers = sqlite3_libversion_number();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (argc > 1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf("%d\n", vers);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
_ACEOF
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if ac_fn_c_try_cpp "$LINENO"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if ac_fn_c_try_run "$LINENO"
</span> then :
<span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_cv_sqlite_version_ge_3003011="yes"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_cv_sqlite_run_version=`./conftest$EXEEXT noisy`
</span> else $as_nop
<span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_cv_sqlite_version_ge_3003011="no"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ as_fn_error $? "\"Failed to run sqlite3_libversion_number test program\"" "$LINENO" 5
</span> fi
<span style='display:block; white-space:pre;background:#ffe0e0;'>-rm -f conftest.err conftest.i conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conftest.$ac_objext conftest.beam conftest.$ac_ext
</span> fi
<span style='display:block; white-space:pre;background:#ffe0e0;'>- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${mp_cv_sqlite_version_ge_3003011}" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-printf "%s\n" "${mp_cv_sqlite_version_ge_3003011}" >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- mp_sqlite_version_ge_3003011=${mp_cv_sqlite_version_ge_3003011}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${mp_cv_sqlite_run_version}" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf "%s\n" "${mp_cv_sqlite_run_version}" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$mp_cv_sqlite_run_version" -lt "$mp_cv_sqlite_version"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mp_sqlite_version=$mp_cv_sqlite_run_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span>
CPPFLAGS=$mp_check_sqlite_version_cppflags_save
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS=$mp_check_sqlite_version_ldflags_save
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+printf "%s\n" "#define MP_SQLITE_VERSION $mp_sqlite_version" >>confdefs.h
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if test "x${mp_sqlite_version_ge_3003011}" = "xno"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if test "$mp_sqlite_version" -lt 3003011; then
</span>
printf "%s\n" "#define sqlite3_prepare_v2 sqlite3_prepare" >>confdefs.h
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/configure.ac b/configure.ac
</span><span style='display:block; white-space:pre;color:#808080;'>index f1cbc0e8..d06d62b7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/configure.ac
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/configure.ac
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -288,8 +288,9 @@ MP_LIBCURL_FLAGS
</span> ## sqlite3
MP_SQLITE3_FLAGS
<span style='display:block; white-space:pre;background:#ffe0e0;'>-MP_CHECK_SQLITE_VERSION(3003011)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if test "x${mp_sqlite_version_ge_3003011}" = "xno"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+MP_CHECK_SQLITE_VERSION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+AC_DEFINE_UNQUOTED([MP_SQLITE_VERSION], [$mp_sqlite_version], [SQLite version found])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if test "$mp_sqlite_version" -lt 3003011; then
</span> AC_DEFINE([sqlite3_prepare_v2], [sqlite3_prepare], [define sqlite3_prepare to sqlite_prepare_v2 if the latter is not available])
fi
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/config.h.in b/src/config.h.in
</span><span style='display:block; white-space:pre;color:#808080;'>index f15e8a18..2c5af860 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/config.h.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/config.h.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -237,6 +237,9 @@
</span> /* Lowest non-system-reserved UID. */
#undef MIN_USABLE_UID
<span style='display:block; white-space:pre;background:#e0ffe0;'>+/* SQLite version found */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#undef MP_SQLITE_VERSION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> /* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/cregistry/entry.c b/src/cregistry/entry.c
</span><span style='display:block; white-space:pre;color:#808080;'>index f1bf289a..7a776f4d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/cregistry/entry.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/cregistry/entry.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -187,13 +187,13 @@ reg_entry* reg_entry_open(reg_registry* reg, char* name, char* version,
</span> char* query;
if (strlen(epoch) > 0) {
query = "SELECT id FROM registry.ports "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> "INDEXED BY port_name "
#endif
"WHERE name=? AND version=? AND revision=? AND variants=? AND epoch=?";
} else {
query = "SELECT id FROM registry.ports "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> "INDEXED BY port_name "
#endif
"WHERE name=? AND version=? AND revision=? AND variants=? AND epoch!=?";
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -512,7 +512,7 @@ int reg_entry_installed(reg_registry* reg, char* name, reg_entry*** entries,
</span> format = "%s WHERE state='installed'";
} else {
format = "%s "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> "INDEXED BY port_name "
#endif
"WHERE state='installed' AND name='%q'";
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -543,8 +543,8 @@ int reg_entry_owner(reg_registry* reg, char* path, int cs, reg_entry** entry,
</span> char *query = NULL;
asprintf(&query, "SELECT id FROM registry.files %s WHERE (actual_path = ? %s) AND active",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3003013
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3003013
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> cs ? "INDEXED BY file_actual" : "INDEXED BY file_actual_nocase",
#else
"",
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -610,8 +610,8 @@ sqlite_int64 reg_entry_owner_id(reg_registry* reg, char* path, int cs) {
</span> char *query = NULL;
asprintf(&query, "SELECT id FROM registry.files %s WHERE (actual_path = ? %s) AND active",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3003013
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3003013
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> cs ? "INDEXED BY file_actual" : "INDEXED BY file_actual_nocase",
#else
"",
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -888,7 +888,7 @@ int reg_entry_unmap(reg_entry* entry, char** files, int file_count,
</span> int result = 1;
sqlite3_stmt* stmt = NULL;
char* query = "DELETE FROM registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> "INDEXED BY file_path "
#endif
"WHERE path=? AND id=?";
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1093,7 +1093,7 @@ int reg_entry_activate(reg_entry* entry, char** files, char** as_files,
</span> char* select_query = "SELECT id FROM registry.files WHERE actual_path=? "
"AND active";
char* update_query = "UPDATE registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> /* if the version of SQLite supports it force the usage of the index on
* path, rather than the one on id which has a lot less discriminative
* power and leads to very slow queries. This is needed for the new
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1202,7 +1202,7 @@ int reg_entry_deactivate(reg_entry* entry, char** files, int file_count,
</span> int i;
sqlite3_stmt* stmt = NULL;
char* query = "UPDATE registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> /* if the version of SQLite supports it force the usage of the index on
* path, rather than the one on id which has a lot less discriminative
* power and leads to very slow queries. This is needed for the new
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/cregistry/file.c b/src/cregistry/file.c
</span><span style='display:block; white-space:pre;color:#808080;'>index b33a7803..20fa77a9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/cregistry/file.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/cregistry/file.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -105,7 +105,7 @@ reg_file* reg_file_open(reg_registry* reg, char* id, char* name,
</span> sqlite3_stmt* stmt = NULL;
reg_file* file = NULL;
char* query = "SELECT id, path FROM registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> /* if the version of SQLite supports it force the usage of the index on
* path, rather than the one on id which has a lot less discriminative
* power and leads to very slow queries. This is needed for the new
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -245,7 +245,7 @@ int reg_file_propget(reg_file* file, char* key, char** value,
</span> const char *text;
query = sqlite3_mprintf(
"SELECT %q FROM registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> /* if the version of SQLite supports it force the usage of the index
* on path, rather than the one on id which has a lot less
* discriminative power and leads to very slow queries. This is
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -309,7 +309,7 @@ int reg_file_propset(reg_file* file, char* key, char* value,
</span> char* query;
query = sqlite3_mprintf(
"UPDATE registry.files "
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3006004
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3006004
</span> /* if the version of SQLite supports it force the usage of the index
* on path, rather than the one on id which has a lot less
* discriminative power and leads to very slow queries. This is
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/cregistry/registry.c b/src/cregistry/registry.c
</span><span style='display:block; white-space:pre;color:#808080;'>index 5b4c5eff..d73df603 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/cregistry/registry.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/cregistry/registry.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -130,7 +130,9 @@ int reg_open(reg_registry** regPtr, reg_error* errPtr) {
</span> /* Enable extended result codes, requires SQLite >= 3.3.8
* Check added for compatibility with Tiger. */
#if SQLITE_VERSION_NUMBER >= 3003008
<span style='display:block; white-space:pre;background:#ffe0e0;'>- sqlite3_extended_result_codes(reg->db, 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (sqlite3_libversion_number() >= 3003008) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sqlite3_extended_result_codes(reg->db, 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> #endif
sqlite3_busy_timeout(reg->db, 25);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -180,8 +182,10 @@ int reg_configure(reg_registry* reg) {
</span> int result = 0;
#if SQLITE_VERSION_NUMBER >= 3022000
/* Ensure WAL files persist. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>- int persist = 1;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sqlite3_file_control(reg->db, "registry", SQLITE_FCNTL_PERSIST_WAL, &persist);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (sqlite3_libversion_number() >= 3022000) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int persist = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sqlite3_file_control(reg->db, "registry", SQLITE_FCNTL_PERSIST_WAL, &persist);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> #endif
/* Turn on fullfsync. */
if (sqlite3_prepare_v2(reg->db, "PRAGMA fullfsync = 1", -1, &stmt, NULL) == SQLITE_OK) {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -515,11 +519,13 @@ int reg_vacuum(char *db_path) {
</span> int reg_checkpoint(reg_registry* reg, reg_error* errPtr) {
#if SQLITE_VERSION_NUMBER >= 3022000
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if (sqlite3_db_readonly(reg->db, "registry") == 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- && sqlite3_wal_checkpoint_v2(reg->db, "registry",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- SQLITE_CHECKPOINT_PASSIVE, NULL, NULL) != SQLITE_OK) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reg_sqlite_error(reg->db, errPtr, NULL);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (sqlite3_libversion_number() >= 3022000) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (sqlite3_db_readonly(reg->db, "registry") == 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ && sqlite3_wal_checkpoint_v2(reg->db, "registry",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SQLITE_CHECKPOINT_PASSIVE, NULL, NULL) != SQLITE_OK) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reg_sqlite_error(reg->db, errPtr, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
#endif
return 1;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/cregistry/sql.c b/src/cregistry/sql.c
</span><span style='display:block; white-space:pre;color:#808080;'>index a795caf7..06a43520 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/cregistry/sql.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/cregistry/sql.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,7 +41,7 @@
</span>
/*** Keep all SQL compatible with SQLite 3.1.3 as shipped with Tiger.
*** (Conditionally doing things a better way when possible based on
<span style='display:block; white-space:pre;background:#ffe0e0;'>- *** SQLITE_VERSION_NUMBER is OK.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *** MP_SQLITE_VERSION is OK.)
</span> ***/
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -139,7 +139,7 @@ int create_tables(sqlite3* db, reg_error* errPtr) {
</span> But the DB would need to be changed back to a non-WAL journal_mode
after doing a SQLITE_CHECKPOINT_RESTART whenever the last writer
closes it. */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3022000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3022000
</span> "PRAGMA journal_mode=WAL",
#endif
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -313,7 +313,7 @@ int update_db(sqlite3* db, reg_error* errPtr) {
</span> /* we need to update to 1.1, add binary field and index to files
* table */
static char* version_1_1_queries[] = {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3002000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3002000
</span> "ALTER TABLE registry.files ADD COLUMN binary BOOL",
#else
/*
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -409,7 +409,7 @@ int update_db(sqlite3* db, reg_error* errPtr) {
</span> /* Delete the file_binary index, since it's a low-quality index
* according to https://www.sqlite.org/queryplanner-ng.html#howtofix */
static char* version_1_201_queries[] = {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3003000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3003000
</span> "DROP INDEX IF EXISTS registry.file_binary",
#else
"DROP INDEX registry.file_binary",
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -634,7 +634,7 @@ int update_db(sqlite3* db, reg_error* errPtr) {
</span> if (sql_version(NULL, -1, version, -1, "1.204") < 0) {
/* add */
static char* version_1_204_queries[] = {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3002000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3002000
</span> "ALTER TABLE registry.ports ADD COLUMN cxx_stdlib TEXT",
"ALTER TABLE registry.ports ADD COLUMN cxx_stdlib_overridden INTEGER",
#else
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -728,7 +728,7 @@ int update_db(sqlite3* db, reg_error* errPtr) {
</span> "UPDATE registry.metadata SET value = '1.205' WHERE key = 'version'",
"COMMIT",
"PRAGMA fullfsync = 1",
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3022000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3022000
</span> "PRAGMA journal_mode=WAL",
#endif
NULL
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -749,7 +749,7 @@ int update_db(sqlite3* db, reg_error* errPtr) {
</span> if (sql_version(NULL, -1, version, -1, "1.210") < 0) {
/* add */
static char* version_1_210_queries[] = {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if SQLITE_VERSION_NUMBER >= 3025000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MP_SQLITE_VERSION >= 3025000
</span> "ALTER TABLE registry.ports RENAME COLUMN negated_variants TO requested_variants",
#else
</pre><pre style='margin:0'>
</pre>