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