1 |
|
# $MidnightBSD$ |
2 |
|
|
3 |
|
PORTNAME= sqlite3 |
4 |
< |
PORTVERSION= 3.8.4.1 |
4 |
> |
PORTVERSION= 3.20.1 |
5 |
> |
PORTREVISION= 1 |
6 |
|
CATEGORIES= databases |
7 |
< |
MASTER_SITES= http://www.sqlite.org/2014/ http://www2.sqlite.org/2014/ http://www3.sqlite.org/2014/ |
8 |
< |
DISTNAME= sqlite-autoconf-3080401 |
7 |
> |
MASTER_SITES= https://www.sqlite.org/2017/ http://www2.sqlite.org/2017/ http://www3.sqlite.org/2017/ |
8 |
> |
DISTNAME= sqlite-autoconf-${PORTVERSION:C/\.([[:digit:]])[[:>:]]/0\1/g:S/.//g}00 |
9 |
|
|
10 |
|
MAINTAINER= ports@MidnightBSD.org |
11 |
|
COMMENT= SQL database engine in a C library |
12 |
|
|
13 |
|
LICENSE= publicdom |
14 |
|
|
15 |
< |
CONFLICTS= sqlite34-[0-9]* sqlcipher-[0-9]* |
15 |
> |
USES= libtool ncurses pathfix |
16 |
> |
USE_LDCONFIG= yes |
17 |
> |
GNU_CONFIGURE= yes |
18 |
> |
INSTALL_TARGET= install-strip |
19 |
> |
CFLAGS+= -Os |
20 |
> |
CPPFLAGS+= -DHAVE_ISNAN=1 -DHAVE_MALLOC_USABLE_SIZE=1 |
21 |
|
|
16 |
– |
USES= pathfix pkgconfig |
17 |
– |
USE_LDCONFIG= YES |
18 |
– |
GNU_CONFIGURE= YES |
19 |
– |
|
22 |
|
MAKE_JOBS_UNSAFE= yes |
23 |
|
|
24 |
< |
# Compilation Options For SQLite http://www.sqlite.org/compile.html |
25 |
< |
OPTIONS_DEFINE= FTS3 ICU RTREE RAMTABLE UPD_DEL_LIMIT URI URI_AUTHORITY SOUNDEX METADATA \ |
26 |
< |
STAT3 DIRECT_READ MEMMAN SECURE_DELETE UNLOCK_NOTIFY THREADSAFE \ |
27 |
< |
EXTENSION |
28 |
< |
OPTIONS_DEFAULT= FTS3 URI METADATA SECURE_DELETE UNLOCK_NOTIFY THREADSAFE EXTENSION |
29 |
< |
FTS3_DESC= Enable FTS3/4 (Full Text Search) module |
30 |
< |
ICU_DESC= Enable built with ICU |
31 |
< |
RTREE_DESC= Enable R*Tree module (${RTREE_INT}) |
32 |
< |
RAMTABLE_DESC= Store temporary tables in RAM = ${TEMP_STORE} |
24 |
> |
# Compilation Options For SQLite https://www.sqlite.org/compile.html |
25 |
> |
OPTIONS_DEFINE= FTS4 UPD_DEL_LIMIT URI URI_AUTHORITY SOUNDEX METADATA \ |
26 |
> |
DIRECT_READ MEMMAN SECURE_DELETE UNLOCK_NOTIFY THREADS \ |
27 |
> |
EXTENSION ARMOR STMT DBSTAT FTS5 JSON1 RBU \ |
28 |
> |
LIKENOTBLOB STSHELL FTS3_TOKEN |
29 |
> |
OPTIONS_SINGLE= RAMT |
30 |
> |
OPTIONS_RADIO= STAT |
31 |
> |
OPTIONS_GROUP= UNICODE RTREEG RL |
32 |
> |
|
33 |
|
UPD_DEL_LIMIT_DESC= ORDER BY and LIMIT on UPDATE and DELETE |
34 |
|
URI_DESC= Enable use the URI filename |
35 |
|
URI_AUTHORITY_DESC= Allow convert URL into a UNC |
36 |
|
SOUNDEX_DESC= Enables the soundex() SQL function |
37 |
|
METADATA_DESC= Enable column metadata |
36 |
– |
STAT3_DESC= Help SQLite to chose a better query plan |
38 |
|
DIRECT_READ_DESC= File is read directly from disk |
39 |
|
MEMMAN_DESC= Allows it to release unused memory |
40 |
|
SECURE_DELETE_DESC= Overwrite deleted information with zeros |
41 |
|
UNLOCK_NOTIFY_DESC= Enable notification on unlocking |
41 |
– |
THREADSAFE_DESC= Build thread-safe library |
42 |
|
EXTENSION_DESC= Allow loadable extensions |
43 |
+ |
STSHELL_DESC= Statically link libsqlite3 into shell |
44 |
|
|
45 |
< |
.include <bsd.mport.options.mk> |
45 |
> |
# https://sqlite.org/compile.html#like_doesnt_match_blobs |
46 |
> |
LIKENOTBLOB_DESC= LIKE does not match blobs |
47 |
|
|
48 |
< |
.if !defined(NO_INSTALL_MANPAGES) |
49 |
< |
MAN1= sqlite3.1 |
48 |
< |
.endif |
48 |
> |
# https://www.sqlite.org/compile.html#enable_api_armor |
49 |
> |
ARMOR_DESC= Detect misuse of the API |
50 |
|
|
51 |
< |
# NAME83 "Enable use 8.3 filename for temp files" off \ |
52 |
< |
# Some devices are compelled to use an older file system with 8+3 filename |
53 |
< |
# restrictions for backwards compatibility, or due to other non-technical factors. |
53 |
< |
# http://www.sqlite.org/shortnames.html |
54 |
< |
.if ${PORT_OPTIONS:MNAME83} |
55 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_8_3_NAMES=1 |
56 |
< |
.endif |
51 |
> |
# https://www.sqlite.org/fts3.html |
52 |
> |
# https://www.sqlite.org/compile.html#enable_fts3_parenthesis |
53 |
> |
FTS4_DESC= Enable FTS3/4 (Full Text Search) module |
54 |
|
|
55 |
+ |
# https://www.sqlite.org/fts5.html |
56 |
+ |
FTS5_DESC= Enable version 5 full-text search engine |
57 |
+ |
|
58 |
+ |
# https://www.sqlite.org/compile.html#enable_fts3_tokenizer |
59 |
+ |
# https://www.sqlite.org/fts3.html#f3tknzr |
60 |
+ |
FTS3_TOKEN_DESC= Enable two-args version fts3_tokenizer |
61 |
+ |
|
62 |
+ |
# https://www.sqlite.org/json1.html |
63 |
+ |
JSON1_DESC= Enable the JSON1 extension |
64 |
+ |
|
65 |
+ |
# https://www.sqlite.org/rbu.html |
66 |
+ |
RBU_DESC= Enable the Resumable Bulk Update |
67 |
+ |
|
68 |
+ |
# https://www.sqlite.org/c3ref/stmt_scanstatus.html |
69 |
+ |
STMT_DESC= Prepared Statement Scan Status |
70 |
+ |
|
71 |
+ |
# https://www.sqlite.org/tempfiles.html#tempstore |
72 |
+ |
OPTIONS_SINGLE_RAMT= TS0 TS1 TS2 TS3 |
73 |
+ |
RAMT_DESC= Where to store temporary file |
74 |
+ |
TS0_DESC= Always use temporary file |
75 |
+ |
TS1_DESC= File by default, change allowed PRAGMA |
76 |
+ |
TS2_DESC= Memory by default, change allowed PRAGMA |
77 |
+ |
TS3_DESC= Always use memory |
78 |
+ |
|
79 |
+ |
# https://www.sqlite.org/queryplanner-ng.html#qpstab |
80 |
+ |
OPTIONS_RADIO_STAT= STAT3 STAT4 |
81 |
+ |
STAT_DESC= Which query planner to use, Stability or ... |
82 |
+ |
STAT3_DESC= collect histogram data from leftmost column |
83 |
+ |
STAT4_DESC= collect histogram data from all columns |
84 |
+ |
|
85 |
+ |
# https://www.sqlite.org/dbstat.html |
86 |
+ |
DBSTAT_DESC= Enable DBSTAT Virtual Table |
87 |
+ |
|
88 |
+ |
# https://www.sqlite.org/fts3.html#tokenizer |
89 |
+ |
OPTIONS_GROUP_UNICODE= ICU UNICODE61 |
90 |
+ |
UNICODE_DESC= Unicode support |
91 |
+ |
UNICODE61_DESC= Unicode Version 6.1 tokenizer |
92 |
+ |
|
93 |
+ |
# https://www.sqlite.org/rtree.html |
94 |
+ |
OPTIONS_GROUP_RTREEG= RTREE RTREE_INT |
95 |
+ |
RTREEG_DESC= Index type for range queries |
96 |
+ |
RTREE_DESC= Enable R*Tree module |
97 |
+ |
RTREE_INT_DESC= Store 32-bit sig int (no float) coordinates |
98 |
+ |
|
99 |
+ |
OPTIONS_GROUP_RL= READLINES READLINEP EDITLINE |
100 |
+ |
RL_DESC= Which command line editing library to use: |
101 |
+ |
READLINES_DESC= the libreadline from system |
102 |
+ |
READLINEP_DESC= the GNU libreadline from ports |
103 |
+ |
EDITLINE_DESC= the BSD libedit from ports |
104 |
+ |
READLINES_PREVENTS= READLINEP EDITLINE |
105 |
+ |
READLINEP_PREVENTS= READLINES EDITLINE |
106 |
+ |
EDITLINE_PREVENTS= READLINES READLINEP |
107 |
+ |
|
108 |
+ |
OPTIONS_DEFAULT= FTS4 URI METADATA SECURE_DELETE UNLOCK_NOTIFY THREADS \ |
109 |
+ |
EXTENSION TS1 UNICODE61 RTREE DBSTAT STSHELL READLINES |
110 |
+ |
# SECURE_DELETE, UNLOCK_NOTIFY, DBSTAT (since 41.0) used by www/firefox et al. |
111 |
+ |
# RTREE used by graphics/mapnik, databases/spatialite |
112 |
+ |
|
113 |
+ |
PLIST_FILES= bin/sqlite3 include/sqlite3.h include/sqlite3ext.h \ |
114 |
+ |
lib/libsqlite3.a lib/libsqlite3.so lib/libsqlite3.so.0 \ |
115 |
+ |
lib/libsqlite3.so.0.8.6 libdata/pkgconfig/sqlite3.pc \ |
116 |
+ |
man/man1/sqlite3.1.gz |
117 |
+ |
|
118 |
|
# The default numeric file permissions for newly created database files under unix. |
119 |
|
# If not specified, the default is 0644 which means that the files is globally |
120 |
|
# readable but only writable by the creator. |
122 |
|
CPPFLAGS+= -DSQLITE_DEFAULT_FILE_PERMISSIONS=${DEFAULT_FILE_PERMISSIONS} |
123 |
|
.endif |
124 |
|
|
125 |
< |
# This macro sets the default size of the page-cache for temporary files |
126 |
< |
# created by SQLite to store intermediate results, in pages. |
127 |
< |
.ifdef TEMP_CACHE_SIZE |
128 |
< |
CPPFLAGS+= -DSQLITE_DEFAULT_TEMP_CACHE_SIZE=${TEMP_CACHE_SIZE} |
129 |
< |
.endif |
125 |
> |
# Use an in-ram database for temporary tables (never,no,yes,always), |
126 |
> |
TS0_CPPFLAGS= -DSQLITE_TEMP_STORE=0 |
127 |
> |
TS1_CPPFLAGS= -DSQLITE_TEMP_STORE=1 |
128 |
> |
TS2_CPPFLAGS= -DSQLITE_TEMP_STORE=2 |
129 |
> |
TS3_CPPFLAGS= -DSQLITE_TEMP_STORE=3 |
130 |
|
|
131 |
< |
.if ${PORT_OPTIONS:MMEMMAN} |
132 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 |
73 |
< |
.endif |
131 |
> |
RTREE_CPPFLAGS= -DSQLITE_ENABLE_RTREE=1 |
132 |
> |
RTREE_INT_CPPFLAGS= -DSQLITE_RTREE_INT_ONLY=1 |
133 |
|
|
134 |
< |
.if ${PORT_OPTIONS:MUPD_DEL_LIMIT} |
135 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 |
136 |
< |
.endif |
134 |
> |
FTS4_CPPFLAGS= -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_FTS4=1 |
135 |
> |
FTS5_CONFIGURE_ENABLE= fts5 |
136 |
> |
FTS3_TOKEN_CPPFLAGS= -DSQLITE_ENABLE_FTS3_TOKENIZER=1 |
137 |
|
|
138 |
< |
.if ${PORT_OPTIONS:MURI} |
139 |
< |
CPPFLAGS+= -DSQLITE_USE_URI=1 |
140 |
< |
.endif |
138 |
> |
SOUNDEX_CPPFLAGS= -DSQLITE_SOUNDEX=1 |
139 |
> |
MEMMAN_CPPFLAGS= -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 |
140 |
> |
UPD_DEL_LIMIT_CPPFLAGS= -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 |
141 |
> |
UPD_DEL_LIMIT_PREVENTS= UPD_DEL_LIMIT |
142 |
> |
UPD_DEL_LIMIT_PREVENTS_MSG= this option may only be used when the library is built from source, not from the amalgamation. Please, do not select it with this port. |
143 |
> |
SECURE_DELETE_CPPFLAGS= -DSQLITE_SECURE_DELETE=1 |
144 |
> |
UNLOCK_NOTIFY_CPPFLAGS= -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 |
145 |
> |
METADATA_CPPFLAGS= -DSQLITE_ENABLE_COLUMN_METADATA=1 |
146 |
> |
STAT3_CPPFLAGS= -DSQLITE_ENABLE_STAT3=1 |
147 |
> |
STAT4_CPPFLAGS= -DSQLITE_ENABLE_STAT4=1 |
148 |
> |
DBSTAT_CPPFLAGS= -DSQLITE_ENABLE_DBSTAT_VTAB=1 |
149 |
> |
URI_CPPFLAGS= -DSQLITE_USE_URI=1 |
150 |
> |
URI_AUTHORITY_CPPFLAGS= -DSQLITE_ALLOW_URI_AUTHORITY=1 |
151 |
> |
DIRECT_READ_CPPFLAGS= -DSQLITE_DIRECT_OVERFLOW_READ=1 |
152 |
> |
ARMOR_CPPFLAGS= -DSQLITE_ENABLE_API_ARMOR=1 |
153 |
> |
STMT_CPPFLAGS= -DSQLITE_ENABLE_STMT_SCANSTATUS=1 |
154 |
|
|
155 |
< |
.if ${PORT_OPTIONS:MURI_AUTHORITY} |
84 |
< |
CPPFLAGS+= -DSQLITE_ALLOW_URI_AUTHORITY=1 |
85 |
< |
.endif |
155 |
> |
EXTENSION_CONFIGURE_ENABLE= dynamic-extensions |
156 |
|
|
157 |
< |
.if ${PORT_OPTIONS:MSOUNDEX} |
158 |
< |
CPPFLAGS+= -DSQLITE_SOUNDEX=1 |
89 |
< |
.endif |
157 |
> |
THREADS_CONFIGURE_ENABLE= threadsafe |
158 |
> |
THREADS_LDFLAGS= -lpthread |
159 |
|
|
160 |
< |
.if ${PORT_OPTIONS:MSTAT3} |
161 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_STAT3=1 |
162 |
< |
.endif |
160 |
> |
ICU_BUILD_DEPENDS= ${LOCALBASE}/bin/icu-config:${PORTSDIR}/devel/icu |
161 |
> |
ICU_LIB_DEPENDS= libicudata.so:${PORTSDIR}/devel/icu |
162 |
> |
ICU_CPPFLAGS= `${LOCALBASE}/bin/icu-config --cppflags` -DSQLITE_ENABLE_ICU=1 |
163 |
> |
ICU_LDFLAGS= `${LOCALBASE}/bin/icu-config --ldflags` |
164 |
|
|
165 |
< |
.if ${PORT_OPTIONS:MDIRECT_READ} |
96 |
< |
CPPFLAGS+= -DSQLITE_DIRECT_OVERFLOW_READ=1 |
97 |
< |
.endif |
165 |
> |
UNICODE61_CPPFLAGS_OFF= -DSQLITE_DISABLE_FTS3_UNICODE=1 |
166 |
|
|
167 |
< |
.if ${PORT_OPTIONS:MFTS3} |
168 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_FTS4=1 |
169 |
< |
.endif |
167 |
> |
READLINES_CONFIGURE_ON= --enable-readline |
168 |
> |
READLINES_USES= readline |
169 |
> |
READLINEP_CONFIGURE_ON= --enable-readline |
170 |
> |
READLINEP_USES= readline:port |
171 |
> |
EDITLINE_CONFIGURE_ENABLE= editline |
172 |
> |
EDITLINE_USES= libedit |
173 |
|
|
174 |
< |
.if ${PORT_OPTIONS:MRTREE} |
104 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_RTREE=1 |
105 |
< |
.ifdef RTREE_INT |
106 |
< |
CPPFLAGS+= -DSQLITE_RTREE_INT_ONLY=1 |
107 |
< |
RTREE_INT= "int" |
108 |
< |
.else |
109 |
< |
RTREE_INT= "float" |
110 |
< |
.endif |
111 |
< |
.endif |
174 |
> |
JSON1_CONFIGURE_ENABLE= json1 |
175 |
|
|
176 |
< |
.if ${PORT_OPTIONS:MICU} |
114 |
< |
BUILD_DEPENDS+= ${LOCALBASE}/bin/icu-config:${PORTSDIR}/devel/icu |
115 |
< |
LIB_DEPENDS+= icudata:${PORTSDIR}/devel/icu |
116 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_ICU=1 |
117 |
< |
CPPFLAGS+= `${LOCALBASE}/bin/icu-config --cppflags` |
118 |
< |
LDFLAGS+= `${LOCALBASE}/bin/icu-config --ldflags` |
119 |
< |
.endif |
176 |
> |
RBU_CPPFLAGS= -DSQLITE_ENABLE_RBU=1 |
177 |
|
|
178 |
< |
# Use an in-ram database for temporary tables (never,no,yes,always), |
122 |
< |
# which is equivalent of TEMP_STORE=[0,1,2,3], default = 1. |
123 |
< |
.if ${PORT_OPTIONS:MRAMTABLE} |
124 |
< |
TEMP_STORE?= 2 |
125 |
< |
CPPFLAGS+= -DSQLITE_TEMP_STORE=${TEMP_STORE} |
126 |
< |
.endif |
178 |
> |
LIKENOTBLOB_CPPFLAGS= -DSQLITE_LIKE_DOESNT_MATCH_BLOBS=1 |
179 |
|
|
180 |
< |
.if ${PORT_OPTIONS:MSECURE_DELETE} |
129 |
< |
CPPFLAGS+= -DSQLITE_SECURE_DELETE=1 |
130 |
< |
.endif |
180 |
> |
STSHELL_CONFIGURE_ENABLE= static-shell |
181 |
|
|
182 |
< |
.if ${PORT_OPTIONS:MUNLOCK_NOTIFY} |
133 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 |
134 |
< |
.endif |
182 |
> |
.include <bsd.mport.options.mk> |
183 |
|
|
184 |
< |
.if ${PORT_OPTIONS:MMETADATA} |
185 |
< |
CPPFLAGS+= -DSQLITE_ENABLE_COLUMN_METADATA=1 |
186 |
< |
.endif |
184 |
> |
post-configure: |
185 |
> |
@${ECHO_MSG} "===> CONFIGURE_ARGS=${CONFIGURE_ARGS}" |
186 |
> |
@${ECHO_MSG} "===> CPPFLAGS=${CPPFLAGS}" |
187 |
> |
@${ECHO_MSG} "===> CFLAGS=${CFLAGS}" |
188 |
> |
@${ECHO_MSG} "===> LDFLAGS=${LDFLAGS}" |
189 |
|
|
140 |
– |
.if ${PORT_OPTIONS:MTHREADSAFE} |
141 |
– |
CONFIGURE_ARGS+= --enable-threadsafe |
142 |
– |
LDFLAGS+= ${PTHREAD_LIBS} |
143 |
– |
.else |
144 |
– |
CONFIGURE_ARGS+= --disable-threadsafe |
145 |
– |
.endif |
146 |
– |
|
147 |
– |
.if ${PORT_OPTIONS:MEXTENSION} |
148 |
– |
CONFIGURE_ARGS+= --enable-dynamic-extensions |
149 |
– |
.else |
150 |
– |
CONFIGURE_ARGS+= --disable-dynamic-extensions |
151 |
– |
.endif |
152 |
– |
|
190 |
|
post-build: |
191 |
|
.if ${ARCH}=="i386" |
192 |
|
@${ECHO_MSG} "===> WARNING: on ${ARCH} don't pass atof1-* tests" |
156 |
– |
.endif |
157 |
– |
|
158 |
– |
post-install: |
159 |
– |
.if !defined(NO_INSTALL_MANPAGES) |
160 |
– |
@${INSTALL_MAN} ${WRKSRC}/sqlite3.1 ${MANPREFIX}/man/man1 |
193 |
|
.endif |
194 |
|
|
195 |
|
.include <bsd.port.mk> |