# Maintainer: Martell Malone <Martell Malone at g mail dot com>

_realname=ninja
pkgname=("${_realname}" "${_realname}-vim" "${_realname}-emacs")
pkgver=1.12.1
pkgrel=2
_descr="Ninja is a small build system with a focus on speed"
pkgdesc="${_descr}"
arch=('i686' 'x86_64')
url="https://ninja-build.org"
msys2_repository_url="https://github.com/ninja-build/ninja"
license=('Apache')
depends=()
options=('strip' 'staticlibs')
makedepends=("re2c" "python3" "emacs" 'gcc')
source=("${pkgname}-${pkgver}.tar.gz"::"https://github.com/ninja-build/ninja/archive/v${pkgver}.tar.gz")
sha256sums=('821bdff48a3f683bc4bb3b6f0b5fe7b2d647cf65d52aeb63328c91a6c6df285a')

prepare () {
  cd ${srcdir}/ninja-${pkgver}
}

build() {
  cd ${srcdir}/ninja-${pkgver}

  CXXFLAGS+=" -D_XOPEN_SOURCE=700"
  /usr/bin/python3 configure.py --bootstrap
}

package_ninja() {
  optdepends=("ninja-vim: ninja syntax support for vim"
              "ninja-emacs: ninja mode for emacs")
  mkdir -p "${pkgdir}"/usr/bin
  mv "${srcdir}/ninja-${pkgver}/ninja.exe" "${pkgdir}"/usr/bin/
  mkdir -p "${pkgdir}"/usr/lib
  mv "${srcdir}/ninja-${pkgver}/build/libninja.a" "${pkgdir}"/usr/lib/
  mkdir -p "${pkgdir}"/usr/share/bash-completion/completions
  cp  "${srcdir}/ninja-${pkgver}/misc/bash-completion" "${pkgdir}"/usr/share/bash-completion/completions/ninja
  mkdir -p "${pkgdir}"/usr/share/zsh/site-functions
  cp  "${srcdir}/ninja-${pkgver}/misc/zsh-completion" "${pkgdir}"/usr/share/zsh/site-functions/_ninja

}

package_ninja-vim() {
  pkgdesc="${_descr} (vim mode)"
  depends=("ninja=$pkgver" 'vim')
 
  vimpath="${pkgdir}/usr/share/vim/vimfiles"
  install -d "${vimpath}"/syntax

  cp -r "${srcdir}/${_realname}-$pkgver/misc/ninja.vim" "${vimpath}/syntax/"
}

package_ninja-emacs() {
  pkgdesc="${_descr} (Emacs mode)"
  depends=("ninja=$pkgver" 'emacs')

  install -d  ${pkgdir}/usr/share/${_realname}-$pkgver/editors/emacs/
  install -d "${pkgdir}/usr"/share/emacs/site-lisp/
  cp "${srcdir}/${_realname}-$pkgver/misc/ninja-mode.el" "${pkgdir}/usr"/share/emacs/site-lisp/

  /usr/bin/emacs -batch -f batch-byte-compile \
    "${pkgdir}/usr"/share/emacs/site-lisp/ninja-mode.el
}

