pkgsrc/databases/sqlite3/Makefile
adam d19c4e91fa sqlite3: updated to 3.21.0
Release 3.21.0:

Take advantage of the atomic-write capabilities in the F2FS filesystem when available, for greatly reduced transaction overhead. This currently requires the SQLITE_ENABLE_BATCH_ATOMIC_WRITE compile-time option.
Allow ATTACH and DETACH commands to work inside of a transaction.
Allow WITHOUT ROWID virtual tables to be writable if the PRIMARY KEY contains exactly one column.
The "fsync()" that occurs after the header is written in a WAL reset now uses the sync settings for checkpoints. This means it will use a "fullfsync" on macs if PRAGMA checkpoint_fullfsync set on.
The sqlite3_sourceid() function tries to detect if the source code has been modified from what is checked into version control and if there are modifications, the last four characters of the version hash are shown as "alt1" or "alt2". The objective is to detect accidental and/or careless edits. A forger can subvert this feature.
Improved de-quoting of column names for CREATE TABLE AS statements with an aggregate query on the right-hand side.
Fewer "stat()" system calls issued by the unix VFS.
Enhanced the LIKE optimization so that it works with an ESCAPE clause.
Enhanced PRAGMA integrity_check and PRAGMA quick_check to detect obscure row corruption that they were formerly missing. Also update both pragmas so that they return error text rather than SQLITE_CORRUPT when encountering corruption in records.
The query planner now prefers to implement FROM-clause subqueries using co-routines rather using the query flattener optimization. Support for the use of co-routines for subqueries may no longer be disabled.
Pass information about !=, IS, IS NOT, NOT NULL, and IS NULL constraints into the xBestIndex method of virtual tables.
Enhanced the CSV virtual table so that it accepts the last row of input if the final new-line character is missing.
Remove the rarely-used "scratch" memory allocator. Replace it with the SQLITE_CONFIG_SMALL_MALLOC configuration setting that gives SQLite a hint that large memory allocations should be avoided when possible.
Added the swarm virtual table to the existing union virtual table extension.
Added the sqlite_dbpage virtual table for providing direct access to pages of the database file. The source code is built into the amalgamation and is activated using the -DSQLITE_ENABLE_DBPAGE_VTAB compile-time option.
Add a new type of fts5vocab virtual table - "instance" - that provides direct access to an FTS5 full-text index at the lowest possible level.
Remove a call to rand_s() in the Windows VFS since it was causing problems in Firefox on some older laptops.
The src/shell.c source code to the command-line shell is no longer under version control. That file is now generated as part of the build process.
Miscellaneous microoptimizations reduce CPU usage by about 2.1%.
Bug fixes
2017-10-30 18:36:13 +00:00

55 lines
1.6 KiB
Makefile

# $NetBSD: Makefile,v 1.119 2017/10/30 18:36:13 adam Exp $
.include "Makefile.common"
PKGNAME= sqlite3-${SQLITE3_VERSION}
CATEGORIES= databases
MAINTAINER= pkgsrc-users@NetBSD.org
COMMENT= SQL Database Engine in a C Library
.include "options.mk"
USE_LIBTOOL= yes
USE_TOOLS+= gmake
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --disable-static-shell
PKGCONFIG_OVERRIDE+= sqlite3.pc.in
INSTALLATION_DIRS+= ${PKGMANDIR}/man1
.include "../../mk/bsd.prefs.mk"
# In the past, Linux had database corruption issues with pread, so
# only enable it on safe platforms.
CFLAGS.NetBSD+= -DUSE_PREAD
# This issue is fixed upstream and will be in the next release, so remove this
# on the next update (https://bugzilla.mozilla.org/show_bug.cgi?id=1340028)
CFLAGS.Darwin+= -DSQLITE_DISABLE_INTRINSIC
# Darwin < 9 (Mac OS X < 10.5 "Leopard") doesn't have gethostuuid(2)
# and lacks the zone memory allocator
.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)
CFLAGS+= -DSQLITE_ENABLE_LOCKING_STYLE=0 -DSQLITE_WITHOUT_ZONEMALLOC
.endif
# This define includes the sqlite3_unlock_notify() API in the build.
# It is required by Firefox 4.x.
CFLAGS+= -DSQLITE_ENABLE_UNLOCK_NOTIFY=1
# The following are defined in the NetBSD builtin version.
CFLAGS+= -DSQLITE_ENABLE_COLUMN_METADATA
CFLAGS+= -DSQLITE_ENABLE_LOAD_EXTENSION
# Uses dlopen and friends but doesn't use -ldl on Linux.
# See http://www.sqlite.org/cvstrac/tktview?tn=3555
LIBS+= ${BUILDLINK_LDADD.dl}
.if ${OS_VARIANT} == "SCOOSR5"
LDFLAGS.SCO_SV+= -lpthread
.endif
.include "../../mk/readline.buildlink3.mk"
.include "../../mk/dlopen.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"