commit:     263105303955690b2cab2acfb3d8340508710aa5
Author:     Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org>
AuthorDate: Fri Jan 27 17:09:50 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 17:33:50 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26310530

dev-db/sqlite: Version bump (3.16.2).

 dev-db/sqlite/Manifest                             |   3 +
 .../files/sqlite-3.16.0-full_tarball-build.patch   | 147 ++++++++++++
 .../sqlite-3.16.0-nonfull_tarball-build.patch      |  14 ++
 dev-db/sqlite/sqlite-3.16.2.ebuild                 | 261 +++++++++++++++++++++
 4 files changed, 425 insertions(+)

diff --git a/dev-db/sqlite/Manifest b/dev-db/sqlite/Manifest
index b1d8d03..b48cffc 100644
--- a/dev-db/sqlite/Manifest
+++ b/dev-db/sqlite/Manifest
@@ -6,6 +6,7 @@ DIST sqlite-autoconf-3140100.tar.gz 2473610 SHA256 
bc7182476900017becb81565ecea7
 DIST sqlite-autoconf-3140200.tar.gz 2472940 SHA256 
644f0c127f7d0cbe8765b9bbdf9ed09d6a2f2b9dfba48ddfd8ca0a42fdb5b3fc SHA512 
02c5ca3073e29307f842af3305793dd6251d2ac43ce3f37b5b9402d6582a6bda56a41f82b130d03997ebb3cc109d6ab7baa9a946c03e74ae5158426bc154fd70
 WHIRLPOOL 
c98f2b004838e5b767704248fdc5afd0428559155838240943861edd6e4a20121f81e24fca672cd8408c9c6907ef4e5d6c228c167ab7b3a0670b787420006377
 DIST sqlite-autoconf-3150100.tar.gz 2491350 SHA256 
5dfa89b7697ee3c2ac7b44e8e157e7f204bf999c866afcaa8bb1c7ff656ae2c5 SHA512 
516d683fb64a6a0ef170d718059420c9b0023bffd75780194d9c06fab1142a749700fafd83577c81dfc7a7a21eee955df9a879f8c2f818f542c7adb968daa0ed
 WHIRLPOOL 
550a7a1e85860ab656ad78d7bfb61d859cc146343caf5b59009b29ee206a635725a0d65b261b08f4430192f064a01cc35a4088946275f4f239aa821622b8fd8c
 DIST sqlite-autoconf-3150200.tar.gz 2491735 SHA256 
07b35063b9386865b78226cdaca9a299d938a87aaa8fdc4d73edb0cef30f3149 SHA512 
9620f03bbd14a15063378656567df544245f62255ed36cca683b3b92b6eb48e83c6ca09bbf904b916c1c7504b69f0332860923daabb25c94b2a46434e2dcb19d
 WHIRLPOOL 
0293b8d50082d8fdceef67fe3f9c6e827bf5df25d92ecd4651af468848288e2faea657d519d6c3facc45d760e9dcbd89d60dd3271b76396b6f358e72eb57554d
+DIST sqlite-autoconf-3160200.tar.gz 2508179 SHA256 
65cc0c3e9366f50c0679c5ccd31432cea894bc4a3e8947dabab88c8693263615 SHA512 
83bdd588504f265bbe93fb98a33a292aff5618c14f94d521c8557efbb5f777e82dfbb2d186cbfd4c628ee9522b1fcb73857e24ca2318fa34af3a3f9540e72b9a
 WHIRLPOOL 
850a5051739f65eade0ee5740641a0503870f88d1ebdb40cab36b68d956896270ed59e387d57db74eede5ecd7fc9b3c14bc5841ff02e17eb50abc4701eba18fc
 DIST sqlite-doc-3120000.zip 5402611 SHA256 
346d9d56a0193d9396948192b7eca9e45c2adfeea6bbf71df62502830da510f3 SHA512 
7879d006e528d692ea5718f27d03e2dfe2a5e54aa135be983b992836102720df4dc690d84795115a25ed19a663e895a3f3f8a59d0de079c451d215e07081281e
 WHIRLPOOL 
00f5bc4b82af1ba8d43ae4d0761dacd2e608009812a12fee9aedd333baec9b36f74542c60de4acacd19f5ef898d3bd57dfb705f3b21219ba3862ca91c2f76402
 DIST sqlite-doc-3120100.zip 5410493 SHA256 
