# Contributor: Jeff Bilyk <jbilyk@gmail.com>
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=haproxy
# NOTE: Upgrade only to LTS versions announced on upstream site url!
# Using LTS versions is easier to keep it in good shape for stable releases
pkgver=3.0.12
_pkgmajorver=${pkgver%.*}
pkgrel=0
pkgdesc="A TCP/HTTP reverse proxy for high availability environments"
url="https://www.haproxy.org/"
arch="all"
license="GPL-2.0-or-later WITH OpenSSL-Exception"
_luaver=5.4
options="!check" # FIXME: depends on vtest
makedepends="pcre2-dev openssl-dev linux-headers lua$_luaver-dev zlib-dev"
install="haproxy.pre-install haproxy.pre-upgrade"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://www.haproxy.org/download/$_pkgmajorver/src/haproxy-$pkgver.tar.gz
	haproxy.initd
	haproxy.cfg"

# secfixes:
#   2.1.4-r0:
#     - CVE-2020-11100

build() {
	make \
		TARGET=linux-musl \
		USE_PCRE2=1 \
		USE_PCRE2_JIT=1 \
		USE_OPENSSL=1 \
		USE_ZLIB=1 \
		USE_LUA=1 \
		USE_NS=1 \
		USE_PROMEX=1 \
		LUA_LIB=/usr/lib/lua$_luaver \
		LUA_INC=/usr/include/lua$_luaver
}

check() {
	make reg-tests
}

package() {
	make install \
		DESTDIR="$pkgdir" PREFIX=/usr DOCDIR=/usr/share/doc/haproxy
	install -d \
		"$pkgdir"/var/lib/haproxy
	install -D -m 755 \
		"$srcdir"/$pkgname.initd \
		"$pkgdir"/etc/init.d/$pkgname
	install -D -m 644 \
		"$srcdir"/haproxy.cfg \
		"$pkgdir"/etc/haproxy/haproxy.cfg
}

sha512sums="
ed9b0d0635f14c4825ae0bc342f2a3217a2fb71e8624577cc69af3c06536a716f0701247db505d49bcf5dc58f483b55e617341bbea181b78b1f1034ae7c0c0f9  haproxy-3.0.12.tar.gz
4aa8fc812079baf1d17cf9484a9b44568c3dd94f35243a57a4a7868e7f88146a4e94c80ea8ab86f1b08a524567e269a3ec119b67fc679f6bd0d9f1c70ce4f080  haproxy.initd
26bc8f8ac504fcbaec113ecbb9bb59b9da47dc8834779ebbb2870a8cadf2ee7561b3a811f01e619358a98c6c7768e8fdd90ab447098c05b82e788c8212c4c41f  haproxy.cfg
"
