PKGBUILDs/community/strongswan/PKGBUILD
2022-02-18 12:48:52 -05:00

128 lines
4.9 KiB
Bash

# Maintainer : Christian Rebischke <Chris.Rebischke@archlinux.org>
# Contributor: dkorzhevin <dkorzhevin at gmail dot com>
# Contributor: Thermi <noel [at] familie-kuntze dot de>
# Contributor: nikicat <develniks at gmail dot com>
# Contributor: danilo <gezuru at gmail dot com>
# Contributor: Jason Begley <jayray at digitalgoat dot com>
# Contributor: Ray Kohler <ataraxia937 at gmail dot com>
# Contributor: Daniel Riedemann <daniel.riedemann [at] googlemail [dot] com>
# Contributor: 458italia <svenskaparadox [at] gmail dot com>
# Contributor: Thermi <noel [at] familie-kuntze dot com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - remove --enable-aesni from configure
pkgname=strongswan
pkgver=5.9.5
pkgrel=1
pkgdesc='Open source IPsec implementation'
url='https://www.strongswan.org'
license=('GPL2')
arch=('x86_64')
makedepends=('libnm' 'systemd' 'python' 'ruby' 'mariadb' 'python-setuptools')
depends=('curl' 'gmp' 'iproute2' 'openssl' 'sqlite' 'libcap' 'systemd-libs' 'pam')
optdepends=('libnm: for networkmanager support'
'mariadb: MySQL support'
'ruby: Ruby support'
'python: Python support'
'resolvconf: Resolveplugin'
'openldap: LDAP support')
# TODO: move to package() and use find
backup=(
etc/ipsec.conf
etc/ipsec.secrets
etc/swanctl/swanctl.conf
etc/strongswan.conf
etc/strongswan.d/{charon-logging.conf,charon.conf,pki.conf,pool.conf,scepclient.conf,starter.conf,swanctl.conf}
etc/strongswan.d/charon/{aesni.conf,attr-sql.conf,attr.conf,bliss.conf,chapoly.conf,cmac.conf,connmark.conf,constraints.conf,curl.conf,des.conf,dhcp.conf,dnskey.conf,eap-aka-3gpp2.conf,eap-aka.conf,eap-gtc.conf,eap-identity.conf,eap-md5.conf,eap-mschapv2.conf,eap-radius.conf,eap-sim-file.conf,eap-sim.conf,eap-simaka-pseudonym.conf,eap-simaka-reauth.conf,eap-tls.conf,ext-auth.conf,farp.conf,fips-prf.conf,forecast.conf,gmp.conf,ha.conf,hmac.conf,kernel-netlink.conf,md5.conf,mgf1.conf,nonce.conf,newhope.conf,ntru.conf,openssl.conf,pem.conf,pgp.conf,pkcs1.conf,pkcs12.conf,pkcs7.conf,pkcs8.conf,pubkey.conf,random.conf,rc2.conf,resolve.conf,revocation.conf,sha1.conf,sha2.conf,sha3.conf,socket-default.conf,sql.conf,sqlite.conf,sshkey.conf,stroke.conf,updown.conf,vici.conf,x509.conf,xauth-eap.conf,xauth-generic.conf,xcbc.conf,unity.conf,curve25519.conf,bypass-lan.conf})
source=("https://download.strongswan.org/strongswan-${pkgver}.tar.bz2"{,.sig}
'configure_ac.patch')
validpgpkeys=("948F158A4E76A27BF3D07532DF42C170B34DBA77")
sha512sums=('3b11c4edb1ffccf0ea5b8b843acfe2eb18dcd3857fc2818b8481c4febe7959261e1b2804c3af29068319df469fa0b784682d3ba4d49a3eb580841ff3c34e33a1'
'SKIP'
'0e2c818f2f620410dda949d9016a4c1a686bf2946acb3b42a729b2376c077f4dad6762fe8d2f736c213c4895c1fbd60c0d654a1c36f72d06f58ba7cff635bc74')
install=strongswan.install
# We don't build libipsec because it would get loaded before kernel-netlink and netkey, which
# would case processing to be handled in user space. Also, the plugin is experimental. If you need it,
# add --enable-libipsec and --enable-kernel-libipsec
prepare() {
cd ${pkgname}-${pkgver}
patch -p1 -l <"${srcdir}/configure_ac.patch"
autoreconf -fiv
}
build() {
cd ${pkgname}-${pkgver}
./configure --prefix=/usr \
--sbindir=/usr/bin \
--sysconfdir=/etc \
--libexecdir=/usr/lib \
--with-ipsecdir=/usr/lib/strongswan \
--with-nm-ca-dir=/etc/ssl/certs \
--enable-integrity-test \
--enable-sqlite \
--enable-pkcs11 \
--enable-openssl \
--enable-curl \
--enable-sql \
--enable-attr-sql \
--enable-farp \
--enable-dhcp \
--enable-eap-sim \
--enable-eap-sim-file \
--enable-eap-simaka-pseudonym \
--enable-eap-simaka-reauth \
--enable-eap-identity \
--enable-eap-md5 \
--enable-eap-gtc \
--enable-eap-aka \
--enable-eap-aka-3gpp2 \
--enable-eap-mschapv2 \
--enable-eap-radius \
--enable-xauth-eap \
--enable-ha \
--enable-vici \
--enable-swanctl \
--enable-systemd \
--enable-ext-auth \
--enable-mysql \
--enable-ldap \
--enable-cmd \
--enable-forecast \
--enable-connmark \
--enable-eap-ttls \
--enable-radattr \
--enable-xauth-pam \
--enable-xauth-noauth \
--enable-eap-dynamic \
--enable-eap-peap \
--enable-eap-tls \
--enable-chapoly \
--enable-unity \
--with-capabilities=libcap \
--enable-newhope \
--enable-ntru \
--enable-mgf1 \
--enable-sha3 \
--enable-bliss \
--enable-dnscert \
--enable-nm \
--enable-agent \
--enable-bypass-lan \
--enable-ruby-gems \
--enable-python-eggs
make
}
package() {
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
# this is not necessary anymore
#install -Dm644 "${pkgdir}/etc/dbus-1/system.d/nm-strongswan-service.conf" "${pkgdir}/usr/share/dbus-1/system.d/nm-strongswan-service.conf"
#rm -v "${pkgdir}/etc/dbus-1/system.d/nm-strongswan-service.conf"
# remove empty directory
#rmdir -v "${pkgdir}/etc/dbus-1/system.d"
}