dbe53c076922c711a467dde57432583fbf9a12eac57cb75f6116a310880eb088 SHA512 
d0117618d97744255248b9160816203147ba2afdb0bea5fe02d5e464541e09bc9147189317c6f849cc56059d6ae96e3e4b2a30cd8d0bc7b0e1ecacb573cfcdd4
 WHIRLPOOL 
e3f054eda83301b9e4b5170bf9c56895756e4ac78a1c6256467c990fafccaeadec5f7ca54f1bf118bcb950f25db63df6c0972a138d36a10a0a9cfdf688eb207b
 DIST sqlite-doc-3120200.zip 5416790 SHA256 
67c640c4b01b961016717db61e3e43c63c33248c78ce0de9f10b88ea7ce97670 SHA512 
4ded937565b2d9b63ae55495d4b536bc0056e0d9aa7119ee54ddea127c42ba7de17986db7b85c172043fab1112132cbc126a102b248770fca6cde9a8fda438ae
 WHIRLPOOL 
7eefecb6d0450c85ec3f30cdeb853117f4067e1bace7d3c0524e5c6cb13d2e31772211aec8562f972491da413d9bd79022bc29c16968b086562e7f17bff984eb
@@ -14,6 +15,7 @@ DIST sqlite-doc-3140100.zip 5689913 SHA256 
036203c71ca5796fd80b9d9d3bd710f698da3
 DIST sqlite-doc-3140200.zip 5386739 SHA256 
421d2ea3d288dd301ec98155a6765d6bc8ce93b9a3ae82bac56a21cdd91190c2 SHA512 
4acd9818cc864332cbc57c9533d45c26d62f5c62ab9dff3f0fb1bb98530fe974f83699ccc0b098b14bcbfd718a2aa6b4d3b7c2ca880e4097d9b0833b8d902069
 WHIRLPOOL 
b2593b17da42d41425d5579d36193945dc20d7bc11b271c0d94f005fef06352d3bf8b1c2963b9b811ba8f46190f35a9ea61080c09e765b28e9c7330ca613f3e6
 DIST sqlite-doc-3150100.zip 5461172 SHA256 
121363c75da7f6c8988f70dfa5bed5f0f06b5c9d37b4e2230316c55a80760825 SHA512 
fa58e69d74cc816e4541385ad0a62b1987eb1abf4cb325867500030b4fa8a5058a63133314aef685a2158e9171f98a557d555e99a13417bc7bf8240da7feda30
 WHIRLPOOL 
6eac94d6c71b28850592a9135a487d0d69a74c7d366f072d02f02de2091fe8169469b4ccba0605d555d10c5549cca6138d5938ad03dc5b453d3a342fb43d8101
 DIST sqlite-doc-3150200.zip 5464066 SHA256 
d231fb3a7c890d2107b60859d4f626abfcd5cf82e7f3abc1f32dc6748ac54421 SHA512 
c0fd3325c4d73c86a07abe126a317e4b3acbf5dfe88c0e70de5a9b54dace8b1ca1469fe559a5d0fc1781586581abe51a4350a96f6498d02db1dfce4470cf0496
 WHIRLPOOL 
7b09777bceab8b8cd70fd49531c2e5676aaa0a14b0bc788a571e594e03956611b25400e85989a0785faefd17cf0ff736e01b47fac7523d7af3d5afd94a473941
+DIST sqlite-doc-3160200.zip 5521023 SHA256 
c13ffbb6019f3849b251c22358f31ccb862a842c0a2379f552f2935600157dcb SHA512 
b79d21074d1ab154e3b324fb2943f24321ad5cdbc6e2030f1d21940ae46538462af049e0e0cd7c6cf96dec2c59708eaf70aa4cb3c84ba1a0e87238ffcf31fca2
 WHIRLPOOL 
4d07279b8f186c4a015324021d60f3e76840594a35a2466cc023cd3ef32b5b01572d8a83db5d96f7281c617a8384485bdef60d390e1c12c4ecbc7e0223e1a194
 DIST sqlite-src-3120000.zip 9367749 SHA256 
d891e7ffd56cd97d069a6ed99d7e85cbe655b0a97ca6b5398c7806e888642df1 SHA512 
9669e33e328b826f4692725ec09e21d85f4f2c386c624a81b0535f41ca7d2f996ebf5018db8ecdfdac18cff39a881a953111801499705dfb599f00e3bb5d10e4
 WHIRLPOOL 
865aaecbe331ec93b1a8c5b965c3edc43d35994c2db79d336febb27860ee91d68753d3ea274b4639f3e05d3f0a589fb21aedac33bc2120a4de8d094383d7b923
 DIST sqlite-src-3120100.zip 9368459 SHA256 
49b9819683f8f7329a78d2008e3f7c4e02126b556b95e5dfe3be102b9e741cff SHA512 
6d0d7230343ca460215b5764d4a546631ddc2bcfc0777051379fb4632ccf9c36a53d26eda6811823156be166643c001c994a0f52498c6196ed13b34e931d55e1
 WHIRLPOOL 
e41fd7a1ba870efb5421657975990c1d7e1ecc27023882771474a62e82b2ae305bc3d0b8556e0627de886d35e1b375fec223b3f70582d64fc5345c525b293131
 DIST sqlite-src-3120200.zip 9370396 SHA256 
2c16caa653e57f3c71873aa88797c97117981d6b0974254ce24d933dd27f9a86 SHA512 
6cc9718c23ca3f65a42cc715eb67c8d174ecf0e397457efb6bfc5bd2efc9a51ea2f84266d31826068bf46efc550eb277b3c8e93cb85c5d23645e8b8ae4e2fc07
 WHIRLPOOL 
ffdbbc384189f0d62a93ee8219051ff936b7c0c2fd39449f6ff72a734ab219f23f049648de7c0ec510a74aad85ba07ef0c8bebea4c3b83e043464744d2c039f4
@@ -22,3 +24,4 @@ DIST sqlite-src-3140100.zip 9574478 SHA256 
9411f67f383256d8d1520bac727b9e96eed54
 DIST sqlite-src-3140200.zip 9577094 SHA256 
52507e20c2757b24b703b43ede77ce464c8106c1658a5b357974c435aa0677a6 SHA512 
d68412bceec463674790adb4388988dd4e1db40b095ba3f88cc3404979191930805b0a46603ef0b81ab41657167b3efa904535c0516170e2fc8c825a2729946c
 WHIRLPOOL 
7084e7df53edf22de6fca51c0dbf12c16e3cb4b1ee62251e72a4a4820b6fdafee188654b2a3c5ecd2ae1054cf7f13b5e4dedad18eb94f307960c4a5d7cb3495c
 DIST sqlite-src-3150100.zip 9632944 SHA256 
423a73936931c5148a4812ee7d82534ec7d998576ea1b4e1573af91ec15a4b01 SHA512 
c659d52287b8f9ae86d327490feeb4dad824712c3827483688b72fd43e067139ec5434086cf02e9f8f375adf6967337ebdd6aa696698ed5936b27ece01cff8a6
 WHIRLPOOL 
8ae9b7c56e4a8c22c2dba1d9656f6735610a7b8b9cd12de6417f1c6cd77e1dc5341ace9aef68ed2813f7b7d43583190312c8097186f58bcd51237d73cc7def49
 DIST sqlite-src-3150200.zip 9635796 SHA256 
38a1e867b5b1a58ba3731a63ffe69a2271d79bd0723d21c5a9a71e4cb7452a83 SHA512 
9ee97b2822853bb2dbf4ceaf011864e1afeb1deef7a668f2f31d5a6d1a9aab4a7127c6d54b4fa7288b21c8e849989bf24c53ea6de483103f9158d07dfb8ca85a
 WHIRLPOOL 
e9be2d778bed657b36c99e86ba16b999a4773ae45b95dfab2336df0a16883b079aeac6cf50d586d847f273ace85551709f4ee14621517e1859c67e72fcd93230
+DIST sqlite-src-3160200.zip 10081950 SHA256 
ee77c2cc5cc4a7b0a746a1d4496f7aee0d71c558a3bbfcf8e9e0b35416910337 SHA512 
db49551c09830cf4d8997f0a623deeed9f85db5f27e6ca9d8aa5812a23c1466bbcdf8bb56cf009511f72cafec8f09a305127123f54d90437b28770dac34a0897
 WHIRLPOOL 
b8cc52d5111bde34dae02391be8d83f9e703672b2101b36f5409e9acc23743c00561b02bd14b098e29972077fa1866a506d6343b58e4897ca07dac0bb60f4367

diff --git a/dev-db/sqlite/files/sqlite-3.16.0-full_tarball-build.patch 
b/dev-db/sqlite/files/sqlite-3.16.0-full_tarball-build.patch
new file mode 100644
index 00000000..60907e7
--- /dev/null
+++ b/dev-db/sqlite/files/sqlite-3.16.0-full_tarball-build.patch
@@ -0,0 +1,147 @@
+Link executables against libsqlite3.so.
+Increase timeout for fuzzcheck.
+Fix building with dlopen() not available.
+
+--- Makefile.in
++++ Makefile.in
+@@ -562,6 +562,7 @@
+ #
+ SHELL_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4
+ # SHELL_OPT += -DSQLITE_ENABLE_FTS5
++SHELL_OPT += -DSQLITE_ENABLE_DBSTAT_VTAB
+ SHELL_OPT += -DSQLITE_ENABLE_EXPLAIN_COMMENTS
+ SHELL_OPT += -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
+ FUZZERSHELL_OPT = -DSQLITE_ENABLE_JSON1
+@@ -586,25 +587,25 @@
+ 
+ libtclsqlite3.la:     tclsqlite.lo libsqlite3.la
+       $(LTLINK) -no-undefined -o $@ tclsqlite.lo \
+-              libsqlite3.la @TCL_STUB_LIB_SPEC@ $(TLIBS) \
++              libsqlite3.la @TCL_STUB_LIB_SPEC@ \
+               -rpath "$(TCLLIBDIR)" \
+               -version-info "8:6:8" \
+               -avoid-version
+ 
+-sqlite3$(TEXE):       $(TOP)/src/shell.c sqlite3.c
+-      $(LTLINK) $(READLINE_FLAGS) $(SHELL_OPT) -o $@ \
+-              $(TOP)/src/shell.c sqlite3.c \
+-              $(LIBREADLINE) $(TLIBS) -rpath "$(libdir)"
++sqlite3$(TEXE):       $(TOP)/src/shell.c libsqlite3.la
++      $(LTLINK) $(READLINE_FLAGS) -o $@ \
++              $(TOP)/src/shell.c libsqlite3.la \
++              $(LIBREADLINE)
+ 
+-sqldiff$(TEXE):       $(TOP)/tool/sqldiff.c sqlite3.lo sqlite3.h
+-      $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c sqlite3.lo $(TLIBS)
++sqldiff$(TEXE):       $(TOP)/tool/sqldiff.c libsqlite3.la
++      $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c libsqlite3.la
+ 
+-dbhash$(TEXE):        $(TOP)/tool/dbhash.c sqlite3.lo sqlite3.h
+-      $(LTLINK) -o $@ $(TOP)/tool/dbhash.c sqlite3.lo $(TLIBS)
++dbhash$(TEXE):        $(TOP)/tool/dbhash.c libsqlite3.la
++      $(LTLINK) -o $@ $(TOP)/tool/dbhash.c libsqlite3.la
+ 
+-scrub$(TEXE): $(TOP)/ext/misc/scrub.c sqlite3.lo
++scrub$(TEXE): $(TOP)/ext/misc/scrub.c libsqlite3.la
+       $(LTLINK) -o $@ -I. -DSCRUB_STANDALONE \
+-              $(TOP)/ext/misc/scrub.c sqlite3.lo $(TLIBS)
++              $(TOP)/ext/misc/scrub.c libsqlite3.la
+ 
+ srcck1$(BEXE):        $(TOP)/tool/srcck1.c
+       $(BCC) -o srcck1$(BEXE) $(TOP)/tool/srcck1.c
+@@ -679,7 +680,7 @@
+ # Rule to build the amalgamation
+ #
+ sqlite3.lo:   sqlite3.c
+-      $(LTCOMPILE) $(TEMP_STORE) -c sqlite3.c
++      $(LTCOMPILE) $(SHELL_OPT) $(TEMP_STORE) -c sqlite3.c
+ 
+ # Rules to build the LEMON compiler generator
+ #
+@@ -1105,13 +1106,13 @@
+ 
+ # Fuzz testing
+ fuzztest:     fuzzcheck$(TEXE) $(FUZZDATA)
+-      ./fuzzcheck$(TEXE) $(FUZZDATA)
++      ./fuzzcheck$(TEXE) --timeout 3600 $(FUZZDATA)
+ 
+ fastfuzztest: fuzzcheck$(TEXE) $(FUZZDATA)
+-      ./fuzzcheck$(TEXE) --limit-mem 100M $(FUZZDATA)
++      ./fuzzcheck$(TEXE) --limit-mem 100M --timeout 3600 $(FUZZDATA)
+ 
+ valgrindfuzz: fuzzcheck$(TEXT) $(FUZZDATA)
+-      valgrind ./fuzzcheck$(TEXE) --cell-size-check --limit-mem 10M --timeout 
600 $(FUZZDATA)
++      valgrind ./fuzzcheck$(TEXE) --cell-size-check --limit-mem 10M --timeout 
3600 $(FUZZDATA)
+ 
+ # The veryquick.test TCL tests.
+ #
+@@ -1141,32 +1142,31 @@
+ smoketest:    $(TESTPROGS) fuzzcheck$(TEXE)
+       ./testfixture$(TEXE) $(TOP)/test/main.test $(TESTOPTS)
+ 
+-sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl
++sqlite3_analyzer.c:   $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl
+       echo "#define TCLSH 2" > $@
+-      echo "#define SQLITE_ENABLE_DBSTAT_VTAB 1" >> $@
+-      cat sqlite3.c $(TOP)/src/tclsqlite.c >> $@
++      cat $(TOP)/src/tclsqlite.c >> $@
+       echo "static const char *tclsh_main_loop(void){" >> $@
+       echo "static const char *zMainloop = " >> $@
+       $(TCLSH_CMD) $(TOP)/tool/tostr.tcl $(TOP)/tool/spaceanal.tcl >> $@
+       echo "; return zMainloop; }" >> $@
+ 
+-sqlite3_analyzer$(TEXE): sqlite3_analyzer.c
+-      $(LTLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TLIBS)
++sqlite3_analyzer$(TEXE):      sqlite3_analyzer.c libsqlite3.la
++      $(LTLINK) sqlite3_analyzer.c -o $@ libsqlite3.la $(LIBTCL)
+ 
+-showdb$(TEXE):        $(TOP)/tool/showdb.c sqlite3.lo
+-      $(LTLINK) -o $@ $(TOP)/tool/showdb.c sqlite3.lo $(TLIBS)
++showdb$(TEXE):        $(TOP)/tool/showdb.c libsqlite3.la
++      $(LTLINK) -o $@ $(TOP)/tool/showdb.c libsqlite3.la
+ 
+-showstat4$(TEXE):     $(TOP)/tool/showstat4.c sqlite3.lo
+-      $(LTLINK) -o $@ $(TOP)/tool/showstat4.c sqlite3.lo $(TLIBS)
++showstat4$(TEXE):     $(TOP)/tool/showstat4.c libsqlite3.la
++      $(LTLINK) -o $@ $(TOP)/tool/showstat4.c libsqlite3.la
+ 
+-showjournal$(TEXE):   $(TOP)/tool/showjournal.c sqlite3.lo
+-      $(LTLINK) -o $@ $(TOP)/tool/showjournal.c sqlite3.lo $(TLIBS)
++showjournal$(TEXE):   $(TOP)/tool/showjournal.c
++      $(LTLINK) -o $@ $(TOP)/tool/showjournal.c
+ 
+-showwal$(TEXE):       $(TOP)/tool/showwal.c sqlite3.lo
+-      $(LTLINK) -o $@ $(TOP)/tool/showwal.c sqlite3.lo $(TLIBS)
++showwal$(TEXE):       $(TOP)/tool/showwal.c
++      $(LTLINK) -o $@ $(TOP)/tool/showwal.c
+ 
+-changeset$(TEXE):     $(TOP)/ext/session/changeset.c sqlite3.lo
+-      $(LTLINK) -o $@ $(TOP)/ext/session/changeset.c sqlite3.lo $(TLIBS)
++changeset$(TEXE):     $(TOP)/ext/session/changeset.c libsqlite3.la
++      $(LTLINK) -o $@ $(TOP)/ext/session/changeset.c libsqlite3.la
+ 
+ rollback-test$(TEXE): $(TOP)/tool/rollback-test.c sqlite3.lo
+       $(LTLINK) -o $@ $(TOP)/tool/rollback-test.c sqlite3.lo $(TLIBS)
+@@ -1180,8 +1180,8 @@
+ speedtest1$(TEXE):    $(TOP)/test/speedtest1.c sqlite3.lo
+       $(LTLINK) -o $@ $(TOP)/test/speedtest1.c sqlite3.lo $(TLIBS)
+ 
+-rbu$(EXE): $(TOP)/ext/rbu/rbu.c $(TOP)/ext/rbu/sqlite3rbu.c sqlite3.lo 
+-      $(LTLINK) -I. -o $@ $(TOP)/ext/rbu/rbu.c sqlite3.lo $(TLIBS)
++rbu$(EXE):    $(TOP)/ext/rbu/rbu.c libsqlite3.la
++      $(LTLINK) -I. -o $@ $(TOP)/ext/rbu/rbu.c libsqlite3.la
+ 
+ loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la
+       $(LTLINK) $(TOP)/tool/loadfts.c libsqlite3.la -o $@ $(TLIBS)
+--- configure.ac
++++ configure.ac
+@@ -584,6 +584,9 @@
+ if test "${use_loadextension}" = "yes" ; then
+   OPT_FEATURE_FLAGS=""
+   AC_SEARCH_LIBS(dlopen, dl)
++  if test "${ac_cv_search_dlopen}" = "no" ; then
++    OPT_FEATURE_FLAGS="-DSQLITE_OMIT_LOAD_EXTENSION=1"
++  fi
+ else
+   OPT_FEATURE_FLAGS="-DSQLITE_OMIT_LOAD_EXTENSION=1"
+ fi

