# $Id$
# Maintainer: Daniel Micay <danielmicay@gmail.com>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - makedepend on rust, configure to use local rust instead of nonexistent binary download

buildarch=4

pkgname=rust
pkgver=0.11.0
pkgrel=1
arch=('i686' 'x86_64')
pkgdesc='A safe, concurrent, practical language'
url='http://www.rust-lang.org/'
license=('MIT' 'Apache')
depends=(gcc shared-mime-info)
makedepends=(libffi perl python2 curl rust)
source=("http://static.rust-lang.org/dist/rust-${pkgver}.tar.gz"
        "http://static.rust-lang.org/dist/rust-${pkgver}.tar.gz.asc")
sha256sums=('d1b3e36448bf12b8c9289024df416de10774b6d3235d7b1d22b248ef634411ba'
            'SKIP')
install=rust.install
options=(staticlibs)

build() {
  cd rust-$pkgver

  ./configure --prefix=/usr --disable-docs --disable-rpath --disable-verify-install --enable-local-rust --local-rust-root=/usr

  # avoid python makedepend (force fallback to python2)
  sed -i 's/^PYTHONVERSION.*/PYTHONVERSION := 3/' src/llvm/Makefile.rules

  make
}

#check() {
  #cd rust-$pkgver
  #make check
#}

package() {
  cd rust-$pkgver
  make DESTDIR="$pkgdir" install

  mkdir -p "$pkgdir/usr/share/vim" "$pkgdir/usr/share/licenses/$pkgname"

  cp -a src/etc/vim "$pkgdir/usr/share/vim/vimfiles"
  find "$pkgdir/usr/share/vim" -type f -exec chmod 644 {} +
  find "$pkgdir/usr/share/vim" -type d -exec chmod 755 {} +

  install -Dm644 src/etc/zsh/_rust "$pkgdir/usr/share/zsh/site-functions/_rust"
  install -Dm644 src/etc/kate/rust.xml "$pkgdir/usr/share/apps/katepart/syntax/rust.xml"
  install -Dm644 src/etc/gedit/share/mime/packages/rust.xml \
    "$pkgdir/usr/share/mime/packages/rust.xml"
  install -Dm644 src/etc/gedit/share/gtksourceview-3.0/language-specs/rust.lang \
    "$pkgdir/usr/share/gtksourceview-3.0/language-specs/rust.lang"

  install -m644 LICENSE-APACHE "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 LICENSE-MIT "$pkgdir/usr/share/licenses/$pkgname"

  cd src/etc/emacs
  install -Dm644 rust-mode.el "$pkgdir/usr/share/emacs/site-lisp/rust-mode.el"

  cd "$pkgdir/usr"

  cd lib
  rm rustlib/manifest
  ln -sf rustlib/$CARCH-unknown-linux-gnu/lib/* .
}