# Maintainer: Rémy Oudompheng <remy@archlinux.org>

pkgname=biber
epoch=1
pkgver=2.15
pkgrel=2
pkgdesc="A Unicode-capable BibTeX replacement for biblatex users"
arch=('any')
license=('PerlArtistic' 'GPL')
url="https://github.com/plk/biber"
# Encode::* modules are not real dependencies.
depends=('perl-autovivification'
         'perl-business-isbn'
         'perl-business-ismn'
         'perl-business-issn'
         'perl-class-accessor'
         'perl-data-compare'
         'perl-data-dump'
         'perl-data-uniqid'
         'perl-datetime-calendar-julian'
         'perl-datetime-format-builder'
         'perl-file-slurper'
         'perl-io-string' # required by Biber::Output::bblxml
         'perl-ipc-run3'
         'perl-lingua-translit'
         'perl-list-allutils'
         'perl-log-log4perl'
         'perl-lwp-protocol-https'
         'perl-mozilla-ca'
         'perl-parse-recdescent'
         'perl-perlio-utf8-strict'
         'perl-regexp-common'
         'perl-sort-key'
         'perl-text-bibtex'
         'perl-text-csv'
         'perl-text-roman'
         'perl-unicode-linebreak'
         'perl-xml-libxml-simple'
         'perl-xml-libxslt'
         'perl-xml-writer')
# ExtUtils::LibBuilder and Config::AutoConf are not actual makedepends
makedepends=('perl-module-build' 'perl-test-differences')
checkdepends=('perl-capture-tiny' 'perl-file-which'
              'texlive-bibtexextra'
              'texlive-latexextra')
options=('!emptydirs')
# The sourceforge tarball is missing bblxml.pm
source=("https://github.com/plk/biber/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz"
        "${pkgname}-unicode-collate-1.29.patch::https://github.com/plk/biber/commit/d5cdbe1f50e1.patch"
        "test.tex"
        "test.bib")
sha512sums=('34a1856ada40eba205cc1b6f504da8cf40d628abc1a17826b9160b70f8f02d36ee3a3075e690f493fb354b70ba11a72d44a96054b8c25ae08122f2417f289b93'
            '95d4920817c4ef6e97ef1f6921a25b3cefd8cb984830c6b0dec8c5656ac92543c21fff3b3bb71d8771a40178590faed98fee5a9fd93cf3515d42a96c957f5262'
            '06babeb4ec2fd76b8a339070eb208c3c8c16665a085e4674ef3b61b3816d4408ca636b925fabe467adc5c32bf8eeb23d357f7ef979ac0a1722dc7f91142ec541'
            '68a00e41f200b8e24a674538b6581b88f84daef38a765790c1781365329203f60f4461a56dfa092bf336cc00c8801df1ee85f60d86fd384a8c039f913bdeeb2d')

prepare() {
  cd "${srcdir}/biber-${pkgver}"

  patch -Np1 -i ../${pkgname}-unicode-collate-1.29.patch

  mkdir -p "test"
  cp "${srcdir}"/test.{tex,bib} test/
}

build() {
  cd "${srcdir}/biber-${pkgver}"
  unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
  perl Build.PL
  ./Build
}

check() {
  cd "${srcdir}/biber-${pkgver}"
  # Test a sample file
  pushd test
  latex test
  PERL5LIB=../blib/lib ../bin/biber test
  latex test
  popd
  # Run test suite
  unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
  LC_CTYPE=en_US.UTF-8 BIBER_DEV_TESTS=1 ./Build test
}

package() {
  cd "${srcdir}/biber-${pkgver}"
  unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
  ./Build install installdirs=vendor destdir="${pkgdir}"
}
