Date: Sunday, April 12, 2020 @ 02:35:26 Author: anatolik Revision: 613389
archrelease: copy trunk to community-staging-x86_64 Added: crystal/repos/community-staging-x86_64/ crystal/repos/community-staging-x86_64/PKGBUILD (from rev 613388, crystal/trunk/PKGBUILD) ----------+ PKGBUILD | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) Copied: crystal/repos/community-staging-x86_64/PKGBUILD (from rev 613388, crystal/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2020-04-12 02:35:26 UTC (rev 613389) @@ -0,0 +1,66 @@ +# Maintainer: Anatol Pomozov <anatol.pomo...@gmail.com> +# Contributor: Jonne Haß <m...@jhass.eu> + +pkgname=crystal +pkgver=0.34.0 +pkgrel=2 +pkgdesc='The Crystal Programming Language' +arch=(x86_64) +url='https://crystal-lang.org' +license=(Apache) +depends=(gc libatomic_ops pcre libevent llvm-libs) +makedepends=(libxml2 llvm crystal) # to compile version N we need crystal compiler of N-1 version +checkdepends=(libyaml libxml2 gmp inetutils git) +optdepends=('shards: crystal language package manager' + 'libyaml: For YAML support' + 'gmp: For BigInt support' + 'libxml2: For XML support') +source=(crystal-$pkgver.tar.gz::https://github.com/crystal-lang/crystal/archive/$pkgver.tar.gz) +sha256sums=('973293ffbcfa4fb073f6a2f833b0ce5b82b72f7899427f39d7e5610ffc9029c8') + +build() { + cd $pkgname-$pkgver + + make release=1 \ + FLAGS="--release --no-debug" \ + CRYSTAL_PATH="$srcdir/$pkgname-$pkgver/src" \ + CRYSTAL_CONFIG_VERSION="$pkgver" \ + CRYSTAL_CONFIG_PATH="lib:/usr/lib/crystal" \ + CRYSTAL_CACHE_DIR="/tmp/crystal" + make docs CRYSTAL_CACHE_DIR="/tmp/crystal" +} + +check() { + cd $pkgname-$pkgver + return # tests require too much RAM, disable it temporary + + make spec CRYSTAL_PATH="$srcdir/$pkgname-$pkgver/src" \ + CRYSTAL_CONFIG_VERSION="$pkgver" \ + CRYSTAL_CACHE_DIR="/tmp/crystal" \ + PATH=".build:$PATH" +} + +package() { + cd $pkgname-$pkgver + + # /usr/bin/crystal compiled executable + # /usr/lib/crystal/ compiler src & core libs + # /usr/share/doc/crystal/api api docs + # /usr/share/doc/crystal/samples/ samples + + install -Dm755 ".build/crystal" "$pkgdir/usr/bin/crystal" + + install -dm755 "$pkgdir/usr/lib" "$pkgdir/usr/share/man/man1" + cp -r src "$pkgdir/usr/lib/crystal" + + install -dm755 "$pkgdir/usr/share/doc/crystal" + cp -r docs "$pkgdir/usr/share/doc/crystal/api" + cp -r samples "$pkgdir/usr/share/doc/crystal/" + + install -Dm644 man/crystal.1 "$pkgdir/usr/share/man/man1/" + + install -Dm644 etc/completion.bash "$pkgdir/usr/share/bash-completion/completions/crystal" + install -Dm644 etc/completion.zsh "$pkgdir/usr/share/zsh/site-functions/_crystal" + + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +}