# Maintainer: Andreas Radke <andyrtr@archlinux.org>

pkgbase="foomatic-db"
pkgname=('foomatic-db' 'foomatic-db-ppds' 'foomatic-db-nonfree' 'foomatic-db-nonfree-ppds')
arch=('any')
pkgver=20210828
pkgrel=1
epoch=3

makedepends=('cups' 'perl' 'libxml2' 'enscript' 'perl' 'net-snmp' 'bash' 'git')
url="http://www.linuxprinting.org/foomatic.html"
options=('!emptydirs')

# check https://github.com/OpenPrinting/foomatic-db
# for latest commits and development, currently identical to foomatic-4.0 branch

source=(foomatic-db::git+https://github.com/OpenPrinting/foomatic-db#commit=13e1f23b4dae7987921b89a07fd5ddb0ae5c7a51			#2022-08-23
        foomatic-db-nonfree::git+https://github.com/OpenPrinting/foomatic-db-nonfree#commit=6ddae02ac89240c019f8b5026cfe70e30fd2b3db	#2015-06-05
)
sha256sums=('SKIP'
            'SKIP')

pkgver() {
  date +%Y%m%d
}

prepare(){
  cp -a foomatic-db foomatic-db-ppds
  cp -a foomatic-db-nonfree foomatic-db-nonfree-ppds
}

build() {
  # foomatic-db
  pushd foomatic-db
  ./make_configure
  ./configure --prefix=/usr \
    --disable-gzip-ppds \
    --disable-ppds-to-cups \
    --with-drivers=NOOBSOLETES,NOEMPTYCMDLINE
  popd
  
  # foomatic-db-ppds
  pushd foomatic-db-ppds
  ./make_configure
  ./configure --prefix=/usr
  popd
  
  # foomatic-db-nonfree
  pushd foomatic-db-nonfree
  ./make_configure
  ./configure --prefix=/usr
  popd
  
  # foomatic-db-nonfree-ppds
  pushd foomatic-db-nonfree-ppds
  ./make_configure
  ./configure --prefix=/usr
  popd
}

package_foomatic-db() {

 pkgdesc="Foomatic - The collected knowledge about printers, drivers, and driver options in XML files, used by foomatic-db-engine to generate PPD files."
 license=('GPL' 'custom')
 optdepends=('foomatic-db-ppds: PostScript PPD files')
 replaces=('foomatic-db-foo2zjs') # AUR pkg no more conflicting and dropped, formerly required by foo2zjs-utils
 conflicts=('foomatic-db-foo2zjs')
 provides=('foomatic-db-foo2zjs')

   cd "${srcdir}"/foomatic-db
   make DESTDIR="${pkgdir}" install
   
   # add some docs
   install -Dm644 USAGE "${pkgdir}"/usr/share/doc/${pkgname}/USAGE
   install -Dm644 README "${pkgdir}"/usr/share/doc/${pkgname}/README
   install -v -Dm644 "${srcdir}"/${pkgname}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING
   install -Dm644 "${pkgdir}"/usr/share/foomatic/db/source/PPD/Kyocera/ReadMe.htm "${pkgdir}"/usr/share/doc/${pkgname}/Kyocera/ReadMe.htm
   # remove files from foomatic-db-ppds pkg
   rm -rf "${pkgdir}"/usr/share/cups/model/foomatic-db-ppds
   rm -rf "${pkgdir}"/usr/share/foomatic/db/source/PPD
}

package_foomatic-db-ppds() {

 pkgdesc="Foomatic - PPDs from printer manufacturers"
 license=('GPL' 'custom')

   cd "${srcdir}"/foomatic-db-ppds
   make DESTDIR="${pkgdir}" install

   # remove files from foomatic-db pkg
   rm -rf "${pkgdir}"/usr/share/foomatic/db/oldprinterids
   rm -rf "${pkgdir}"/usr/share/foomatic/db/source/{driver,opt,printer}
   rm -rf "${pkgdir}"/usr/share/foomatic/xmlschema
   rm -f "${pkgdir}"/usr/share/foomatic/db/source/PPD/Kyocera/ReadMe.htm

   install -v -Dm644 "${srcdir}"/${pkgname}/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING
}

package_foomatic-db-nonfree() {

 pkgdesc="Foomatic - database extension consisting of manufacturer-supplied PPD files released under non-free licenses"
 license=('custom')
 optdepends=('foomatic-db-nonfree-ppds: nonfree PPD files')

   cd ${srcdir}/foomatic-db-nonfree
   make DESTDIR="${pkgdir}" install
   # remove files from foomatic-db-nonfree-ppds pkg
   rm -rf "${pkgdir}"/usr/share/foomatic/db/source/PPD
   
   install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING
}

package_foomatic-db-nonfree-ppds() {

 pkgdesc="Foomatic - non-free PPDs from printer manufacturers"
 license=('custom')

   cd ${srcdir}/foomatic-db-nonfree-ppds
   make DESTDIR="${pkgdir}" install
   # remove files from foomatic-db-nonfree pkg
   rm -rf "${pkgdir}"/usr/share/foomatic/db/source/driver
   
   install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING
}
