[arch-commits] Commit in crystal/repos (2 files)
Anatol Pomozov
anatolik at archlinux.org
Fri Sep 7 05:59:59 UTC 2018
Date: Friday, September 7, 2018 @ 05:59:59
Author: anatolik
Revision: 378421
archrelease: copy trunk to community-testing-x86_64
Added:
crystal/repos/community-testing-x86_64/
crystal/repos/community-testing-x86_64/PKGBUILD
(from rev 378420, crystal/trunk/PKGBUILD)
----------+
PKGBUILD | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 77 insertions(+)
Copied: crystal/repos/community-testing-x86_64/PKGBUILD (from rev 378420, crystal/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD (rev 0)
+++ community-testing-x86_64/PKGBUILD 2018-09-07 05:59:59 UTC (rev 378421)
@@ -0,0 +1,77 @@
+# $Id$
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+# Contributor: Jonne Haß <me at jhass.eu>
+
+pkgname=crystal
+pkgver=0.26.1
+pkgrel=1
+pkgdesc='The Crystal Programming Language'
+arch=(x86_64)
+url='http://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
+ fix_build.patch::https://github.com/crystal-lang/crystal/commit/b697de03deed7647a7bebe0e0987cb660854bdac.patch)
+sha256sums=('b7c755a7d0f49f572ae5c08b8b0139fcb1c6862c9479dfae74f00e2c8424fcb0'
+ '4f42a13ade130495e683261c5c200112dbb3f56c125dbada7533717393c69138')
+
+prepare() {
+ cd $pkgname-$pkgver
+ sed -i 's|Please install shards: https://github.com/ysbaddaden/shards|Please install shards: pacman -S shards|' src/compiler/crystal/command.cr
+
+ # https://github.com/crystal-lang/crystal/issues/6672
+ patch -p1 < ../fix_build.patch
+}
+
+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"
+}
More information about the arch-commits
mailing list