# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Contributor: Anatol Pomozov <anatol dot pomozov at gmail>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - disable lto in arch-meson

pkgname=meson
pkgver=1.2.1
pkgrel=1
pkgdesc="High productivity build system"
url="https://mesonbuild.com/"
arch=(any)
license=(Apache)
depends=(
  ninja
  python-tqdm
  python-typing_extensions
)
makedepends=(
  python-build
  python-installer
  python-setuptools
  python-wheel
)
checkdepends=(
  boost
  clang
  cmake
  cuda
  cython
  doxygen
  gcc-fortran
  gcc-objc
  git
  gmock
  gnustep-base
  gobject-introspection
  graphviz
  gtest
  gtk-doc
  gtk-sharp-2
  gtk3
  gtkmm3
  hotdoc
  itstool
  java-environment=8
  ldc
  libelf
  libwmf
  llvm
  mercurial
  mono
  nasm
  netcdf-fortran
  openmpi
  openssh
  protobuf
  python-gobject
  python-pytest-xdist
  qt5-base
  qt5-tools
  rust
  rust-bindgen
  sdl2
  vala
  valgrind
  vulkan-validation-layers
  wxgtk3
)
source=(
  https://github.com/mesonbuild/meson/releases/download/$pkgver/meson-$pkgver.tar.gz{,.asc}
  meson-reference-$pkgver.3::https://github.com/mesonbuild/meson/releases/download/$pkgver/meson-reference.3
  meson-reference-$pkgver.json::https://github.com/mesonbuild/meson/releases/download/$pkgver/reference_manual.json
  arch-meson
  cross-lib32
  native-clang
  0001-Skip-broken-tests.patch
  0002-Use-C-17-for-protobuf-tests.patch
)
b2sums=('b79fa78618cbebfb26ea40e698c495e63d722ba3204d4fed92d087e4a588b49666b476c55916f1435b7ca62f24843c683f1da09751754e928c838c1bf138ce58'
        'SKIP'
        '841eb9a6e348a537f9e50625e66318704e6279a70b60f2c98201c74bba007390d0a29bec2e2cba80c957bbe09e88fbcaf390eefc1ec60f1f2d5842c9d1eb5233'
        '3ba44f090e68877d96e7d8aa56442be719e074f5aeb9ea7cae643338a34c33a72e3082d855e868a54d4035a4ea288ccda8ad29a0313204ee8a2419c7d203c4b3'
        '211cee61f117fd1d582d7a613a8634f044e9e307791c4154c6da72bccd5f06856801b14bcb26157ee682b5935c48ffd2098a5fabab2232726d7758cf091c07f7'
        'e56c75dd9122d866e8a92381f1f8a3fa268451d13a18b73906c0089601d3e6edf28602b36f40d8a32758e9958a167a1bdccd70283581e19b2ed39863640daf95'
        '7d88929d5a3b49d91c5c9969f19d9b47f3151706526b889515acaeda0141257d5115875ac84832e9ea46f83a7700d673adcc5db84b331cd798c70ae6e90eac1e'
        '849a1acafac499a0d540973157cec758b06a8340a5bbd11050ea8c2fd48de0e32a9d0d017fdeab1cf1a42031c4341c5c1b4c7688c90140246ec4560c7b149bbe'
        '338df79aa545c2eaa10e9c14ca93b59456572a0c31721e50f202daab8fbbe9595f6cd8575b6e11b333398ebb9dd9eef1f45beb9c7e24ed475e9fa6782e1d98f4')
validpgpkeys=(
  19E2D6D9B46D8DAA6288F877C24E631BABB1FE70  # Jussi Pakkanen <jpakkane@gmail.com>
)

prepare() {
  cd $pkgname-$pkgver
  patch -Np1 -i ../0001-Skip-broken-tests.patch
  patch -Np1 -i ../0002-Use-C-17-for-protobuf-tests.patch
}

build() {
  cd $pkgname-$pkgver
  python -m build --wheel --no-isolation
}

check() (
  cd $pkgname-$pkgver
  export LC_CTYPE=en_US.UTF-8 CPPFLAGS= CFLAGS= CXXFLAGS= LDFLAGS=
  ./run_tests.py --failfast
)

package() {
  cd $pkgname-$pkgver
  python -m installer --destdir="$pkgdir" dist/*.whl

  install -d "$pkgdir/usr/share/vim/vimfiles"
  cp -rt "$pkgdir/usr/share/vim/vimfiles" data/syntax-highlighting/vim/*/

  install -Dm644 data/shell-completions/bash/* -t "$pkgdir/usr/share/bash-completion/completions"
  install -Dm644 data/shell-completions/zsh/*  -t "$pkgdir/usr/share/zsh/site-functions"

  install -Dm644 ../meson-reference-$pkgver.3    "$pkgdir/usr/share/man/man3/meson-reference.3"
  install -Dm644 ../meson-reference-$pkgver.json "$pkgdir/usr/share/doc/$pkgname/reference_manual.json"

  install -D ../arch-meson -t "$pkgdir/usr/bin"

  install -Dm644 ../cross-lib32 "$pkgdir/usr/share/meson/cross/lib32"
  install -Dm644 ../native-clang "$pkgdir/usr/share/meson/native/clang"
}

# vim:set sw=2 sts=-1 et: