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

pkgname=dart-sass
pkgver=1.97.2
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=('79a72aca77634260b243cf82f9b47dedbea8dc3587ce24e8475e97a27454430a11219c5059d87b70ae9e4ccea239d3d2d6153b303e529693b154eacf181b1798'
            '59f44a01c64abb47ee60133650ec0abb943f82461dd472a2e8f50cb32b54429487f20455b4f77e5e3475c2ddac2b2d3dbc8f5987ccdfdf6648be429215fc5867')
b2sums=('e198c5840790fef92d667ae83c14e2d07052e823c25a2c2d10df71f002b87bc383f12a8308a46040d0d9c5c191d734c458127eabebc744120757374d2f9a1bca'
        '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
}
