# Maintainer: David P. <megver83@parabola.nu>
# Maintainer (Arch): Florian Pritz <bluewind@xinu.at>
# Contributor (Arch): Christoph Vigano <mail@cvigano.de>

pkgname=lib32-p11-kit
pkgver=0.23.16.1
pkgrel=1
pkgrel+=.nonsystemd1
pkgdesc="Provides a way to load and enumerate PKCS#11 modules (32-bit)"
arch=(x86_64)
url="https://p11-glue.freedesktop.org"
license=(BSD)
depends=(lib32-glibc lib32-libtasn1 lib32-libffi p11-kit)
makedepends=(git lib32-gcc-libs)
source=("git+https://github.com/p11-glue/p11-kit?signed#tag=$pkgver"
        0001-Build-and-install-libnssckbi-p11-kit.so.patch)
sha256sums=('SKIP'
            'a2222e092b2c9ae2d2c344b3268f8f86e7b424973433d49653f72e6c51fa54cf')
validpgpkeys=('C0F67099B808FB063E2C81117BFB1108D92765AF'  # Stef Walter
              '462225C3B46F34879FC8496CD605848ED7E69871') # Daiki Ueno

prepare() {
  cd p11-kit

  # Build and install an additional library (libnssckbi-p11-kit.so) which
  # is a copy of p11-kit-trust.so but uses the same label for root certs as
  # libnssckbi.so ("Builtin Object Token" instead of "Default Trust")
  # https://bugs.freedesktop.org/show_bug.cgi?id=66161
  patch -Np1 -i ../0001-Build-and-install-libnssckbi-p11-kit.so.patch

  NOCONFIGURE=1 ./autogen.sh
}

build() {
  cd p11-kit

  export CC="gcc -m32"
  export CXX="g++ -m32"
  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

  ./configure --prefix=/usr \
    --libdir=/usr/lib32 \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --libexecdir=/usr/lib \
    --disable-doc \
    --with-module-path=/usr/lib32/pkcs11 \
    --without-systemd \
    --with-trust-paths=/etc/ca-certificates/trust-source:/usr/share/ca-certificates/trust-source
  make
}

check() {
  cd p11-kit
  make check
}

package() {
  cd p11-kit
  make DESTDIR="$pkgdir" install

  rm -rf "${pkgdir}"/etc "${pkgdir}"/usr/{bin,include,lib,share}

  install -d "$pkgdir/usr/share/licenses"
  ln -s p11-kit "$pkgdir/usr/share/licenses/$pkgname"
}

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