# Maintainer: David Pflug <david@pflug.email>
# Based on package from Phil Martella <philmartella@live.com>
# Based on brother-hl3150cdw by MCMic <come.bernigaud@laposte.net>
pkgname="brother-hl3170cdw"
pkgver="1.1.4"
pkgrel=1
pkgdesc="LPR and CUPS driver for the Brother HL3170CDW"
arch=('i686' 'x86_64')
url="http://solutions.brother.com/linux/en_us/"
license=('custom:brother commercial license')
depends=('cups')
install='brother-hl3170cdw.install'
source=(
  "https://download.brother.com/welcome/dlf006743/hl3170cdw_cupswrapper_GPL_source_${pkgver}-0.tar.gz"
  "http://www.brother.com/pub/bsc/linux/dlf/hl3170cdwlpr-1.1.2-1.i386.deb"
  'lpr-license.txt'
)
sha512sums=('d0282a7d6c9486e927ab6e50a86fd20b26e97fa9861061796125b955922929688c5808a3ef07918f114be3ec678bb0b264700f0c8dc30e197e583375e56eeb0c'
            '56b97b9d120c00a5ebff316859840bed88558872914b5079c1f13529e5361a3d360abb0379989ddf6f121dee02478fe1e5974d353ba72cd969097336785ee608'
            'bf555e3622b68cc8a4d89f9fbb26ca09f29acf66c07d517be8aa7b58d985e1408d0d1bde408ba3b0e0aa842a69d6ebf0b4a1d194673203f42a3cbcecdcfaca06')

if [[ "$CARCH" == x86_64 ]]; then
  depends+=('lib32-glibc')
fi


prepare() {
  rm -rf "${srcdir}/hl3170cdwlpr-${pkgver}"
  mkdir "${srcdir}/hl3170cdwlpr-${pkgver}"
  cd  "${srcdir}/hl3170cdwlpr-${pkgver}"
  tar xf "${srcdir}/data.tar.gz"
}

build_cupswrapper() {
  cd "$srcdir/hl3170cdw_cupswrapper_GPL_source_${pkgver}-0"

  make -C brcupsconfig
  mv brcupsconfig/brcupsconfpt1 PPD/brother_hl3170cdw_printer_en.ppd \
     "${srcdir}/pkg/opt/brother/Printers/hl3170cdw/cupswrapper"
  cp cupswrapper/cupswrapperhl3170cdw "$srcdir"
  chmod +x "$srcdir/cupswrapperhl3170cdw"
}

build_hl3170cdwlpr() {
  cd "$srcdir/hl3170cdwlpr-${pkgver}"
  cp -a opt usr "${srcdir}/pkg"
  rm "${srcdir}/pkg/opt/brother/Printers/hl3170cdw/inf/setupPrintcapij"
}

build() {
  cd "$srcdir"
  rm -rf "pkg"
  mkdir -p pkg/opt/brother/Printers/hl3170cdw/cupswrapper
  mkdir -p pkg/usr/{bin,share/cups/model,lib/cups/filter}

  (build_cupswrapper)
  (build_hl3170cdwlpr)
  _wrapper_source="${srcdir}/cupswrapperhl3170cdw"
  sed -i -e '/^\/etc\/init.d\/cups/d' -e '/^sleep/d' -e '/^lpadmin/d' \
    -e 's|/usr|$_srcdir/usr|g' -e 's|/opt|$_srcdir/opt|g' \
    -e 's|/model/Brother|/model|g' -e 's|lpinfo|echo|g' $_wrapper_source
  export _srcdir="$srcdir/pkg"
  "$_wrapper_source"
  sed -i -e 's|$_srcdir||g' -e "s|$_srcdir||g" \
    "$srcdir/pkg/usr/lib/cups/filter/brother_lpdwrapper_hl3170cdw"
}

package() {
  cp -a "${srcdir}/pkg"{/usr,/opt} "$pkgdir"

  install -Dm644 lpr-license.txt \
    "$pkgdir/usr/share/licenses/${pkgname}/lpr-licence.txt"
}
