# $Id$
# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: T. Jameson Little <t.jameson.little at gmail dot com>
# Contributor: Usagi Ito <usagi@WonderRabbitProject.net>
# Contributor: siasia <http://pastebin.com/qsBEmNCw>
# Contributor: Julien Nicoulaud <julien.nicoulaud@gmail.com>
# Contributor: Jacob Bang <julemand101gmail.com>

# Arch Linux ARM changes:
# - added source and sha512 for ARMv7h build of Dart

buildarch=4

pkgname=dart
pkgver=1.24.2
pkgrel=1
pkgdesc='The dart programming language SDK'
arch=('x86_64' 'i686' 'armv7h')
url='http://www.dartlang.org/'
license=('BSD')
makedepends=('setconf')
options=('!strip')
source_x86_64+=("$pkgname-$pkgver-64.zip::http://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-x64-release.zip")
source_i686+=("$pkgname-$pkgver-32.zip::http://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-ia32-release.zip")
source_armv7h+=("$pkgname-$pkgver-arm.zip::http://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-arm-release.zip")
sha512sums_x86_64=('848d0004494fa2c1a813b7530a14323b5dbb2af171eba5ff32e1abcbe4bfab4c83d412fb4cb80f6a93c2cdd94d8f1704410307cccf5a7419271bdfb57be79f37')
sha512sums_i686=('0b8ec7cde3f84ac01651dc270c0e6600fc17d7bbe563ec94cd6829328520c141d61f4bded5704ddd2e3222d0d1d7888c19a4c156d81e5484dbbbde94a96df557')
sha512ums_armv7h=('0fe30005de612699e374e4a92755352778d4b8f5e8846fbc4c5d05eedfc8c36905bc818f85ebf8ce5e26ead217c4f4519216eec5abb5b21c01c1dcc446e8c1ab')

prepare() {
  # Fix permissions
  find "$pkgname-sdk" -type d -exec chmod 0755 '{}' + \
    -or -type f -exec chmod 0644 '{}' +
  chmod +x "$pkgname-sdk/bin/"*

  cd "$pkgname-sdk/bin"

  # Configure paths
  setconf dart2js BIN_DIR "/opt/$pkgname-sdk/bin"
  setconf dart2js PROG_NAME "/opt/$pkgname-sdk/bin/dart2js"
  setconf dartanalyzer SCRIPT_DIR "/opt/$pkgname-sdk/bin"
  setconf pub BIN_DIR "/opt/$pkgname-sdk/bin"
  setconf pub SDK_DIR "/opt/$pkgname-sdk/"
  setconf dartfmt BIN_DIR "/opt/$pkgname-sdk/bin"
  setconf dartfmt SDK_DIR "/opt/$pkgname-sdk/"

  # Extract license (AUTHORS and LICENSE files are missing)
  head -n5 "../include/dart_api.h" > ../../LICENSE
}

package() {
  # Create directories
  install -d "$pkgdir"{"/opt/$pkgname-sdk",/usr/{bin,"share/doc/$pkgname-sdk"}}

  # Package the files
  cp -a "$pkgname-sdk/"* "$pkgdir/opt/$pkgname-sdk/"

  # Set up symbolic links for the executables
  for f in dart dart2js dartanalyzer pub dartfmt dartdevc; do
    ln -s "/opt/$pkgname-sdk/bin/$f" "$pkgdir/usr/bin/$f"
  done

  # Package samples and documentation
  for f in samples about.html about_files; do
    echo mv "$pkgdir/opt/$pkgname-sdk/$f" "$pkgdir/usr/share/doc/$pkgname/"
  done

  # BSD License
  install -Dm644 LICENSE \
    "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}

# vim:set ts=2 sw=2 et: