# Maintainer: AlphaJack # Contributor: George Rawlinson pkgbase="duckdb" pkgname=( "duckdb" "python-duckdb" ) pkgver=0.10.0 pkgrel=1 pkgdesc="An in-process SQL OLAP database management system" arch=("x86_64" "aarch64" "armv7h") 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" ) source=("$pkgbase-$pkgver.tar.gz::https://github.com/duckdb/duckdb/archive/refs/tags/v$pkgver.tar.gz") b2sums=('49d3f34a09d2fc60b1a65ff546cfeca7a03941e1381f8365c082a56133d5a728c7b0e0f23f9688147ec297e44bc9c56ef584f91b9bd4edf3b8b5f946340a77c5') prepare() { cmake \ -S "$pkgbase-$pkgver" \ -B build \ -D CMAKE_BUILD_TYPE=Release \ -D CMAKE_INSTALL_PREFIX=/usr } build() { cmake --build build python "$pkgbase-$pkgver/tools/pythonpkg/setup.py" build } package_duckdb() { conflicts=("duckdb-git") 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-$pkgver/LICENSE" } package_python-duckdb() { pkgdesc+=" (Python API)" depends=( "python" "gcc-libs" ) optdepends=( "python-numpy" "python-pandas" ) conflicts=("python-duckdb-git") # library python "$pkgbase-$pkgver/tools/pythonpkg/setup.py" install --root="$pkgdir" --optimize=1 --skip-build # license install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" "$pkgbase-$pkgver/LICENSE" # remove cruft rm -rf "$pkgdir/usr/duckdb" "$pkgdir/usr/duckdb_build" "$pkgdir/usr/"*.list }