# $Id: PKGBUILD 135768 2015-06-23 16:58:48Z fyan $
# Maintainer: Felix Yan <felixonmars@archlinux.org>

pkgname=ponyc
pkgver=0.1.7
pkgrel=2
pkgdesc='An actor model, capabilities, high performance programming language.'
url='http://ponylang.org/'
arch=('x86_64')
license=('BSD')
depends=('zlib' 'ncurses' 'gcc-libs')
makedepends=('llvm')
checkdepends=('pcre2')
optdepends=('pcre2: Needed for the regex package.')
source=("http://www.ponylang.org/releases/source/ponyc-$pkgver.tar.bz2")
sha512sums=('018c77a5848efee95f2733e54995ee2f06874b8dae45c46c93066144e00dd93b12eaa56dbf1a83b7e1d8eeaac3decf9706ebe8a56f97c8d789f8ce07a7c4da78')

build() {
  make config=release prefix=/usr arch=core2
}

check() {
  make config=release prefix=/usr arch=core2 test
}

package() {
  # The makefile is very strange and requires almost as much post-correction
  # as to simply do the installation myself.  Even with patches to the
  # makefile to stop it attempting to symlink locations it has no business
  # touching.
  #make config=release prefix=/usr destdir="$pkgdir"/usr/lib/pony/"$pkgver" install

  install -Dm755 build/release/ponyc "$pkgdir"/usr/lib/pony/"$pkgver"/ponyc
  install -Dm644 build/release/libponyrt.a "$pkgdir"/usr/lib/libponyrt.a
  install -Dm644 build/release/libponyc.a "$pkgdir"/usr/lib/libponyc.a
  install -Dm644 src/libponyrt/pony.h "$pkgdir"/usr/include/pony.h

  # Ponyc is designed to read its standard packages from the same directory.
  install -dm755 "$pkgdir"/usr/bin
  ln -sf /usr/lib/pony/"$pkgver"/ponyc "$pkgdir"/usr/bin/ponyc

  cp -dr --no-preserve=ownership packages/* "$pkgdir"/usr/lib/pony/"$pkgver"

  # Let's include the examples as documentation is scarce.
  install -dm755 "$pkgdir"/usr/share/doc/pony
  cp -dr --no-preserve=ownership examples "$pkgdir"/usr/share/doc/pony

  install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
}
