# Maintainer: Sébastien Luttringer <seblu@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>

pkgname=file
pkgver=5.47
pkgrel=1
pkgdesc='File type identification utility'
arch=('x86_64' 'aarch64')
license=('custom')
url='https://www.darwinsys.com/file/'
depends=('glibc'
         'bzip2' 'libbz2.so'
         'libseccomp' 'libseccomp.so'
         'xz' 'liblzma.so'
         'zlib' 'libz.so'
         'zstd' 'libzstd.so')
makedepends=('git')
provides=('libmagic.so')
options=('!emptydirs')
# Warning: Upstream commits update file version and date inside each file!
#          Remove these changes from patches when cherry-picking to avoid
#          conflicts!
source=("git+https://github.com/file/file.git#tag=FILE${pkgver//./_}")
validpgpkeys=('BE04995BA8F90ED0C0C176C471112AB16CB33B3A') # Christos Zoulas
sha256sums=('50ff3cce78907b08d1d6fb5a1af5c686c82c4224452e434a768d008e6c651546')

prepare() {
  cd file

  # apply patch from the source array (should be a pacman feature)
  local src
  for src in "${source[@]}"; do
    src="${src%%::*}"
    src="${src##*/}"
    [[ $src = *.patch ]] || continue
    echo "Applying patch $src..."
    patch -Np1 < "../$src"
  done

  autoreconf -fiv
}

build() {
  cd file

  # Fix linking libmagic (vfork needs libpthread)
  CFLAGS+=" -pthread"

  ./configure \
    --prefix=/usr \
    --datadir=/usr/share/file \
    --enable-fsect-man5 \
    --enable-libseccomp
  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
  make
}

check() {
  cd file

  make check
}

package() {
  cd file

  make DESTDIR="$pkgdir" install
  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}

# vim:set ts=2 sw=2 et:
