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

pkgname=dart-sass
pkgver=1.97.3
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=('e9450773dce205e088e58252b66825c7269bce6cd18abf7a268597d8c11f651e34bcf17fe912d50218dd9581999744f1b0672ca180daca603f0aafd6b8cf738c'
            '59f44a01c64abb47ee60133650ec0abb943f82461dd472a2e8f50cb32b54429487f20455b4f77e5e3475c2ddac2b2d3dbc8f5987ccdfdf6648be429215fc5867')
b2sums=('99eb92ebfee81b9e194143a9a4cbb10dd77ea936a225808f64919c9c31e84418921caa604750693d24c48dc7e8908f16cedb2596233e4547ab1da54cab0bcabb'
        '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
}
