mirror of
https://github.com/ivabus/pantry
synced 2024-11-10 10:35:17 +03:00
58 lines
1.3 KiB
YAML
58 lines
1.3 KiB
YAML
distributable:
|
|
url: https://github.com/duckdb/duckdb/archive/refs/tags/v{{version}}.tar.gz
|
|
strip-components: 1
|
|
|
|
versions:
|
|
github: duckdb/duckdb/releases/tags
|
|
|
|
build:
|
|
dependencies:
|
|
cmake.org: ^3
|
|
git-scm.org: '*'
|
|
working-directory: build
|
|
script: |
|
|
# duckdb uses git to get its version
|
|
git init ..
|
|
git config user.email "bot@pkgx.dev"
|
|
git config user.name "pkgxbot"
|
|
git commit --allow-empty -mnil
|
|
git tag v{{version}}
|
|
|
|
cmake ..
|
|
make --jobs {{ hw.concurrency }}
|
|
mkdir -p "{{prefix}}"/bin
|
|
mv duckdb "{{prefix}}"/bin
|
|
env:
|
|
ARGS:
|
|
- -DCMAKE_INSTALL_PREFIX="{{prefix}}"
|
|
- -DCMAKE_BUILD_TYPE=Release
|
|
- -DBUILD_ICU_EXTENSION=1
|
|
- -DBUILD_JSON_EXTENSION=1
|
|
- -DBUILD_PARQUET_EXTENSION=1
|
|
|
|
provides:
|
|
- bin/duckdb
|
|
|
|
test:
|
|
fixture: |
|
|
CREATE TABLE weather (temp INTEGER);
|
|
INSERT INTO weather (temp) VALUES (40), (45), (50);
|
|
SELECT AVG(temp) FROM weather;
|
|
script: |
|
|
out="$(duckdb < $FIXTURE)"
|
|
exp=$(cat <<EOS
|
|
┌─────────────┐
|
|
│ avg("temp") │
|
|
│ double │
|
|
├─────────────┤
|
|
│ 45.0 │
|
|
└─────────────┘
|
|
EOS)
|
|
|
|
test "$out" = "$exp"
|
|
|
|
if [[ "$(duckdb --version)" != "v{{version}}"* ]]; then
|
|
echo "invalid version" >&2
|
|
exit 1
|
|
fi
|