PORTNAME=	adcli
PORTVERSION=	0.9.2
PORTREVISION=	1
CATEGORIES=	net-mgmt net security
MASTER_SITES=	https://gitlab.freedesktop.org/realmd/adcli/-/archive/${PORTVERSION}/

MAINTAINER=	mi@aldan.algebra.com
COMMENT=	Tool for performing actions on an Active Directory domain
WWW=		https://www.freedesktop.org/software/realmd/adcli/adcli.html

LICENSE=	LGPL21

BUILD_DEPENDS=	xsltproc:textproc/libxslt	\
		docbook-xml>0:textproc/docbook-xml	\
		docbook-xsl>0:textproc/docbook-xsl

GNU_CONFIGURE=	yes
GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
TEST_TARGET=	check

OPTIONS_DEFINE=	DOCS
OPTIONS_SINGLE=		GSSAPI
OPTIONS_SINGLE_GSSAPI=	GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT
OPTIONS_DEFAULT=	GSSAPI_BASE

# xsltproc and docbook are needed to create the man-page. xmlto is only
# required for generating HTML-documents, which are optional.
CONFIGURE_ENV+=	ac_cv_path_KRB5_CONFIG=${KRB5CONFIG}	\
	ac_cv_path_XMLTO=${PORT_OPTIONS:MDOCS:S|DOCS|${LOCALBASE}/bin/xmlto|:S|^$|${TRUE}|}
CONFIGURE_ARGS=	--sysconfdir=/etc

CFLAGS+=	-I${ICONV_INCLUDE_PATH}
LDFLAGS+=	-L${ICONV_LIB_PATH} ${ICONV_LIB}
USES=	autoreconf iconv ldap libtool localbase tar:bz2

DOCS_BUILD_DEPENDS=	xmlto:textproc/xmlto
GSSAPI_BASE_USES=	gssapi
GSSAPI_MIT_USES=	gssapi:mit,flags
GSSAPI_HEIMDAL_USES=	gssapi:heimdal,flags

GSSAPI_BASE_CONFIGURE_ARGS=	--sysconfdir=/etc
GSSAPI_BASE_CONFIGURE_ENV=	KRB5_CFLAGS="-I${GSSAPIINCDIR}"	\
				KRB5_LIBS="${GSSAPILIBS}"
GSSAPI_HEIMDAL_CONFIGURE_ARGS=	--sysconfdir=${LOCALBASE}/etc
GSSAPI_HEIMDAL_CONFIGURE_ENV=	KRB5_CFLAGS="-I${GSSAPIINCDIR}/heimdal" \
				KRB5_LIBS="${GSSAPILDFLAGS} ${GSSAPILIBS}"
GSSAPI_MIT_CONFIGURE_ARGS=	--sysconfdir=${LOCALBASE}/etc
GSSAPI_MIT_CONFIGURE_ENV=	KRB5_CFLAGS="-I${GSSAPIINCDIR}/gssapi" \
				KRB5_LIBS="${GSSAPILDFLAGS} ${GSSAPILIBS} -lk5crypto"

GSSAPI_BASE_CFLAGS+=	-DHEIMDAL
GSSAPI_HEIMDAL_CFLAGS+=	-DHEIMDAL
# Quiets down warnings inside MIT's headers:
GSSAPI_MIT_CFLAGS+=	-DTARGET_OS_MAC=0

post-build:
	${RM} ${WRKSRC}/doc/html/adcli-docs.proc	# An empty file...

.include <bsd.port.mk>
