summaryrefslogtreecommitdiffstats
path: root/abs/core/gnutls/PKGBUILD
blob: 593304a090b33c19088ef253e563d4c5a1c46cac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Andreas Radke <andyrtr@archlinux.org>

pkgname=gnutls
pkgver=3.5.18
pkgrel=1
pkgdesc="A library which provides a secure layer over a reliable transport layer"
arch=('x86_64')
license=('GPL3' 'LGPL2.1')
url="https://www.gnutls.org/"
options=('!zipman')
depends=('gcc-libs' 'libtasn1' 'readline' 'zlib' 'nettle' 'p11-kit' 'libidn' 'libunistring')
checkdepends=('net-tools')
optdepends=('guile: for use with Guile bindings')
source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/${pkgname}-${pkgver}.tar.xz{,.sig})
sha256sums=('ae2248d9e78747cf9c469dde81ff8f90b56838b707a0637f3f7d4eee90e80234'
            'SKIP')
validpgpkeys=('0424D4EE81A0E3D119C6F835EDA21E94B565716F'
              '1F42418905D8206AA754CCDC29EE58B996865171')
               # "Simon Josefsson <simon@josefsson.org>"
               # "Nikos Mavrogiannopoulos <nmav@gnutls.org>

prepare() {
  cd ${pkgname}-${pkgver}
  # fix a broken test
#  sed 's/global_init/gnutls_global_init/g' -i tests/trust-store.c
}

build() {
  cd ${pkgname}-${pkgver}

  # disable libidn for security reasons:
  # http://lists.gnupg.org/pipermail/gnutls-devel/2015-May/007582.html

  ./configure --prefix=/usr \
	--with-zlib \
	--disable-static \
	--without-idn \
    --enable-openssl-compatibility \
	--enable-guile --with-guile-site-dir=no \
	--with-default-trust-store-pkcs11="pkcs11:model=p11-kit-trust;manufacturer=PKCS%2311%20Kit"
  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
  make
}

check() {
  cd ${pkgname}-${pkgver}
  make check
}

package() {
  cd ${pkgname}-${pkgver}
  make DESTDIR="${pkgdir}" install

  # lots of .png files are put into infodir and are gzipped by makepkg! this needs to be fixed by using !zipman
  # gzip -9 all files in infodir and manpages manually
  find "$pkgdir/usr/share/info" -name '*.info*' -exec gzip -9 {} \;
  find "$pkgdir/usr/share/man" -exec gzip -9 {} \;
}