# Maintainer: George Rawlinson <grawlinson@archlinux.org>
# Contributor: Thayne McCombs <astrothayne@gmail.com>

pkgname=dart-sass
pkgver=1.99.0
pkgrel=1
pkgdesc='Sass makes CSS fun again'
arch=(x86_64 aarch64)
url='http://sass-lang.com/'
license=(MIT)
depends=(glibc)
makedepends=(git dart buf)
options=(!strip)
provides=(sass)
conflicts=(ruby-sass)
_sass_version=3.2.0
source=(
  "$pkgname::git+https://github.com/sass/dart-sass.git#tag=$pkgver"
  "github.com-sass-sass::git+https://github.com/sass/sass.git#tag=embedded-protocol-$_sass_version"
)
sha512sums=('6b8ec2678e9a360846542e39d00e295d5dcdcf363b383b7d6ac2a55a2062be2e34a9f63a629ac00a961e05f49db96b624423e9025b683fb21f68fed9a23369d2'
            '59f44a01c64abb47ee60133650ec0abb943f82461dd472a2e8f50cb32b54429487f20455b4f77e5e3475c2ddac2b2d3dbc8f5987ccdfdf6648be429215fc5867')
b2sums=('4f4a46fa3ede934255bbe606ccf41b3ed67b712c54e7516df2c0a240a3475b2ccd7b02bca52bf04df638461649b2be5c2b41add916b23e4bb1f1094e236a0c55'
        'f6fd79b9da32ab7c350689c5bea32b26919fff46adb8a685a7b1f2683d986e7b738da099c7d86b87ffa3fb59a21cc521d38b26cd1e37ba1fce0a3a11a91c0810')

prepare() {
  cd "$pkgname"

  mkdir -p build
  ln -sf "$srcdir/github.com-sass-sass" build/language

  # disable analytics
  dart --disable-analytics

  # download dependencies
  dart pub get
}

build() {
  cd "$pkgname"

  UPDATE_SASS_PROTOCOL=false dart run grinder protobuf
  dart compile exe \
    -Dversion=$pkgver \
    -Dprotocol-version=$(cat build/language/spec/EMBEDDED_PROTOCOL_VERSION) \
    -o sass \
    bin/sass.dart
}

package() {
  cd "$pkgname"

  # binary
  install -vDm755 -t "$pkgdir/usr/bin" sass

  # embedded-protocol protobuf file
  install -vDm644 -t "$pkgdir/usr/share/$pkgname" build/language/spec/embedded_sass.proto

  # license
  install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE
}
