git: 37bb13fefc4f - main - net/haproxy: Add flavor supporting WolfSSL

From: Mark Felder <feld_at_FreeBSD.org>
Date: Tue, 27 May 2025 20:01:56 UTC
The branch main has been updated by feld:

URL: https://cgit.FreeBSD.org/ports/commit/?id=37bb13fefc4f3f439f7e901eb23d89f6d9ec060b

commit 37bb13fefc4f3f439f7e901eb23d89f6d9ec060b
Author:     Mark Felder <feld@FreeBSD.org>
AuthorDate: 2025-05-27 19:59:36 +0000
Commit:     Mark Felder <feld@FreeBSD.org>
CommitDate: 2025-05-27 19:59:36 +0000

    net/haproxy: Add flavor supporting WolfSSL
    
    Approved by: Dmitry Sivachenko <demon@FreeBSD.org> (maintainer)
    PR:      286727
---
 net/haproxy/Makefile | 24 ++++++++++++++++++------
 1 file changed, 18 insertions(+), 6 deletions(-)

diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile
index 68f090875e6a..b6ce33370eca 100644
--- a/net/haproxy/Makefile
+++ b/net/haproxy/Makefile
@@ -10,15 +10,17 @@ WWW=		https://www.haproxy.org
 LICENSE=	GPLv2 LGPL21
 LICENSE_COMB=	multi
 
-FLAVORS=	default lua
+FLAVORS=	default lua wolfssl
 FLAVOR?=	${FLAVORS:[1]}
 
 USES=		compiler:c++11-lang cpe gmake
 USE_RC_SUBR=	haproxy
 
-default_CONFLICTS_INSTALL=	haproxy-lua
-lua_CONFLICTS_INSTALL=		haproxy-devel
+default_CONFLICTS_INSTALL=	haproxy-lua haproxy-wolfssl
+lua_CONFLICTS_INSTALL=		haproxy-devel haproxy-wolfssl
 lua_PKGNAMESUFFIX=		-lua
+wolfssl_CONFLICTS_INSTALL=	haproxy-devel haproxy-lua
+wolfssl_PKGNAMESUFFIX=		-wolfssl
 
 CONFLICTS_INSTALL=	haproxy haproxy17 haproxy18 haproxy20 haproxy22 haproxy23 haproxy24 haproxy25 haproxy26
 
@@ -32,16 +34,17 @@ MAKE_ARGS=	TARGET=freebsd DEFINE=-DFREEBSD_PORTS USE_GETADDRINFO=1 \
 MAKE_ARGS_i386=		USE_LIBATOMIC=
 MAKE_ARGS_powerpc=	USE_LIBATOMIC=
 
-OPTIONS_DEFINE=		DOCS EXAMPLES LUA OPENSSL DEVICEATLAS PROMEX
-OPTIONS_RADIO=		PCRE
+OPTIONS_DEFINE=		DOCS EXAMPLES LUA DEVICEATLAS PROMEX
+OPTIONS_RADIO=		PCRE SSL
 OPTIONS_RADIO_PCRE=	DPCRE DPCRE2 SPCRE SPCRE2
+OPTIONS_RADIO_SSL=	OPENSSL WOLFSSL
 DPCRE_DESC=		Link pcre(1) dynamically
 DPCRE2_DESC=		Link pcre2 dynamically
 SPCRE_DESC=		Link pcre(1) statically
 SPCRE2_DESC=		Link pcre2 statically
 DEVICEATLAS_DESC=	DeviceAtlas Device Detection support
 PROMEX_DESC=		Enable Prometheus exporter
-OPTIONS_DEFAULT=	DPCRE2 OPENSSL PROMEX
+OPTIONS_DEFAULT=	DPCRE2 PROMEX
 
 DPCRE_LIB_DEPENDS=	libpcre.so:devel/pcre
 DPCRE_MAKE_ARGS=	USE_PCRE=1 USE_PCRE_JIT=1
@@ -58,11 +61,20 @@ OPENSSL_USES=		ssl
 OPENSSL_MAKE_ARGS=	USE_OPENSSL=1 SSL_LIB=${OPENSSLLIB} SSL_INC=${OPENSSLINC}
 LUA_USES=		lua:53
 LUA_MAKE_ARGS=		USE_LUA=1 LUA_INC=${LUA_INCDIR} LUA_LIB=${LUA_LIBDIR} LUA_LIB_NAME=lua-${LUA_VER}
+WOLFSSL_LIB_DEPENDS=	libwolfssl.so:security/wolfssl
+WOLFSSL_MAKE_ARGS=	USE_OPENSSL_WOLFSSL=1 USE_QUIC=1
+WOLFSSL_CFLAGS=		-I${LOCALBASE}/include/wolfssl
 
 .if ${FLAVOR:U} == lua
 OPTIONS_DEFAULT+=	LUA
 .endif
 
+.if ${FLAVOR:U} == wolfssl
+OPTIONS_DEFAULT+=	WOLFSSL
+.else
+OPTIONS_DEFAULT+=	OPENSSL
+.endif
+
 .include <bsd.port.pre.mk>
 
 .if ${SSL_DEFAULT:Mlibressl*} || ${SSL_DEFAULT:M*quictls}