Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/sqlite/
Date: Fri, 16 Nov 2018 20:25:16
Message-Id: 1542399877.509172082535950a113746453f4af96b7e71d9d9.floppym@gentoo
1 commit: 509172082535950a113746453f4af96b7e71d9d9
2 Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org>
3 AuthorDate: Fri Nov 16 19:24:27 2018 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Fri Nov 16 20:24:37 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50917208
7
8 dev-db/sqlite: Version bump (3.25.3).
9
10 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache.Org>
11 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
12
13 dev-db/sqlite/Manifest | 3 +
14 dev-db/sqlite/sqlite-3.25.3.ebuild | 320 +++++++++++++++++++++++++++++++++++++
15 2 files changed, 323 insertions(+)
16
17 diff --git a/dev-db/sqlite/Manifest b/dev-db/sqlite/Manifest
18 index d61f68c44ac..0c139aa5e0e 100644
19 --- a/dev-db/sqlite/Manifest
20 +++ b/dev-db/sqlite/Manifest
21 @@ -1,9 +1,12 @@
22 DIST sqlite-autoconf-3230100.tar.gz 2675362 BLAKE2B 2dd075f0dc05425563a8e679bb463724296294b5845746f06b51a24c9601be203ee0f2213f43eaca0757fcbb54b777cee746d873c98f377a0b010d8066d7fcb5 SHA512 52cae7ed0678b763d40373ae260672b906861379428529a58a017cbc82419a6b109e0b2ac7ff5532e6d941693cc4ab68e6563f424b92b3b27c8916859a6e4826
23 DIST sqlite-autoconf-3240000.tar.gz 2699252 BLAKE2B c8beb3b90bdd06f76cafeba859cbf91cf4d0cb313fc9202d210ccbad5fca7f9a062ede63387e814d664f0ae38bcfa48db222f466dbcd429fecfb53cfdac155c4 SHA512 eaec866de26003ec36559aab15dd18dc0e6029453002a4eec5e176bb35a712b8b06c235436e6c1a226b67c7eb90d7a26c2b3b3d9a5e6e92a5af485236b77c878
24 DIST sqlite-autoconf-3250200.tar.gz 2763876 BLAKE2B 3d97cc60edf8f91855215bd59260362665c8ec7699510f2e07c7ba57e10c400dcc99bb392e216f798bef1ffa7120b48ee62ce144a871741ef57b3aefeab875d6 SHA512 5ef9a6dfbb0822257af1a3a379785a95ab02edecbbb53b57074ddd0b8dc294fc07cbb9a8a7acc4e1640fb1743525ed6331fecebbddce01bc017330b20e127ad9
25 +DIST sqlite-autoconf-3250300.tar.gz 2764429 BLAKE2B 6a79a8785c1e84002c031a86c6563e937a45d6ef4aae1b941d42c06cb8630210c33583f25e41f3f90b181ce47da650f81845ad88cafbf9c764164cf8b5d92e81 SHA512 5bc501d15367e097f4070185974b0c3a8246c06b205fb2258ed18870ff3fbf120ac5e0ba031a6744af89f7659206e28e7de2f0367bdb190b8412e453b43de4ba
26 DIST sqlite-doc-3230100.zip 8882546 BLAKE2B 1e80647e3789b9130a93e881933fb1260794d9ccf359969a16bdeb0df5a51787eaf8404641c4b760bedd45063d46f8874fd74a4da1fef0234f3d8e92db754d76 SHA512 d3a42621480a928446c5f71d0f2ee68e245b071971da38438f9070bd5bcbe1930ea5bd20e06c68543df75badd2e4565abc94420df50b7152c9cd129587471471
27 DIST sqlite-doc-3240000.zip 9030826 BLAKE2B 4444e3dd0ce782e19fa01c881e0b5453723419ef1cf95cbe751d759a264bbe288a5c23a2b6514ed459b99b11637349c02def68fed7df8625bfc161307e44564c SHA512 31e9046cea569d7ad1b3af176e1bb18cd59474afb6849871ead6e7c9c096f046162fb313a38684a8c944fad9f689c4c3c692be1d7dc6a8ef5a6685bbc7dfdab6
28 DIST sqlite-doc-3250200.zip 9229732 BLAKE2B 9bc4499c2934d15428dd30e0522362a2c2e703061c293f1b657f01d3945612760be3b4f145ddf76d9cf87953fae26884646887e53c0c55683ce42bc239dcf952 SHA512 a0b764ca0eea0e9719d46b6e1f92db78578457c8331976d4712c56cd10fc062fd73629686a0e45dfdeb505fbfbe0c53652a5e64507702ff4e12b62a2fc8d8211
29 +DIST sqlite-doc-3250300.zip 9265285 BLAKE2B 0722f00d849b18dabf82d317eb0deeb5567534a9cb55e189f28b18e7a26b863190911a02a26e21cf39b3106e7e1a872c445a3d8b53876a16d245e77affb6abc4 SHA512 a57cefbb2338a87721fb34f7a0d19129a58fbce026f80719af7dbbeb7512c91ab59e07719d860cc1cf742807ab7b0b5f92cff3bf52f4dbbad8c6ca34ad0a68ac
30 DIST sqlite-src-3230100.zip 10849436 BLAKE2B 6bed0a45c83ddb51d665835d174f623b30b1c3b81562fdea2317b58d876a0852136fe4f8a3ebc7679676f366e19c84d0ad2f54d3d8c73712145099975f80cf1a SHA512 69a87b76860c3b172d9e68b0fc0b8c157b606375e2b7d793ce4bd4b898ef737cd721189bc6a3342c749e224e60fa96203d449668c49dff2ebdc682b49630a59b
31 DIST sqlite-src-3240000.zip 10980065 BLAKE2B 201a59cb34271e5ac79e96e4e2ea64f8b61aa99c44eedf61c0a21752ad4376caaf7980a6923dca66266b1a315d9867871d0d172c17907b4147c15431aa212a70 SHA512 812c2df7179abb1e445b5b3e161c940b120c53366a7b2c1f0bfc3599cd9921e5543ba39ca3f297eeaefec318f10c15f630f00f9cf04133c7cd419a04f3bbdd0e
32 DIST sqlite-src-3250200.zip 11381811 BLAKE2B 6183436f66c862c32d1dfd59ea4ccb5eaf3dd516ffcf9d7edf786e8fbf56eff3cb84d08e291b2e86fae25e537bed452aed693bdb0f0d6bb6581da86641013557 SHA512 7354af2d45c574ba867fab8aabc6ff903279f028aebed50c71019066df78f61a0b941564c572c87b0f3ed3e5783bf325a690a9957d775228fbbb293dd9a5ad37
33 +DIST sqlite-src-3250300.zip 11384253 BLAKE2B dbc1d989b1f7ae26e34d629ae7926cfebacc0e3b9e07abb98ac6e6d2d801f111624d5b3f5a1d486580559ff0b42140bb798aa862df60946efa77d8b26c47fbd0 SHA512 7d6a38aea5626f7a32960fcdd109c647dd24a22ecf0772f01ffdba389f70fdfe6455f69733b22c220d4114a7d61d3d10097c23859d303e02d126988a1f663b65
34
35 diff --git a/dev-db/sqlite/sqlite-3.25.3.ebuild b/dev-db/sqlite/sqlite-3.25.3.ebuild
36 new file mode 100644
37 index 00000000000..87da0102ad5
38 --- /dev/null
39 +++ b/dev-db/sqlite/sqlite-3.25.3.ebuild
40 @@ -0,0 +1,320 @@
41 +# Copyright 1999-2018 Arfrever Frehtes Taifersar Arahesis and others
42 +# Distributed under the terms of the GNU General Public License v2
43 +
44 +EAPI="7"
45 +
46 +inherit autotools flag-o-matic multilib-minimal toolchain-funcs
47 +
48 +SRC_PV="$(printf "%u%02u%02u%02u" $(ver_rs 1- " "))"
49 +DOC_PV="${SRC_PV}"
50 +# DOC_PV="$(printf "%u%02u%02u00" $(ver_rs 1-3 " "))"
51 +
52 +DESCRIPTION="SQL database engine"
53 +HOMEPAGE="https://sqlite.org/"
54 +SRC_URI="doc? ( https://sqlite.org/2018/${PN}-doc-${DOC_PV}.zip )
55 + tcl? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
56 + test? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
57 + tools? ( https://sqlite.org/2018/${PN}-src-${SRC_PV}.zip )
58 + !tcl? ( !test? ( !tools? ( https://sqlite.org/2018/${PN}-autoconf-${SRC_PV}.tar.gz ) ) )"
59 +
60 +LICENSE="public-domain"
61 +SLOT="3"
62 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
63 +IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
64 +RESTRICT="!test? ( test )"
65 +
66 +BDEPEND="doc? ( app-arch/unzip )
67 + tcl? (
68 + app-arch/unzip
69 + >=dev-lang/tcl-8.6:0
70 + )
71 + test? (
72 + app-arch/unzip
73 + >=dev-lang/tcl-8.6:0
74 + )
75 + tools? (
76 + app-arch/unzip
77 + >=dev-lang/tcl-8.6:0
78 + )"
79 +RDEPEND="sys-libs/zlib:0=[${MULTILIB_USEDEP}]
80 + icu? ( dev-libs/icu:0=[${MULTILIB_USEDEP}] )
81 + readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] )
82 + tcl? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )
83 + tools? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )"
84 +DEPEND="${RDEPEND}
85 + test? ( >=dev-lang/tcl-8.6:0[${MULTILIB_USEDEP}] )"
86 +
87 +full_archive() {
88 + use tcl || use test || use tools
89 +}
90 +
91 +pkg_setup() {
92 + if full_archive; then
93 + S="${WORKDIR}/${PN}-src-${SRC_PV}"
94 + else
95 + S="${WORKDIR}/${PN}-autoconf-${SRC_PV}"
96 + fi
97 +}
98 +
99 +src_prepare() {
100 + if full_archive; then
101 + eapply "${FILESDIR}/${PN}-3.25.0-full_archive-build.patch"
102 + eapply "${FILESDIR}/${PN}-3.25.2-full_archive-tests.patch"
103 +
104 + eapply_user
105 +
106 + # Fix AC_CHECK_FUNCS.
107 + # https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
108 + sed -e "s/AC_CHECK_FUNCS(.*)/AC_CHECK_FUNCS([fdatasync fullfsync gmtime_r isnan localtime_r localtime_s malloc_usable_size posix_fallocate pread pread64 pwrite pwrite64 strchrnul usleep utime])/" -i configure.ac || die "sed failed"
109 + else
110 + eapply "${FILESDIR}/${PN}-3.25.0-nonfull_archive-build.patch"
111 +
112 + eapply_user
113 +
114 + # Fix AC_CHECK_FUNCS.
115 + # https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
116 + sed \
117 + -e "s/AC_CHECK_FUNCS(\[fdatasync.*/AC_CHECK_FUNCS([fdatasync fullfsync gmtime_r isnan localtime_r localtime_s malloc_usable_size posix_fallocate pread pread64 pwrite pwrite64 strchrnul usleep utime])/" \
118 + -e "/AC_CHECK_FUNCS(posix_fallocate)/d" \
119 + -i configure.ac || die "sed failed"
120 + fi
121 +
122 + eautoreconf
123 +
124 + multilib_copy_sources
125 +}
126 +
127 +multilib_src_configure() {
128 + local CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" options=()
129 +
130 + options+=(
131 + --enable-$(full_archive && echo load-extension || echo dynamic-extensions)
132 + --enable-threadsafe
133 + )
134 + if ! full_archive; then
135 + options+=(--disable-static-shell)
136 + fi
137 +
138 + # Support detection of misuse of SQLite API.
139 + # https://sqlite.org/compile.html#enable_api_armor
140 + append-cppflags -DSQLITE_ENABLE_API_ARMOR
141 +
142 + # Support column metadata functions.
143 + # https://sqlite.org/c3ref/column_database_name.html
144 + append-cppflags -DSQLITE_ENABLE_COLUMN_METADATA
145 +
146 + # Support sqlite_dbpage virtual table.
147 + # https://sqlite.org/compile.html#enable_dbpage_vtab
148 + append-cppflags -DSQLITE_ENABLE_DBPAGE_VTAB
149 +
150 + # Support dbstat virtual table.
151 + # https://sqlite.org/dbstat.html
152 + append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB
153 +
154 + # Support sqlite3_serialize() and sqlite3_deserialize() functions.
155 + # https://sqlite.org/compile.html#enable_deserialize
156 + # https://sqlite.org/c3ref/serialize.html
157 + # https://sqlite.org/c3ref/deserialize.html
158 + append-cppflags -DSQLITE_ENABLE_DESERIALIZE
159 +
160 + # Support comments in output of EXPLAIN.
161 + # https://sqlite.org/compile.html#enable_explain_comments
162 + append-cppflags -DSQLITE_ENABLE_EXPLAIN_COMMENTS
163 +
164 + # Support Full-Text Search versions 3, 4 and 5.
165 + # https://sqlite.org/fts3.html
166 + # https://sqlite.org/fts5.html
167 + append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4
168 + options+=(--enable-fts5)
169 +
170 + # Support hidden columns.
171 + append-cppflags -DSQLITE_ENABLE_HIDDEN_COLUMNS
172 +
173 + # Support JSON1 extension.
174 + # https://sqlite.org/json1.html
175 + append-cppflags -DSQLITE_ENABLE_JSON1
176 +
177 + # Support memsys5 memory allocator.
178 + # https://sqlite.org/malloc.html#memsys5
179 + append-cppflags -DSQLITE_ENABLE_MEMSYS5
180 +
181 + # Support sqlite_offset() function.
182 + # https://sqlite.org/lang_corefunc.html#sqlite_offset
183 + append-cppflags -DSQLITE_ENABLE_OFFSET_SQL_FUNC
184 +
185 + # Support pre-update hook functions.
186 + # https://sqlite.org/c3ref/preupdate_count.html
187 + append-cppflags -DSQLITE_ENABLE_PREUPDATE_HOOK
188 +
189 + # Support Resumable Bulk Update extension.
190 + # https://sqlite.org/rbu.html
191 + append-cppflags -DSQLITE_ENABLE_RBU
192 +
193 + # Support R*Trees.
194 + # https://sqlite.org/rtree.html
195 + # https://sqlite.org/geopoly.html
196 + append-cppflags -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_GEOPOLY
197 +
198 + # Support scan status functions.
199 + # https://sqlite.org/c3ref/stmt_scanstatus.html
200 + # https://sqlite.org/c3ref/stmt_scanstatus_reset.html
201 + append-cppflags -DSQLITE_ENABLE_STMT_SCANSTATUS
202 +
203 + # Support sqlite_stmt virtual table.
204 + # https://sqlite.org/stmt.html
205 + append-cppflags -DSQLITE_ENABLE_STMTVTAB
206 +
207 + # Support Session extension.
208 + # https://sqlite.org/sessionintro.html
209 + options+=(--enable-session)
210 +
211 + # Support unknown() function.
212 + # https://sqlite.org/compile.html#enable_unknown_sql_function
213 + append-cppflags -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
214 +
215 + # Support unlock notification.
216 + # https://sqlite.org/unlock_notify.html
217 + append-cppflags -DSQLITE_ENABLE_UNLOCK_NOTIFY
218 +
219 + # Support LIMIT and ORDER BY clauses on DELETE and UPDATE statements.
220 + # https://sqlite.org/compile.html#enable_update_delete_limit
221 + append-cppflags -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT
222 +
223 + # Support PRAGMA function_list, PRAGMA module_list and PRAGMA pragma_list statements.
224 + # https://sqlite.org/pragma.html#pragma_function_list
225 + # https://sqlite.org/pragma.html#pragma_module_list
226 + # https://sqlite.org/pragma.html#pragma_pragma_list
227 + append-cppflags -DSQLITE_INTROSPECTION_PRAGMAS
228 +
229 + # Support soundex() function.
230 + # https://sqlite.org/lang_corefunc.html#soundex
231 + append-cppflags -DSQLITE_SOUNDEX
232 +
233 + # Support URI filenames.
234 + # https://sqlite.org/uri.html
235 + append-cppflags -DSQLITE_USE_URI
236 +
237 + # debug USE flag.
238 + if full_archive; then
239 + options+=($(use_enable debug))
240 + else
241 + if use debug; then
242 + append-cppflags -DSQLITE_DEBUG
243 + else
244 + append-cppflags -DNDEBUG
245 + fi
246 + fi
247 +
248 + # icu USE flag.
249 + if use icu; then
250 + # Support ICU extension.
251 + # https://sqlite.org/compile.html#enable_icu
252 + append-cppflags -DSQLITE_ENABLE_ICU
253 + if full_archive; then
254 + sed -e "s/^TLIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed"
255 + else
256 + sed -e "s/^LIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed"
257 + fi
258 + fi
259 +
260 + # readline USE flag.
261 + options+=(
262 + --disable-editline
263 + $(use_enable readline)
264 + )
265 + if full_archive && use readline; then
266 + options+=(--with-readline-inc="-I${EPREFIX}/usr/include/readline")
267 + fi
268 +
269 + # secure-delete USE flag.
270 + if use secure-delete; then
271 + # Enable secure_delete pragma by default.
272 + # https://sqlite.org/pragma.html#pragma_secure_delete
273 + append-cppflags -DSQLITE_SECURE_DELETE
274 + fi
275 +
276 + # static-libs USE flag.
277 + options+=($(use_enable static-libs static))
278 +
279 + # tcl, test, tools USE flags.
280 + if full_archive; then
281 + options+=(--enable-tcl)
282 + fi
283 +
284 + if [[ "${CHOST}" == *-mint* ]]; then
285 + append-cppflags -DSQLITE_OMIT_WAL
286 + fi
287 +
288 + if [[ "${ABI}" == "x86" ]]; then
289 + if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P -dM - < /dev/null 2> /dev/null | grep -q "^#define __SSE__ 1$"; then
290 + append-cflags -mfpmath=sse
291 + else
292 + append-cflags -ffloat-store
293 + fi
294 + fi
295 +
296 + econf "${options[@]}"
297 +}
298 +
299 +multilib_src_compile() {
300 + emake HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}"
301 +
302 + if use tools && multilib_is_native_abi; then
303 + emake changeset dbdump dbhash rbu scrub showdb showjournal showshm showstat4 showwal sqldiff sqlite3_analyzer sqlite3_checker sqlite3_expert sqltclsh
304 + fi
305 +}
306 +
307 +multilib_src_test() {
308 + if [[ "${EUID}" -eq 0 ]]; then
309 + ewarn "Skipping tests due to root permissions"
310 + return
311 + fi
312 +
313 + emake HAVE_TCL="$(usex tcl 1 "")" $(use debug && echo fulltest || echo test)
314 +}
315 +
316 +multilib_src_install() {
317 + emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install
318 +
319 + if use tools && multilib_is_native_abi; then
320 + install_tool() {
321 + if [[ -f ".libs/${1}" ]]; then
322 + newbin ".libs/${1}" "${2}"
323 + else
324 + newbin "${1}" "${2}"
325 + fi
326 + }
327 +
328 + install_tool changeset sqlite3-changeset
329 + install_tool dbdump sqlite3-db-dump
330 + install_tool dbhash sqlite3-db-hash
331 + install_tool rbu sqlite3-rbu
332 + install_tool scrub sqlite3-scrub
333 + install_tool showdb sqlite3-show-db
334 + install_tool showjournal sqlite3-show-journal
335 + install_tool showshm sqlite3-show-shm
336 + install_tool showstat4 sqlite3-show-stat4
337 + install_tool showwal sqlite3-show-wal
338 + install_tool sqldiff sqlite3-diff
339 + install_tool sqlite3_analyzer sqlite3-analyzer
340 + install_tool sqlite3_checker sqlite3-checker
341 + install_tool sqlite3_expert sqlite3-expert
342 + install_tool sqltclsh sqlite3-tclsh
343 +
344 + unset -f install_tool
345 + fi
346 +}
347 +
348 +multilib_src_install_all() {
349 + find "${D}" -name "*.la" -delete || die
350 +
351 + doman sqlite3.1
352 +
353 + if use doc; then
354 + rm "${WORKDIR}/${PN}-doc-${DOC_PV}/"*.{db,txt}
355 + (
356 + docinto html
357 + dodoc -r "${WORKDIR}/${PN}-doc-${DOC_PV}/"*
358 + )
359 + fi
360 +}