temp/sqlite*: fork from alpine, downgrade to 3.34.1 (MR 2054)

Fork because the newer version 3.35 causes segfaults in the "calls" app
and others on the PinePhone.

[ci:skip-build]: already built successfully in CI
This commit is contained in:
Oliver Smith 2021-03-21 19:31:56 +01:00
parent 56a0531ad2
commit d20d4d2430
No known key found for this signature in database
GPG key ID: 5AE7F5513E0885CB
3 changed files with 226 additions and 0 deletions

68
temp/sqlite-tcl/APKBUILD Normal file
View file

@ -0,0 +1,68 @@
# Forked from Alpine: downgrade because of breakage in 3.35 (#1008)
pkgname=sqlite-tcl
pkgver=9999
_pkgver=3.34.1
pkgrel=0
pkgdesc="Sqlite Tcl Extension Architecture (TEA)"
url="https://www.sqlite.org/"
arch="all"
license="Public-Domain"
makedepends="readline-dev tcl-dev sqlite-dev libtool autoconf automake"
subpackages="$pkgname-doc"
options="!check" # no testsuite from upstream
# compute _ver
_a=${_pkgver%%.*}
_b=${_pkgver#$_a.}
_b=${_b%%.*}
_c=${_pkgver#$_a.$_b.}
_c=${_c%%.*}
case $_pkgver in
*.*.*.*)_d=${_pkgver##*.};;
*.*.*) _d=0;;
esac
[ $_b -lt 10 ] && _b=0$_b
[ $_c -lt 10 ] && _c=0$_c
[ $_d -lt 10 ] && _d=0$_d
_ver=${_a}${_b}${_c}$_d
# these variables depend on _ver being set
source="https://www.sqlite.org/2021/sqlite-autoconf-$_ver.tar.gz"
builddir="$srcdir/sqlite-autoconf-$_ver/tea"
prepare() {
default_prepare
if [ -f "$startdir"/../sqlite/APKBUILD ]; then
(
_tclver=$_pkgver
. "$startdir"/../sqlite/APKBUILD
if [ "$_tclver" != "$_pkgver" ]; then
die "sqlite version mismatch ($_tclver != $_pkgver)"
fi
)
fi
}
build() {
./configure \
--build="$CBUILD" \
--host="$CHOST" \
--prefix=/usr \
--with-system-sqlite \
--enable-threads
make
}
check() {
make check
}
package() {
make DESTDIR="$pkgdir" install
install -Dm644 license.terms \
"$pkgdir"/usr/share/licenses/$pkgname/license.terms
}
sha512sums="adaa306ebacfbeeea6efe71aa964b1dee4a05ade794c55c7afad8693ed291354e9daa2449226c4dc50fbfa5919dfc9a17dea946f01171ff63d472af78cbed987 sqlite-autoconf-3340100.tar.gz"

125
temp/sqlite/APKBUILD Normal file
View file

@ -0,0 +1,125 @@
# Forked from Alpine: downgrade because of breakage in 3.35 (#1008)
pkgname=sqlite
# NOTE: pkgver needs to correspond with sqlite-tcl
pkgver=9999
_pkgver=3.34.1
pkgrel=0
pkgdesc="C library that implements an SQL database engine"
url="https://www.sqlite.org/"
arch="all"
license="Public-Domain"
makedepends="readline-dev"
subpackages="$pkgname-static $pkgname-doc $pkgname-dev $pkgname-libs"
# compute _ver
_a=${_pkgver%%.*}
_b=${_pkgver#$_a.}
_b=${_b%%.*}
_c=${_pkgver#$_a.$_b.}
_c=${_c%%.*}
case $_pkgver in
*.*.*.*)_d=${_pkgver##*.};;
*.*.*) _d=0;;
esac
[ $_b -lt 10 ] && _b=0$_b
[ $_c -lt 10 ] && _c=0$_c
[ $_d -lt 10 ] && _d=0$_d
_ver=${_a}${_b}${_c}$_d
# these variables depend on _ver being set
builddir="$srcdir/$pkgname-autoconf-$_ver"
source="https://www.sqlite.org/2021/sqlite-autoconf-$_ver.tar.gz
license.txt
"
# secfixes:
# 3.32.1-r0:
# - CVE-2020-13434
# - CVE-2020-13435
# 3.30.1-r3:
# - CVE-2020-11655
# 3.30.1-r1:
# - CVE-2019-19242
# - CVE-2019-19244
# 3.28.0-r0:
# - CVE-2019-5018
# - CVE-2019-8457
# additional CFLAGS to set
_amalgamation="-DSQLITE_ENABLE_FTS4 \
-DSQLITE_ENABLE_FTS3_PARENTHESIS \
-DSQLITE_ENABLE_FTS3 \
-DSQLITE_ENABLE_FTS5 \
-DSQLITE_ENABLE_COLUMN_METADATA \
-DSQLITE_SECURE_DELETE \
-DSQLITE_ENABLE_UNLOCK_NOTIFY \
-DSQLITE_ENABLE_RTREE \
-DSQLITE_ENABLE_GEOPOLY \
-DSQLITE_USE_URI \
-DSQLITE_ENABLE_DBSTAT_VTAB \
-DSQLITE_MAX_VARIABLE_NUMBER=250000 \
-DSQLITE_ENABLE_JSON1"
prepare() {
if [ -f "$startdir"/../sqlite-tcl/APKBUILD ]; then
(
_sqlitever=$_pkgver
. "$startdir"/../sqlite-tcl/APKBUILD
if [ "$_sqlitever" != "$_pkgver" ]; then
warning "sqlite-tcl version mismatch ($_sqlitever != $_pkgver)"
fi
)
fi
default_prepare
}
build() {
export CFLAGS="$CFLAGS $_amalgamation"
./configure \
--build="$CBUILD" \
--host="$CHOST" \
--prefix=/usr \
--enable-threadsafe \
--enable-readline \
--enable-static \
--enable-dynamic-extensions \
--enable-fts3
# rpath removal
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make
}
check() {
make check
}
package() {
make DESTDIR="$pkgdir" install
install -Dm0644 sqlite3.1 \
"$pkgdir"/usr/share/man/man1/sqlite3.1
install -Dm644 "$srcdir"/license.txt \
"$pkgdir"/usr/share/licenses/$pkgname/license.txt
}
libs() {
replaces="sqlite"
pkgdesc="Sqlite3 library"
mkdir -p "$subpkgdir"/usr
mv "$pkgdir"/usr/lib "$subpkgdir"/usr/
}
static() {
pkgdesc="Sqlite3 static library"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.a "$subpkgdir"/usr/lib/
}
sha512sums="adaa306ebacfbeeea6efe71aa964b1dee4a05ade794c55c7afad8693ed291354e9daa2449226c4dc50fbfa5919dfc9a17dea946f01171ff63d472af78cbed987 sqlite-autoconf-3340100.tar.gz
5bde14bec5bf18cc686b8b90a8b2324c8c6600bca1ae56431a795bb34b8b5ae85527143f3b5f0c845c776bce60eaa537624104cefc3a47b3820d43083f40c6e9 license.txt"

33
temp/sqlite/license.txt Normal file
View file

@ -0,0 +1,33 @@
SQLite Copyright
SQLite is in the
Public Domain
All of the deliverable code in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
The previous paragraph applies to the deliverable code in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Portions of the documentation and some code used as part of the build process might fall under other licenses. The details here are unclear. We do not worry about the licensing of the documentation and build code so much because none of these things are part of the core deliverable SQLite library.
All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects.
Obtaining An Explicit License To Use SQLite
Even though SQLite is in the public domain and does not require a license, some users want to obtain a license anyway. Some reasons for obtaining a license include:
You are using SQLite in a jurisdiction that does not recognize the public domain.
You are using SQLite in a jurisdiction that does not recognize the right of an author to dedicate their work to the public domain.
You want to hold a tangible legal document as evidence that you have the legal right to use and distribute SQLite.
Your legal department tells you that you have to purchase a license.
If you feel like you really have to purchase a license for SQLite, Hwaci, the company that employs the architect and principal developers of SQLite, will sell you one.
Contributed Code
In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement:
The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law.
We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to:
Hwaci
6200 Maple Cove Lane
Charlotte, NC 28269
USA
A template copyright release is available in PDF or HTML. You can use this release to make future changes.
see http://www.sqlite.org/copyright.html