# Template file for 'haproxy'
pkgname=haproxy
version=2.6.9
revision=1
build_style=gnu-makefile
make_install_args="SBINDIR=${DESTDIR}/usr/bin DOCDIR=${DESTDIR}/usr/share/doc/${pkgname}"
hostmakedepends="lua53-devel"
makedepends="libatomic-devel openssl-devel lua53-devel pcre2-devel"
checkdepends="curl varnish"
short_desc="Reliable, high performance TCP/HTTP load balancer"
maintainer="Zach Dykstra <dykstra.zachary@gmail.com>"
license="GPL-2.0-or-later, LGPL-2.1-or-later"
homepage="https://www.haproxy.org"
changelog="https://www.haproxy.org/download/${version%.*}/src/CHANGELOG"
distfiles="https://www.haproxy.org/download/${version%.*}/src/haproxy-${version}.tar.gz"
checksum=f01a1c5f465dc1b5cd175d0b28b98beb4dfe82b5b5b63ddcc68d1df433641701

haproxy_homedir="/var/lib/${pkgname}"
make_dirs="$haproxy_homedir 0750 ${pkgname} ${pkgname}"
conf_files="/etc/${pkgname}/${pkgname}.cfg"
system_accounts="haproxy"

CFLAGS="-Wno-address-of-packed-member"
do_build() {
	local target="linux-${XBPS_TARGET_LIBC}"
	local atomic
	if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
		atomic="-latomic"
	fi
	make ${makejobs} CC="$CC" DEBUG_CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" EXTRA= \
		TARGET=$target USE_PCRE2=1 USE_PCRE2_JIT=1 USE_ZLIB=1 \
		USE_OPENSSL=1 USE_LIBCRYPT=1 USE_GETADDRINFO=1 USE_LUA=1 \
		USE_PROMEX=1 ADDLIB="$atomic"
}

do_check() {
	export VTEST_PROGRAM=/usr/bin/varnishtest
	make reg-tests || : 4 test failed on musl
}

post_install() {
	vinstall ${FILESDIR}/${pkgname}.cfg 644 etc/${pkgname}
	vsv ${pkgname}
}
