archrelease: copy trunk to extra-x86_64
[arch-packages.git] / libsecret / trunk / PKGBUILD
blob42a1eb09c4f3850f4891ff844f184c95252a16b8
1 # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
2 # Contributor: Jan de Groot <jgc@archlinux.org>
4 pkgbase=libsecret
5 pkgname=(libsecret libsecret-docs)
6 pkgver=0.20.5
7 pkgrel=2
8 pkgdesc="Library for storing and retrieving passwords and other secrets"
9 url="https://wiki.gnome.org/Projects/Libsecret"
10 arch=(x86_64)
11 license=(LGPL)
12 depends=(glib2 libgcrypt tpm2-tss)
13 makedepends=(gobject-introspection vala git meson gi-docgen bash-completion)
14 checkdepends=(python-dbus python-gobject gjs swtpm tpm2-abrmd)
15 options=(debug)
16 _commit=d64530ac70d9723945d68ca079293ea0f9df9e9f  # tags/0.20.5^0
17 source=("git+https://gitlab.gnome.org/GNOME/libsecret.git#commit=$_commit")
18 sha256sums=('SKIP')
20 pkgver() {
21   cd $pkgbase
22   git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
25 prepare() {
26   cd $pkgbase
28   # Secure memory tests fail in containers
29   sed -i '/test-secmem/d' egg/meson.build
32 build() {
33   arch-meson $pkgbase build -D tpm2=true
34   meson compile -C build
37 _check() (
38   mkdir -p "${TPM_PATH:=$PWD/tpm}"
39   export TPM_PATH
41   swtpm_setup --create-config-files
42   swtpm_setup --tpm2 --tpm-state "$TPM_PATH" --createek --allow-signing \
43     --decryption --overwrite --display
45   swtpm socket --tpm2 --flags startup-clear \
46     --server type=unixio,path="$TPM_PATH/socket" \
47     --ctrl type=unixio,path="$TPM_PATH/socket.ctrl" &
48   _p1=$!
50   tpm2-abrmd --tcti=swtpm:path="$TPM_PATH/socket" \
51     --session --flush-all &
52   _p2=$!
54   trap "kill $_p1 $_p2; wait" EXIT
56   export TCTI=tabrmd:bus_type=session
58   meson test -C build --print-errorlogs
61 check() {
62   dbus-run-session bash -c "$(declare -f _check); _check"
65 package_libsecret() {
66   optdepends=('org.freedesktop.secrets: secret storage backend')
67   provides=(libsecret-1.so)
69   meson install -C build --destdir "$pkgdir"
71   mkdir -p doc/usr/share
72   mv {"$pkgdir",doc}/usr/share/doc
75 package_libsecret-docs() {
76   pkgdesc+=" (documentation)"
77   depends=()
79   mv doc/* "$pkgdir"
82 # vim:set sw=2 et: