# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>

pkgname=mdadm
pkgver=4.4
pkgrel=2
pkgdesc='A tool for managing/monitoring Linux md device arrays, also known as Software RAID'
arch=('x86_64' 'aarch64')
license=('GPL-2.0-or-later')
url='https://git.kernel.org/pub/scm/utils/mdadm'
makedepends=('git' 'man-db')
depends=('glibc' 'systemd')
conflicts=('mkinitcpio<38')
optdepends=('bash: mdcheck')
replaces=('raidtools')
backup=('etc/mdadm.conf')
validpgpkeys=('6A86B80E1D22F21D0B26BA75397D82E0531A9C91' # Jes Sorensen
              'EED84966493AEEAF4B466F696F9E3E9D4EDEBB11' # Mariusz Tkaczyk
	      )
source=("git+https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git#tag=${pkgname}-${pkgver}?signed"
	'mdadm.conf')
b2sums=('436b64fd90c3fd5d0adf38ae7fae455ed54a28ee9d0d32469fa7d3e9c832802d4d346313f28752e261074f3eb18dfa9dcc9327cc8f8af5b249cd373f0e38c92a'
        '8572eae7f566deb040fa1489cb5e3c9e501609e4c51b476c04c256b4466b3cbdb9d1d5345e9d9dbf1cfd8a22bfd60a171cc83fe68acd8dfe7e893e3b210fc8a3')

prepare() {
  cd mdadm

  # mdadm: add attribute nonstring for signature
  git cherry-pick -n a83ecaf17c75734aead366c6de71b6dd42a4a63d

  # mdadm/raid6check: add xmalloc.h to raid6check.c
  git cherry-pick -n e0df6c4c984d564e9e40913727e916a6cd8f466e
}

build() {
  cd mdadm
  make CXFLAGS="$CFLAGS" BINDIR=/usr/bin UDEVDIR=/usr/lib/udev everything
}

package() {
  cd mdadm

  make INSTALL=/usr/bin/install BINDIR=/usr/bin DESTDIR="$pkgdir" UDEVDIR=/usr/lib/udev install
  make SYSTEMD_DIR="$pkgdir"/usr/lib/systemd/system install-systemd
  install -D -m644 ../mdadm.conf "$pkgdir"/etc/mdadm.conf
  install -D -m755 misc/mdcheck "$pkgdir"/usr/share/mdadm/mdcheck

  install -Dm 644 raid6check.8 "$pkgdir"/usr/share/man/man8/raid6check.8
  install -Dm 755 raid6check "$pkgdir"/usr/bin/raid6check
}