diff --git a/dev-db/sqlite/files/sqlite-3.16.0-nonfull_tarball-build.patch 
b/dev-db/sqlite/files/sqlite-3.16.0-nonfull_tarball-build.patch
new file mode 100644
index 00000000..81ef29d
--- /dev/null
+++ b/dev-db/sqlite/files/sqlite-3.16.0-nonfull_tarball-build.patch
@@ -0,0 +1,14 @@
+Fix building with dlopen() not available.
+
+--- configure.ac
++++ configure.ac
+@@ -102,6 +102,9 @@
+   [], [enable_dynamic_extensions=yes])
+ if test x"$enable_dynamic_extensions" != "xno"; then
+   AC_SEARCH_LIBS(dlopen, dl)
++  if test "${ac_cv_search_dlopen}" = "no" ; then
++    DYNAMIC_EXTENSION_FLAGS=-DSQLITE_OMIT_LOAD_EXTENSION=1
++  fi
+ else
+   DYNAMIC_EXTENSION_FLAGS=-DSQLITE_OMIT_LOAD_EXTENSION=1
+ fi

diff --git a/dev-db/sqlite/sqlite-3.16.2.ebuild 
b/dev-db/sqlite/sqlite-3.16.2.ebuild
new file mode 100644
index 00000000..9605372
--- /dev/null
+++ b/dev-db/sqlite/sqlite-3.16.2.ebuild
@@ -0,0 +1,261 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+
+inherit autotools eutils flag-o-matic multilib multilib-minimal 
toolchain-funcs versionator
+
+SRC_PV="$(printf "%u%02u%02u%02u" $(get_version_components))"
+DOC_PV="${SRC_PV}"
+# DOC_PV="$(printf "%u%02u%02u00" $(get_version_components 
$(get_version_component_range 1-3)))"
+
+DESCRIPTION="A SQL Database Engine in a C Library"
+HOMEPAGE="https://sqlite.org/";
+SRC_URI="doc? ( https://sqlite.org/2017/${PN}-doc-${DOC_PV}.zip )
+       tcl? ( https://sqlite.org/2017/${PN}-src-${SRC_PV}.zip )
+       test? ( https://sqlite.org/2017/${PN}-src-${SRC_PV}.zip )
+       tools? ( https://sqlite.org/2017/${PN}-src-${SRC_PV}.zip )
+       !tcl? ( !test? ( !tools? ( 
https://sqlite.org/2017/${PN}-autoconf-${SRC_PV}.tar.gz ) ) )"
+
+LICENSE="public-domain"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd 
~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux 
~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris 
~x64-solaris ~x86-solaris"
+IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
+
+RDEPEND="icu? ( dev-libs/icu:0=[${MULTILIB_USEDEP}] )
+       readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] )
+       tcl? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )
+       tools? ( dev-lang/tcl:0=[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+       doc? ( app-arch/unzip )
+       tcl? ( app-arch/unzip )
+       test? (
+               app-arch/unzip
+               dev-lang/tcl:0[${MULTILIB_USEDEP}]
+       )
+       tools? ( app-arch/unzip )"
+
+full_tarball() {
+       use tcl || use test || use tools
+}
+
+pkg_setup() {
+       if full_tarball; then
+               S="${WORKDIR}/${PN}-src-${SRC_PV}"
+       else
+               S="${WORKDIR}/${PN}-autoconf-${SRC_PV}"
+       fi
+}
+
+src_prepare() {
+       if full_tarball; then
+               eapply -p0 "${FILESDIR}/${PN}-3.16.0-full_tarball-build.patch"
+
+               eapply_user
+
+               # Fix AC_CHECK_FUNCS.
+               # 
https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
+               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"
+       else
+               eapply -p0 
"${FILESDIR}/${PN}-3.16.0-nonfull_tarball-build.patch"
+
+               eapply_user
+
+               # Fix AC_CHECK_FUNCS.
+               # 
https://mailinglists.sqlite.org/cgi-bin/mailman/private/sqlite-dev/2016-March/002762.html
+               sed \
+                       -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])/" \
+                       -e "/AC_CHECK_FUNCS(posix_fallocate)/d" \
+                       -i configure.ac || die "sed failed"
+       fi
+
+       eautoreconf
+
+       multilib_copy_sources
+}
+
+multilib_src_configure() {
+       local CPPFLAGS="${CPPFLAGS}" options=()
+
+       options+=(
+               --enable-$(full_tarball && echo load-extension || echo 
dynamic-extensions)
+               --enable-threadsafe
+       )
+       if ! full_tarball; then
+               options+=(--disable-static-shell)
+       fi
+
+       # Support detection of misuse of SQLite API.
+       # https://sqlite.org/compile.html#enable_api_armor
+       append-cppflags -DSQLITE_ENABLE_API_ARMOR
+
+       # Support column metadata functions.
+       # https://sqlite.org/c3ref/column_database_name.html
+       append-cppflags -DSQLITE_ENABLE_COLUMN_METADATA
+
+       # Support dbstat virtual table.
+       # https://sqlite.org/dbstat.html
+       append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB
+
+       # Support comments in output of EXPLAIN.
+       # https://sqlite.org/compile.html#enable_explain_comments
+       append-cppflags -DSQLITE_ENABLE_EXPLAIN_COMMENTS
+
+       # Support Full-Text Search versions 3, 4 and 5.
+       # https://sqlite.org/fts3.html
+       # https://sqlite.org/fts5.html
+       append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS 
-DSQLITE_ENABLE_FTS4
+       options+=(--enable-fts5)
+
+       # Support hidden columns.
+       append-cppflags -DSQLITE_ENABLE_HIDDEN_COLUMNS
+
+       # Support JSON1 extension.
+       # https://sqlite.org/json1.html
+       append-cppflags -DSQLITE_ENABLE_JSON1
+
+       # Support memsys5 memory allocator.
+       # https://sqlite.org/malloc.html#memsys5
+       append-cppflags -DSQLITE_ENABLE_MEMSYS5
+
+       # Support Resumable Bulk Update extension.
+       # https://sqlite.org/rbu.html
+       append-cppflags -DSQLITE_ENABLE_RBU
+
+       # Support R*Trees.
+       # https://sqlite.org/rtree.html
+       append-cppflags -DSQLITE_ENABLE_RTREE
+
+       # Support scan status functions.
+       # https://sqlite.org/c3ref/stmt_scanstatus.html
+       # https://sqlite.org/c3ref/stmt_scanstatus_reset.html
+       append-cppflags -DSQLITE_ENABLE_STMT_SCANSTATUS
+
+       # Support Session extension.
+       # https://sqlite.org/sessionintro.html
+       options+=(--enable-session)
+
+       # Support unknown() function.
+       # https://sqlite.org/compile.html#enable_unknown_sql_function
+       append-cppflags -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
+
+       # Support unlock notification.
+       # https://sqlite.org/unlock_notify.html
+       append-cppflags -DSQLITE_ENABLE_UNLOCK_NOTIFY
+
+       # Support soundex() function.
+       # https://sqlite.org/lang_corefunc.html#soundex
+       append-cppflags -DSQLITE_SOUNDEX
+
+       # debug USE flag.
+       if full_tarball; then
+               options+=($(use_enable debug))
+       else
+               if use debug; then
+                       append-cppflags -DSQLITE_DEBUG
+               else
+                       append-cppflags -DNDEBUG
+               fi
+       fi
+
+       # icu USE flag.
+       if use icu; then
+               # Support ICU extension.
+               # https://sqlite.org/compile.html#enable_icu
+               append-cppflags -DSQLITE_ENABLE_ICU
+               if full_tarball; then
+                       sed -e "s/^TLIBS = @LIBS@/& -licui18n -licuuc/" -i 
Makefile.in || die "sed failed"
+               else
+                       sed -e "s/^LIBS = @LIBS@/& -licui18n -licuuc/" -i 
Makefile.in || die "sed failed"
+               fi
+       fi
+
+       # readline USE flag.
+       options+=(
+               --disable-editline
+               $(use_enable readline)
+       )
+       if full_tarball && use readline; then
+               
options+=(--with-readline-inc="-I${EPREFIX}/usr/include/readline")
+       fi
+
+       # secure-delete USE flag.
+       if use secure-delete; then
+               # Enable secure_delete pragma by default.
+               # https://sqlite.org/pragma.html#pragma_secure_delete
+               append-cppflags -DSQLITE_SECURE_DELETE
+       fi
+
+       # static-libs USE flag.
+       options+=($(use_enable static-libs static))
+
+       # tcl, test, tools USE flags.
+       if full_tarball; then
+               options+=(--enable-tcl)
+       fi
+
+       if [[ "${CHOST}" == *-mint* ]]; then
+               append-cppflags -DSQLITE_OMIT_WAL
+       fi
+
+       econf "${options[@]}"
+}
+
+multilib_src_compile() {
+       emake HAVE_TCL="$(usex tcl 1 "")" 
TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}"
+
+       if use tools && multilib_is_native_abi; then
+               emake changeset dbhash rbu scrub showdb showjournal showstat4 
showwal sqldiff sqlite3_analyzer
+       fi
+}
+
+multilib_src_test() {
+       if [[ "${EUID}" -eq 0 ]]; then
+               ewarn "Skipping tests due to root permissions"
+               return
+       fi
+
+       emake HAVE_TCL="$(usex tcl 1 "")" $(use debug && echo fulltest || echo 
test)
+}
+
+multilib_src_install() {
+       emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")" 
TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install
+
+       if use tools && multilib_is_native_abi; then
+               install_tool() {
+                       if [[ -f ".libs/${1}" ]]; then
+                               newbin ".libs/${1}" "${2}"
+                       else
+                               newbin "${1}" "${2}"
+                       fi
+               }
+
+               install_tool changeset sqlite3-changeset
+               install_tool dbhash sqlite3-db-hash
+               install_tool rbu sqlite3-rbu
+               install_tool scrub sqlite3-scrub
+               install_tool showdb sqlite3-show-db
+               install_tool showjournal sqlite3-show-journal
+               install_tool showstat4 sqlite3-show-stat4
+               install_tool showwal sqlite3-show-wal
+               install_tool sqldiff sqlite3-diff
+               install_tool sqlite3_analyzer sqlite3-analyzer
+
+               unset -f install_tool
+       fi
+}
+
+multilib_src_install_all() {
+       prune_libtool_files
+
+       doman sqlite3.1
+
+       if use doc; then
+               rm "${WORKDIR}/${PN}-doc-${DOC_PV}/"*.{db,txt}
+               (
+                       docinto html
+                       dodoc -r "${WORKDIR}/${PN}-doc-${DOC_PV}/"*
+               )
+       fi
+}

Reply via email to