mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
release notes: - https://www.sqlite.org/releaselog/3_45_2.html Changes in this specific patch release, version 3.45.2 (2024-03-12): - Fix an error in UPSERT, introduced by enhancement 3a in version 3.35.0 (2021-03-12), that could cause an index to get out-of-sync with its table. Forum thread 919c6579c8. - Reduce the scope of the NOT NULL strength reduction optimization that was added as item 8e in version 3.35.0 (2021-03-12). The optimization was being attempted in some contexts where it did not work, resulting in incorrect query results. Forum thread 440f2a2f17. - Other trifling corrections and compiler warning fixes that have come up since the previous patch release. See the timeline for details.
57 lines
2.6 KiB
Makefile
57 lines
2.6 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
|
|
|
PKG_NAME="sqlite"
|
|
PKG_VERSION="3.45.2"
|
|
PKG_VERSION_SQLITE="${PKG_VERSION/./}00"
|
|
PKG_SHA256="bc9067442eedf3dd39989b5c5cfbfff37ae66cc9c99274e0c3052dc4d4a8f6ae"
|
|
PKG_LICENSE="PublicDomain"
|
|
PKG_SITE="https://www.sqlite.org/"
|
|
PKG_URL="https://www.sqlite.org/2024/${PKG_NAME}-autoconf-${PKG_VERSION_SQLITE/./0}.tar.gz"
|
|
PKG_DEPENDS_HOST="ccache:host autoconf:host automake:host"
|
|
PKG_DEPENDS_TARGET="toolchain ncurses"
|
|
PKG_LONGDESC="An Embeddable SQL Database Engine."
|
|
# libsqlite3.a(sqlite3.o): requires dynamic R_X86_64_PC32 reloc against 'sqlite3_stricmp' which may overflow at runtime
|
|
PKG_BUILD_FLAGS="+pic +pic:host -parallel"
|
|
|
|
PKG_CONFIGURE_OPTS_TARGET="--disable-static \
|
|
--enable-shared \
|
|
--disable-readline \
|
|
--enable-threadsafe \
|
|
--enable-dynamic-extensions \
|
|
--with-gnu-ld"
|
|
|
|
pre_configure_target() {
|
|
# sqlite fails to compile with fast-math link time optimization.
|
|
CFLAGS=$(echo ${CFLAGS} | sed -e "s|-Ofast|-O3|g")
|
|
CFLAGS=$(echo ${CFLAGS} | sed -e "s|-ffast-math||g")
|
|
|
|
# This option adds additional logic to the ANALYZE command and to the query planner
|
|
# that can help SQLite to chose a better query plan under certain situations. The
|
|
# ANALYZE command is enhanced to collect histogram data from each index and store
|
|
# that data in the sqlite_stat4 table. The query planner will then use the histogram
|
|
# data to help it make better index choices.
|
|
CFLAGS+=" -DSQLITE_ENABLE_STAT4"
|
|
|
|
# When this C-preprocessor macro is defined, SQLite includes some additional APIs
|
|
# that provide convenient access to meta-data about tables and queries. The APIs that
|
|
# are enabled by this option are:
|
|
# - sqlite3_column_database_name()
|
|
# - sqlite3_column_database_name16()
|
|
# - sqlite3_column_table_name()
|
|
# - sqlite3_column_table_name16()
|
|
# - sqlite3_column_origin_name()
|
|
# - sqlite3_column_origin_name16()
|
|
# - sqlite3_table_column_metadata()
|
|
CFLAGS+=" -DSQLITE_ENABLE_COLUMN_METADATA=1"
|
|
|
|
# This macro sets the default limit on the amount of memory that will be used for
|
|
# memory-mapped I/O for each open database file. If the N is zero, then memory
|
|
# mapped I/O is disabled by default. This compile-time limit and the
|
|
# SQLITE_MAX_MMAP_SIZE can be modified at start-time using the
|
|
# sqlite3_config(SQLITE_CONFIG_MMAP_SIZE) call, or at run-time using the
|
|
# mmap_size pragma.
|
|
CFLAGS+=" -DSQLITE_TEMP_STORE=3 -DSQLITE_DEFAULT_MMAP_SIZE=268435456"
|
|
}
|