# $OpenBSD: Makefile,v 1.20 2008/12/29 19:17:36 rui Exp $

SHARED_ONLY=		Yes

COMMENT-main=		RADIUS server implementation
COMMENT-iodbc=		freeradius iodbc rlm addon
COMMENT-mysql=		freeradius mysql rlm addon
COMMENT-pgsql=		freeradius pgsql rlm addon
COMMENT-ldap=		freeradius ldap rlm addon

V=			2.1.3
DISTNAME=		freeradius-server-$V
PKGNAME-main=		freeradius-$V
PKGNAME-iodbc=		freeradius-iodbc-$V
PKGNAME-mysql=		freeradius-mysql-$V
PKGNAME-pgsql=		freeradius-pgsql-$V
PKGNAME-ldap=		freeradius-ldap-$V
SHARED_LIBS=		freeradius-eap	3.0 \
			freeradius-radius 3.0

CATEGORIES=	net
MASTER_SITES=	ftp://ftp.freeradius.org/pub/radius/ \
		ftp://ftp.freeradius.org/pub/radius/old/
EXTRACT_SUFX=	.tar.bz2

HOMEPAGE=	http://www.freeradius.org/

MAINTAINER=	Rui Reis <rui@openbsd.org>

# GPLv2 - LGPLv2
PERMIT_PACKAGE_CDROM=	Yes
PERMIT_PACKAGE_FTP=	Yes
PERMIT_DISTFILES_CDROM=	Yes
PERMIT_DISTFILES_FTP=	Yes

CONFIGURE_STYLE=gnu dest
CONFIGURE_ARGS=	${CONFIGURE_SHARED} \
		--localstatedir='$${DESTDIR}/var' \
		--with-large-files \
		--with-snmp \
		--with-pic \
		--without-rlm-perl \
		--without-rlm-python \
		--without-rlm_eap_ikev2 \
		--without-rlm_pam \
		--without-rlm_sql_oracle \
		--without-rlm_sql_db2 \
		--without-rlm_sql_unixodbc \
		--disable-ltdl-install \
		--with-ltdl-lib=${LOCALBASE}/lib \
		--with-ltdl-include=${LOCALBASE}/include \
		--with-rlm-krb5-include-dir=/usr/include/kerberosV 
	
NO_REGRESS=	Yes

MULTI_PACKAGES=	-main

PSEUDO_FLAVORS=	no_ldap no_mysql no_pgsql no_iodbc
FLAVOR?=		

USE_GMAKE=	Yes
USE_LIBTOOL=	Yes

BUILD_DEPENDS=	::net/net-snmp
LIB_DEPENDS=	gdbm.>=3::databases/gdbm \
		ltdl.>=4::devel/libtool,-ltdl

CFLAGS+=       -I${LOCALBASE}/include

.if ${FLAVOR:L:Mno_iodbc}
CONFIGURE_ARGS+=--without-rlm_sql_iodbc
.else
MULTI_PACKAGES+=-iodbc
BUILD_DEPENDS+=	::databases/iodbc
CONFIGURE_ARGS+=--with-rlm_sql_iodbc \
		--with-iodbc-include-dir='${LOCALBASE}/include' \
		--with-iodbc-lib-dir='${LOCALBASE}/lib'
.endif

.if ${FLAVOR:L:Mno_ldap}
CONFIGURE_ARGS+=--without-rlm_ldap
.else
MULTI_PACKAGES+=-ldap
BUILD_DEPENDS+=	:openldap-client-*:databases/openldap
CONFIGURE_ARGS+=--with-rlm_ldap
.endif

.if ${FLAVOR:L:Mno_mysql}
CONFIGURE_ARGS+=--without-rlm_sql_mysql
.else
MULTI_PACKAGES+=-mysql
BUILD_DEPENDS+=	:mysql-client-*:databases/mysql
CONFIGURE_ARGS+=--with-rlm_sql_mysql
.endif

.if ${FLAVOR:L:Mno_pgsql}
CONFIGURE_ARGS+=--without-rlm_sql_postgresql
.else
MULTI_PACKAGES+=-pgsql
BUILD_DEPENDS+=	:postgresql-client-*:databases/postgresql
CONFIGURE_ARGS+=--with-rlm_sql_postgresql \
		--with-rlm-sql-postgresql-lib-dir=${LOCALBASE}/lib/ \
		--with-rlm-sql-postgresql-include-dir=${LOCALBASE}/include/postgresql
.endif

LIB_DEPENDS-iodbc=	iodbc.>=2::databases/iodbc
RUN_DEPENDS-iodbc=	::net/freeradius
LIB_DEPENDS-ldap=	lber.>=8,ldap_r.>=8:openldap-client-*:databases/openldap \
			freeradius-radius.>=1::net/freeradius
WANTLIB-ldap=		crypto sasl2 ssl asn1 com_err gssapi krb5
LIB_DEPENDS-mysql=	mysqlclient_r.>=16:mysql-client-*:databases/mysql
RUN_DEPENDS-mysql=	::net/freeradius
WANTLIB-mysql=		crypto m pthread ssl z
LIB_DEPENDS-pgsql=	pq.>=2:postgresql-client-*:databases/postgresql
RUN_DEPENDS-pgsql=	::net/freeradius
WANTLIB-main=		c com_err crypto krb5 pcap pthread readline ssl termcap

post-configure:
	@perl -pi -e 's,/etc/raddb,${SYSCONFDIR}/raddb,g' ${WRKSRC}/man/*/*

post-install:
.for f in bin/radlast bin/radtest sbin/checkrad sbin/radwatch \
    share/examples/freeradius/dictionary share/examples/freeradius/radiusd.conf 
	@perl -pi -e 's,\$${DESTDIR},,g' ${PREFIX}/$f
.endfor

.include <bsd.port.mk>
