# Maintainer: Anatol Pomozov <anatol.pomozov@gmail.com>
# Contributor: Filip Brcic <brcha@gna.org>
# Contributor: Mika Fischer <mika.fischer@zoopnet.de>
# Contributor: Gergely Imreh <imrehgATgmailDOTcom>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - add environment variable override to ninja job guess routine
#    https://www.linuxfromscratch.org/lfs/view/development/chapter08/ninja.html

pkgname=ninja
pkgver=1.11.1
pkgrel=3
pkgdesc='Small build system with a focus on speed'
arch=(x86_64)
url='https://ninja-build.org/'
license=(Apache)
depends=(gcc-libs)
makedepends=(python re2c emacs-nox)
source=($pkgname-$pkgver.zip::https://github.com/martine/ninja/archive/v$pkgver.zip)
sha1sums=('fbcb284b7280335835c3f085fb825e6f1514396e')
sha256sums=('03b7ea14bf04b87cbdd64b9a1262577093e177f8e5662515de77f3a796b75951')

prepare() {
  cd ninja-$pkgver

  sed -i '/int Guess/a \
  int   j = 0;\
  char* jobs = getenv( "ALARM_NINJA_JOBS" );\
  if ( jobs != NULL ) j = atoi( jobs );\
  if ( j > 0 ) return j;\
' src/ninja.cc
}

build() {
  cd ninja-$pkgver

  python configure.py --bootstrap
  emacs -Q --batch -f batch-byte-compile misc/ninja-mode.el
}

check() {
  cd ninja-$pkgver

  python ./configure.py
  ./ninja ninja_test
  ./ninja_test
}

package() {
  cd ninja-$pkgver

  local site_packages=$(python -c "import site; print(site.getsitepackages()[0])")

  install -m755 -D ninja "$pkgdir/usr/bin/ninja"
  install -m644 -D doc/manual.asciidoc "$pkgdir/usr/share/doc/ninja/manual.asciidoc"
  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"

  install -m644 -D misc/ninja-mode.el "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.el"
  install -m644 -D misc/ninja-mode.elc "$pkgdir/usr/share/emacs/site-lisp/ninja-mode.elc"
  install -m644 -D misc/ninja.vim "$pkgdir/usr/share/vim/vimfiles/syntax/ninja.vim"
  install -m644 -D misc/ninja_syntax.py "$pkgdir/$site_packages/ninja_syntax.py"

  install -m644 -D misc/bash-completion "$pkgdir/usr/share/bash-completion/completions/ninja"
  install -m644 -D misc/zsh-completion "$pkgdir/usr/share/zsh/site-functions/_ninja"
}