forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-db/sqlite: Version bump (3.30.1).
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <[email protected]> Signed-off-by: Mike Gilbert <[email protected]>
- Loading branch information
Showing
2 changed files
with
391 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,9 @@ | ||
DIST sqlite-autoconf-3280000.tar.gz 2810415 BLAKE2B e1af03476d97f96ef78d4e0a9df6ae69a06fb08e48046c843ed668b3f8c00c58263df07a4e8a22a1c7cfc920fd005fa6c2525dceeec4f724b43df7589ca3f777 SHA512 e800c0d9e6c8c01ccf1d714c6c4da4b98e9610c4c06557dda6393d0792a8ae09788703d4a74dcb21844c49b3629ff7ed95a4a86ff79872aafd2b49c672c7a570 | ||
DIST sqlite-autoconf-3290000.tar.gz 2833613 BLAKE2B b68a4f9bfe90653f5ce9dbf94b44cecc843fbb639883a7be9dd40150749f8d2eca0c231b215137d2f8da78d33356d72640a943ba06516c6d7c10ebd04cae4766 SHA512 85dcaa72cc2476c628e801d4ce46cf10ed8997f56cb0334062df5553f18c29d607883a1049bf75258204f2f53a29a02a01f014dcca383b05dfac1e2123778024 | ||
DIST sqlite-autoconf-3300100.tar.gz 2848951 BLAKE2B 3a541a2b07ebbaf7ddca4693b71765e2ecd11974dd64b4a7a19eaee4eea8a17a6004c69f3b2163213fe7568480152709745e029107711813d4bdd41052763cd1 SHA512 9ec0283c417fb0323b0e43550af2a49e9a63988e4212c27ea62cc9da3534caa6faf5bdc7e051b6772c4ce61560a433b3d3288b68e05e9ba8495f61a3bcebda3e | ||
DIST sqlite-doc-3280000.zip 9421770 BLAKE2B 695eab96f718307a7aff8a171d9e416ddb4b17039ef7230a458dc7d256e2f07a5b41d3aa1a3f085e5e418c297b5dd1d2ba5e4827434329d1ed61d3dd1f618f3d SHA512 83e23dff00614d31d501c66c29d8d4aa780b38859242b58937243235d185fe3db2f9f3c1accf9bf2df0b457a6e32612a00e82f503a8665aad4f19602e2b36396 | ||
DIST sqlite-doc-3290000.zip 9415641 BLAKE2B 97fef1f01d3e7730e5220541ad9ccdf9f8538aa43939c0f513919c8505b3a4f4b4c89eb2e04fddae80b7eeed440eb0f06f7cfd93cd56f0539bd6fdd5f47e1ff7 SHA512 ca856cf250e395d9c7e9817337adb5a16b1d96a20548a4010f5137188d35bb9d49a4a6da47bf2a696deffa68d2976dbb35a036adce19b8320e0e286876ac094f | ||
DIST sqlite-doc-3300100.zip 9485342 BLAKE2B bf5e3909a327c773106d4990b3e3be5dd63db2dbc1a7f8a7c1bd16f39bec83a6b2a98c4c56ded3b58f4087dcdcc934e542db36e142bf338a411ed7115d67d6b3 SHA512 373e843015307071443a0db5fb930f9120718f6118cc2e21b506fdc8535fbe6996e9889e8b5809ffb91257addfe778bdf3412a81e11f6bced2c5e0330337d00d | ||
DIST sqlite-src-3280000.zip 12477204 BLAKE2B e62e0f36f0bebf89990f8ec91cb1e508a5ebc92bb212eaf9c80eb0febecb5623f5938ecd31c210837314f1f9aab19a18189824f82a106799384d8184ca5f65ab SHA512 49c35c65fa686a2326e13218db583c54fa5fe8f48f0caddd11a942601803b3023f7d32ffbab16641e0d72dc9ed288ad26eaa7226c865ac54e1f181859125651f | ||
DIST sqlite-src-3290000.zip 12557725 BLAKE2B b1aeb80734a2cb7d45c6f2e278bad2996b56ecaf792a8f26322bf50aeaa430eea267f23edb1721bb80ecb6e0c8e14c7a5d8f26178d056fd23efb52f496cc03e1 SHA512 575398fbe20c6471ee2abcbde170b8d48efbb3cb2716a65f42f05c52429a45d14e8046e50c59bbf75bfe2d8f151c34abd50b440c50af571f19e19f3290b230df | ||
DIST sqlite-src-3300100.zip 12648162 BLAKE2B bb239bac9115c74778de0347b4f4e24a82f149f55fe7dea8b89eb859bfe4cf6f6c2f065f5e1741c40624bb88ecd395140064a41d475a1c64a0188990fd6248e7 SHA512 f40236d0bb25f3ea01a1192dace3b6732fb671fbdabb7cfa8d0cc2b99d21aef00ae380999fdee904501cb03304644cddfb2506951f36a2f6a83693f311c3c11d |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,388 @@ | ||
# Copyright 1999-2019 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI="7" | ||
|
||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs | ||
|
||
if [[ "${PV}" != "9999" ]]; then | ||
SRC_PV="$(printf "%u%02u%02u%02u" $(ver_rs 1- " "))" | ||
DOC_PV="${SRC_PV}" | ||
# DOC_PV="$(printf "%u%02u%02u00" $(ver_rs 1-3 " "))" | ||
fi | ||
|
||
DESCRIPTION="SQL database engine" | ||
HOMEPAGE="https://sqlite.org/" | ||
if [[ "${PV}" == "9999" ]]; then | ||
SRC_URI="" | ||
else | ||
SRC_URI="doc? ( https://sqlite.org/2019/${PN}-doc-${DOC_PV}.zip ) | ||
tcl? ( https://sqlite.org/2019/${PN}-src-${SRC_PV}.zip ) | ||
test? ( https://sqlite.org/2019/${PN}-src-${SRC_PV}.zip ) | ||
tools? ( https://sqlite.org/2019/${PN}-src-${SRC_PV}.zip ) | ||
!tcl? ( !test? ( !tools? ( https://sqlite.org/2019/${PN}-autoconf-${SRC_PV}.tar.gz ) ) )" | ||
fi | ||
|
||
LICENSE="public-domain" | ||
SLOT="3" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-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" | ||
if [[ "${PV}" == "9999" ]]; then | ||
PROPERTIES="live" | ||
fi | ||
RESTRICT="!test? ( test )" | ||
|
||
if [[ "${PV}" == "9999" ]]; then | ||
BDEPEND=">=dev-lang/tcl-8.6:0 | ||
dev-vcs/fossil" | ||
else | ||
BDEPEND="doc? ( app-arch/unzip ) | ||
tcl? ( | ||
app-arch/unzip | ||
>=dev-lang/tcl-8.6:0 | ||
) | ||
test? ( | ||
app-arch/unzip | ||
>=dev-lang/tcl-8.6:0 | ||
) | ||
tools? ( | ||
app-arch/unzip | ||
>=dev-lang/tcl-8.6:0 | ||
)" | ||
fi | ||
RDEPEND="sys-libs/zlib:0=[${MULTILIB_USEDEP}] | ||
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} | ||
test? ( >=dev-lang/tcl-8.6:0[${MULTILIB_USEDEP}] )" | ||
|
||
full_archive() { | ||
[[ "${PV}" == "9999" ]] || use tcl || use test || use tools | ||
} | ||
|
||
pkg_setup() { | ||
if [[ "${PV}" == "9999" ]]; then | ||
S="${WORKDIR}/${PN}" | ||
else | ||
if full_archive; then | ||
S="${WORKDIR}/${PN}-src-${SRC_PV}" | ||
else | ||
S="${WORKDIR}/${PN}-autoconf-${SRC_PV}" | ||
fi | ||
fi | ||
} | ||
|
||
src_unpack() { | ||
if [[ "${PV}" == "9999" ]]; then | ||
local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" | ||
addwrite "${distdir}" | ||
mkdir -p "${distdir}/fossil-src/${PN}" || die | ||
|
||
mkdir "${WORKDIR}/${PN}" || die | ||
pushd "${WORKDIR}/${PN}" > /dev/null || die | ||
if [[ ! -f "${distdir}/fossil-src/${PN}/sqlite.fossil" ]]; then | ||
einfo fossil clone --verbose https://sqlite.org/src sqlite.fossil | ||
fossil clone --verbose https://sqlite.org/src sqlite.fossil || die | ||
echo | ||
else | ||
cp -p "${distdir}/fossil-src/${PN}/sqlite.fossil" . || die | ||
einfo fossil pull --repository sqlite.fossil --verbose https://sqlite.org/src | ||
fossil pull --repository sqlite.fossil --verbose https://sqlite.org/src || die | ||
echo | ||
fi | ||
cp -p sqlite.fossil "${distdir}/fossil-src/${PN}" || die | ||
einfo fossil open --quiet sqlite.fossil | ||
fossil open --quiet sqlite.fossil || die | ||
echo | ||
popd > /dev/null || die | ||
|
||
if use doc; then | ||
mkdir "${WORKDIR}/${PN}-doc" || die | ||
pushd "${WORKDIR}/${PN}-doc" > /dev/null || die | ||
if [[ ! -f "${distdir}/fossil-src/${PN}/sqlite-doc.fossil" ]]; then | ||
einfo fossil clone --verbose https://sqlite.org/docsrc sqlite-doc.fossil | ||
fossil clone --verbose https://sqlite.org/docsrc sqlite-doc.fossil || die | ||
echo | ||
else | ||
cp -p "${distdir}/fossil-src/${PN}/sqlite-doc.fossil" . || die | ||
einfo fossil pull --repository sqlite-doc.fossil --verbose https://sqlite.org/docsrc | ||
fossil pull --repository sqlite-doc.fossil --verbose https://sqlite.org/docsrc || die | ||
echo | ||
fi | ||
cp -p sqlite-doc.fossil "${distdir}/fossil-src/${PN}" || die | ||
einfo fossil open --quiet sqlite-doc.fossil | ||
fossil open --quiet sqlite-doc.fossil || die | ||
echo | ||
popd > /dev/null || die | ||
fi | ||
else | ||
default | ||
fi | ||
} | ||
|
||
src_prepare() { | ||
if full_archive; then | ||
eapply "${FILESDIR}/${PN}-3.29.0-full_archive-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 "${FILESDIR}/${PN}-3.25.0-nonfull_archive-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 -x CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" | ||
local options=() | ||
|
||
options+=( | ||
--enable-$(full_archive && echo load-extension || echo dynamic-extensions) | ||
--enable-threadsafe | ||
) | ||
if ! full_archive; 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 sqlite_dbpage virtual table. | ||
# https://sqlite.org/compile.html#enable_dbpage_vtab | ||
append-cppflags -DSQLITE_ENABLE_DBPAGE_VTAB | ||
|
||
# Support dbstat virtual table. | ||
# https://sqlite.org/dbstat.html | ||
append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB | ||
|
||
# Support sqlite3_serialize() and sqlite3_deserialize() functions. | ||
# https://sqlite.org/compile.html#enable_deserialize | ||
# https://sqlite.org/c3ref/serialize.html | ||
# https://sqlite.org/c3ref/deserialize.html | ||
append-cppflags -DSQLITE_ENABLE_DESERIALIZE | ||
|
||
# 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 sqlite3_normalized_sql() function. | ||
# https://sqlite.org/c3ref/expanded_sql.html | ||
append-cppflags -DSQLITE_ENABLE_NORMALIZE | ||
|
||
# Support sqlite_offset() function. | ||
# https://sqlite.org/lang_corefunc.html#sqlite_offset | ||
append-cppflags -DSQLITE_ENABLE_OFFSET_SQL_FUNC | ||
|
||
# Support pre-update hook functions. | ||
# https://sqlite.org/c3ref/preupdate_count.html | ||
append-cppflags -DSQLITE_ENABLE_PREUPDATE_HOOK | ||
|
||
# Support Resumable Bulk Update extension. | ||
# https://sqlite.org/rbu.html | ||
append-cppflags -DSQLITE_ENABLE_RBU | ||
|
||
# Support R*Trees. | ||
# https://sqlite.org/rtree.html | ||
# https://sqlite.org/geopoly.html | ||
append-cppflags -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_GEOPOLY | ||
|
||
# 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 sqlite_stmt virtual table. | ||
# https://sqlite.org/stmt.html | ||
append-cppflags -DSQLITE_ENABLE_STMTVTAB | ||
|
||
# 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 LIMIT and ORDER BY clauses on DELETE and UPDATE statements. | ||
# https://sqlite.org/compile.html#enable_update_delete_limit | ||
append-cppflags -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT | ||
|
||
# Support soundex() function. | ||
# https://sqlite.org/lang_corefunc.html#soundex | ||
append-cppflags -DSQLITE_SOUNDEX | ||
|
||
# Support URI filenames. | ||
# https://sqlite.org/uri.html | ||
append-cppflags -DSQLITE_USE_URI | ||
|
||
# debug USE flag. | ||
if full_archive; 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_archive; 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_archive && 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_archive; then | ||
options+=(--enable-tcl) | ||
fi | ||
|
||
if [[ "${CHOST}" == *-mint* ]]; then | ||
append-cppflags -DSQLITE_OMIT_WAL | ||
fi | ||
|
||
if [[ "${ABI}" == "x86" ]]; then | ||
if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P -dM - < /dev/null 2> /dev/null | grep -q "^#define __SSE__ 1$"; then | ||
append-cflags -mfpmath=sse | ||
else | ||
append-cflags -ffloat-store | ||
fi | ||
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 dbdump dbhash dbtotxt index_usage rbu scrub showdb showjournal showshm showstat4 showwal sqldiff sqlite3_analyzer sqlite3_checker sqlite3_expert sqltclsh | ||
fi | ||
} | ||
|
||
multilib_src_test() { | ||
if [[ "${EUID}" -eq 0 ]]; then | ||
ewarn "Skipping tests due to root permissions" | ||
return | ||
fi | ||
|
||
local -x SQLITE_HISTORY="${T}/sqlite_history_${ABI}" | ||
|
||
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 dbdump sqlite3-db-dump | ||
install_tool dbhash sqlite3-db-hash | ||
install_tool dbtotxt sqlite3-db-to-txt | ||
install_tool index_usage sqlite3-index-usage | ||
install_tool rbu sqlite3-rbu | ||
install_tool scrub sqlite3-scrub | ||
install_tool showdb sqlite3-show-db | ||
install_tool showjournal sqlite3-show-journal | ||
install_tool showshm sqlite3-show-shm | ||
install_tool showstat4 sqlite3-show-stat4 | ||
install_tool showwal sqlite3-show-wal | ||
install_tool sqldiff sqlite3-diff | ||
install_tool sqlite3_analyzer sqlite3-analyzer | ||
install_tool sqlite3_checker sqlite3-checker | ||
install_tool sqlite3_expert sqlite3-expert | ||
install_tool sqltclsh sqlite3-tclsh | ||
|
||
unset -f install_tool | ||
fi | ||
} | ||
|
||
multilib_src_install_all() { | ||
find "${D}" -name "*.la" -type f -delete || die | ||
|
||
doman sqlite3.1 | ||
|
||
if use doc; then | ||
rm "${WORKDIR}/${PN}-doc-${DOC_PV}/"*.{db,txt} || die | ||
( | ||
docinto html | ||
dodoc -r "${WORKDIR}/${PN}-doc-${DOC_PV}/"* | ||
) | ||
fi | ||
} |