openbsd-ports/www/squid/Makefile
2012-12-11 18:22:54 +00:00

129 lines
3.5 KiB
Makefile

# $OpenBSD: Makefile,v 1.137 2012/12/11 18:22:54 sthen Exp $
MULTI_PACKAGES= -main -ntlm
BROKEN-hppa= broken autoconf test for atomic ops; test succeeds but actual code build fails
COMMENT-main= WWW and FTP proxy cache and accelerator
COMMENT-ldap= LDAP authentication/ACL support for Squid
COMMENT-ntlm= NTLM authentication/ACL support for Squid
V= 3.2.4
REVISION-main= 0
DISTNAME= squid-$V
PKGNAME-main= squid-$V
PKGNAME-ldap= squid-ldap-$V
PKGNAME-ntlm= squid-ntlm-$V
CATEGORIES= www
# bzr repository at https://code.launchpad.net/squid
MASTER_SITES= ${HOMEPAGE}Versions/v${V:R:R}/${V:R}/
MAINTAINER= Stuart Henderson <sthen@openbsd.org>
HOMEPAGE= http://www.squid-cache.org/
# GPLv2+
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB += c m pthread stdc++
WANTLIB-main= ${WANTLIB} asn1 crypto gssapi krb5 ssl
SYSCONFDIR= ${BASESYSCONFDIR}/squid
LOCALSTATEDIR= ${BASELOCALSTATEDIR}/squid
SUBST_VARS= LOCALSTATEDIR
PSEUDO_FLAVORS= no_ldap
FLAVOR?=
BASIC_AUTH= NCSA SMB NIS radius
DIGEST_AUTH= file
EXTERNAL_ACL= file_userip session unix_group wbinfo_group
STOREIO= aufs ufs diskd #coss rock
SEPARATE_BUILD= Yes
AUTOCONF_VERSION= 2.68
CONFIGURE_STYLE= autoconf
MODGNU_CONFIG_GUESS_DIRS= ${WRKSRC}/cfgaux
USE_GROFF= Yes
USE_LIBTOOL= Yes
CONFIGURE_ARGS+= ${CONFIGURE_SHARED} \
--datadir="${PREFIX}/share/squid" \
--libexecdir="${PREFIX}/libexec/squid" \
--disable-loadable-modules \
--enable-arp-acl \
--enable-auth \
--enable-auth-basic="${BASIC_AUTH}" \
--enable-auth-digest="${DIGEST_AUTH}" \
--enable-auth-negotiate="kerberos" \
--enable-auth-ntlm="fake smb_lm" \
--enable-delay-pools \
--enable-external-acl-helpers="${EXTERNAL_ACL}" \
--enable-follow-x-forwarded-for \
--enable-forw-via-db \
--enable-http-violations \
--enable-icap-client \
--enable-ipv6 \
--enable-referer-log \
--enable-removal-policies="lru heap" \
--enable-ssl \
--enable-storeio="${STOREIO}" \
--with-default-user="_squid" \
--with-filedescriptors=8192 \
--with-pidfile="/var/run/squid.pid" \
--with-pthreads \
--with-swapdir="${LOCALSTATEDIR}/cache"
# PF transparent support requires access to /dev/pf to retrieve the original
# source address; ipfw-transparent (which requires divert-to) uses an
# unprivileged getsockname() call instead.
CONFIGURE_ARGS+= --disable-pf-transparent \
--enable-ipfw-transparent
CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib" \
ac_cv_header_et_com_err_h=false
E= ${TRUEPREFIX}/share/examples/squid
FAKE_FLAGS= sysconfdir=$E \
DEFAULT_CONFIG_FILE=$E/squid.conf \
DEFAULT_MIME_TABLE=$E/mime.conf
REGRESS_DEPENDS= devel/cppunit
.if !${FLAVOR:L:Mno_ldap}
MULTI_PACKAGES+= -ldap
BASIC_AUTH+= LDAP
DIGEST_AUTH+= LDAP
EXTERNAL_ACL+= LDAP_group
RUN_DEPENDS-ldap= ${BASE_PKGPATH}
LIB_DEPENDS-ldap= databases/openldap
WANTLIB-ldap += ${WANTLIB} asn1 com_err crypto gssapi krb5
WANTLIB-ldap += lber-2.4 ldap-2.4 sasl2 ssl
.endif
RUN_DEPENDS-ntlm= net/samba,ads ${BASE_PKGPATH}
post-extract:
@cp ${FILESDIR}/krb5-config ${WRKDIR}/bin
@chmod a+x ${WRKDIR}/bin/krb5-config
pre-build:
@cd ${WRKSRC}; \
perl -pi -e 's,/usr/local,${LOCALBASE},g' \
helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.pl.in \
helpers/*/*/config.test \
src/squid.8.in
post-install:
rm -rf ${WRKINST}/var/squid
cd ${PREFIX}/share/examples/squid; \
rm -f mime.conf squid.conf cachemgr.conf errorpage.css
${INSTALL_DATA_DIR} ${PREFIX}/share/snmp/mibs
-cd ${PREFIX}/share; mv squid/mib.txt snmp/mibs/SQUID-MIB.txt
.include <bsd.port.mk>