diff options
author | George Rawlinson | 2021-10-30 06:37:03 +0000 |
---|---|---|
committer | George Rawlinson | 2021-10-30 06:37:03 +0000 |
commit | ee1fe5f60ff0182ea7b2b0dc5fd42e7af5155e08 (patch) | |
tree | c126ef0f2abc9007df6ae49f5746a6ceb7e39ff2 | |
download | aur-ee1fe5f60ff0182ea7b2b0dc5fd42e7af5155e08.tar.gz |
addpkg: duckdb 0.3.0-1
-rw-r--r-- | .SRCINFO | 30 | ||||
-rw-r--r-- | PKGBUILD | 73 |
2 files changed, 103 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..b6b97e29d328 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,30 @@ +pkgbase = duckdb + pkgdesc = A high-performance analytical database system + pkgver = 0.3.0 + pkgrel = 1 + url = https://duckdb.org + arch = x86_64 + license = MIT + makedepends = git + makedepends = cmake + makedepends = python-setuptools + makedepends = pybind11 + makedepends = python-numpy + makedepends = python-pandas + makedepends = libutf8proc + makedepends = python-pip + makedepends = python-wheel + makedepends = python-setuptools-scm + depends = gcc-libs + depends = openssl + conflicts = duckdb-git + source = duckdb::git+https://github.com/duckdb/duckdb.git#commit=46a0fc50aa00ac019aee2157cf3382b85993f728 + b2sums = SKIP + +pkgname = duckdb + +pkgname = python-duckdb + pkgdesc = A high-performance analytical database system (Python API) + depends = python + optdepends = python-numpy + optdepends = python-pandas diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..63e101c1e4e7 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,73 @@ +# Maintainer: George Rawlinson <grawlinson@archlinux.org> + +pkgbase=duckdb +pkgname=('duckdb' 'python-duckdb') +pkgver=0.3.0 +pkgrel=1 +pkgdesc="A high-performance analytical database system" +arch=('x86_64') +url="https://duckdb.org" +license=('MIT') +depends=('gcc-libs' 'openssl') +makedepends=('git' 'cmake' 'python-setuptools' 'pybind11' 'python-numpy' 'python-pandas' 'libutf8proc' 'python-pip' 'python-wheel' 'python-setuptools-scm') +conflicts=('duckdb-git') +_commit='46a0fc50aa00ac019aee2157cf3382b85993f728' +source=("$pkgbase::git+https://github.com/duckdb/duckdb.git#commit=$_commit") +b2sums=('SKIP') + +pkgver() { + cd "$pkgbase" + git describe --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + cd "$pkgbase" + + python "scripts/amalgamation.py" --extended + + cmake -S . -B "$srcdir/build" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_VISUALIZER_EXTENSION=1 \ + -DBUILD_ICU_EXTENSION=1 \ + -DBUILD_TPCH_EXTENSION=1 \ + -DBUILD_TPCDS_EXTENSION=1 \ + -DBUILD_FTS_EXTENSION=1 \ + -DBUILD_HTTPFS_EXTENSION=1 \ + -DBUILD_PARQUET_EXTENSION=1 \ + -DBUILD_BENCHMARKS=1 \ + -DBUILD_REST=1 \ + -DBUILD_TPCE=1 \ + -DAMALGAMATION_BUILD=1 +} + +build() { + cmake --build "$srcdir/build" + + python "$srcdir/$pkgbase/tools/pythonpkg/setup.py" build +} + +package_duckdb() { + DESTDIR="$pkgdir" cmake --install build + + # sqlite wrapper + install -vDm755 -t "$pkgdir/usr/lib" build/tools/sqlite3_api_wrapper/libsqlite3_api_wrapper.so + + # license + install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgbase" "$pkgbase/LICENSE" +} + +package_python-duckdb() { + pkgdesc+=" (Python API)" + depends=('python') + optdepends=('python-numpy' 'python-pandas') + + # library + python "$pkgbase/tools/pythonpkg/setup.py" install --root="$pkgdir" --optimize=1 --skip-build + + # license + install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase/LICENSE" + + # remove cruft + rm -rf "$pkgdir/usr/duckdb" "$pkgdir/usr/"*.list +} |