Files
Arch-R/packages/databases/sqlite/build
Stephan Raue c1cb4a1e72 sqlite: enable mmap support
Signed-off-by: Stephan Raue <stephan@openelec.tv>
2013-06-12 04:28:43 +02:00

70 lines
2.9 KiB
Bash
Executable File

#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
. config/options $1
# 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_stat3 table. The query planner will then use the histogram
# data to help it make better index choices.
CFLAGS="$CFLAGS -DSQLITE_ENABLE_STAT3"
# 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="$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="$CFLAGS -DSQLITE_DEFAULT_MMAP_SIZE=268435456"
cd $PKG_BUILD
./configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
--sysconfdir=/etc \
--enable-static \
--disable-shared \
--disable-readline \
--enable-threadsafe \
--enable-dynamic-extensions \
--with-gnu-ld
make
$MAKEINSTALL