Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Aug 2014 12:47:42 +0000 (UTC)
From:      John Marino <marino@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r365181 - in head/www/squid33: . files
Message-ID:  <201408171247.s7HClgHx090183@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marino
Date: Sun Aug 17 12:47:41 2014
New Revision: 365181
URL: http://svnweb.freebsd.org/changeset/ports/365181
QAT: https://qat.redports.org/buildarchive/r365181/

Log:
  Stage www/squid33
  
  This port needed a *lot* of love, and it needs a lot more.  It has a
  ton of options (Do we need so many options rather than enabled by
  default?) and I suspect many options aren't staged properly.  Also the
  way the plist is put together is crazy.  This needs a proper static
  pkg-plist with PLIST_SUB switches.  This port badly needs a full-time
  maintainer.  (www/squid32 and www/squid are just as bad)
  
  I also added patch from PR 192119 while I was here.
  
  PR:		189903
  Submitted by:	joe (thralling.com)
  Lotsa TLC:	marino

Added:
  head/www/squid33/files/patch-compat_compat.h   (contents, props changed)
Modified:
  head/www/squid33/Makefile

Modified: head/www/squid33/Makefile
==============================================================================
--- head/www/squid33/Makefile	Sun Aug 17 12:41:58 2014	(r365180)
+++ head/www/squid33/Makefile	Sun Aug 17 12:47:41 2014	(r365181)
@@ -3,35 +3,22 @@
 
 PORTNAME=	squid
 PORTVERSION=	3.3.${SQUID_STABLE_VER}
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	www ipv6
-MASTER_SITES=	ftp://ftp.squid-cache.org/pub/%SUBDIR%/ \
-		http://mirrors.ccs.neu.edu/Squid/ \
-		ftp://ftp.fu-berlin.de/unix/www/squid/squid/ \
-		ftp://ftp.nl.uu.net/pub/unix/www/squid/ \
-		ftp://ftp.solnet.ch/mirror/squid/ \
-		ftp://ftp.ntua.gr/pub/www/Squid/squid/ \
-		${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/www/squid,} \
-		http://www.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
+MASTER_SITES=	http://www.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
 		http://www2.us.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
-		http://www3.us.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
 		http://www1.at.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
 		http://www.eu.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
-		http://www1.ie.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
-		http://www1.jp.squid-cache.org/Versions/v3/${PORTVERSION:R}/ \
-		http://www1.za.squid-cache.org/Versions/v3/${PORTVERSION:R}/
+		http://www1.jp.squid-cache.org/Versions/v3/${PORTVERSION:R}/
 MASTER_SITE_SUBDIR=	squid
-DIST_SUBDIR=	squid3.3
 PKGNAMESUFFIX=	33
+DIST_SUBDIR=	squid3.3
 
 PATCH_SITES=	http://www.squid-cache.org/%SUBDIR%/ \
 		http://www2.us.squid-cache.org/%SUBDIR%/ \
-		http://www3.us.squid-cache.org/%SUBDIR%/ \
 		http://www1.at.squid-cache.org/%SUBDIR%/ \
 		http://www.eu.squid-cache.org/%SUBDIR%/ \
-		http://www1.ie.squid-cache.org/%SUBDIR%/ \
-		http://www1.jp.squid-cache.org/%SUBDIR%/ \
-		http://www2.tw.squid-cache.org/%SUBDIR%/
+		http://www1.jp.squid-cache.org/%SUBDIR%/
 PATCH_SITE_SUBDIR=	Versions/v3/${PORTVERSION:R}/changesets
 PATCHFILES=	#empty
 
@@ -44,17 +31,16 @@ LICENSE_FILE=	${WRKSRC}/COPYING
 SQUID_STABLE_VER=	11
 
 CONFLICTS_INSTALL=	squid-2.[0-9].* squid32-* cacheboy-[0-9]* lusca-head-[0-9]*
-USES=		perl5 tar:bzip2
+USES=		perl5 tar:bzip2 shebangfix
+SHEBANG_FILES=	scripts/*.pl contrib/*.pl src/*.pl tools/*.pl
 GNU_CONFIGURE=	yes
 USE_RC_SUBR=	squid
 
 USERS=		squid
 GROUPS=		squid
 
-MAN1=		squidclient.1
-MAN8=		cachemgr.cgi.8 squid.8
-docs=		QUICKSTART README RELEASENOTES.html doc/debug-sections.txt
-PORTDOCS=	${docs:T}
+MYDOCS=		QUICKSTART README RELEASENOTES.html doc/debug-sections.txt
+PORTDOCS=	${MYDOCS:T}
 PORTEXAMPLES=	*
 SUB_FILES+=	pkg-install pkg-message
 
@@ -65,7 +51,6 @@ OPTIONS_DEFINE=	ARP_ACL AUTH_KERB AUTH_L
 		LARGEFILE SNMP SSL SSL_CRTD STACKTRACES STRICT_HTTP \
 		TP_IPF TP_IPFW TP_PF VIA_DB WCCP WCCPV2 DOCS EXAMPLES
 
-NO_STAGE=	yes
 # TODO:
 # add an option for external_acl/session (requires some kind of external
 # Berkeley DB support, unsure which one)
@@ -208,9 +193,10 @@ CONFIGURE_ARGS=	--with-default-user=squi
 		--disable-linux-tproxy \
 		--disable-translation
 
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
 
-.if ${CC:T:Mclang} == "clang" || ${CXX:T:Mclang++} == "clang++" || ${OSVERSION} >= 1000024
+.if ${CC:T:Mclang} == "clang" || ${CXX:T:Mclang++} == "clang++" \
+ || ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000024
 CXXFLAGS+=	-Wno-unused-private-field
 .endif
 
@@ -236,16 +222,15 @@ libexec+=	basic_db_auth \
 		ext_unix_group_acl \
 		ntlm_fake_auth \
 		ntlm_smb_lm_auth
-MAN8+=		basic_getpwnam_auth.8 basic_ncsa_auth.8 basic_pam_auth.8 \
-		basic_radius_auth.8 basic_db_auth.8 \
-		digest_file_auth.8 \
-		ext_file_userip_acl.8 ext_time_quota_acl.8 \
-		ext_unix_group_acl.8
+PLIST_FILES+=	basic_getpwnam_auth.8.gz basic_ncsa_auth.8.gz \
+		basic_pam_auth.8.gz basic_radius_auth.8.gz basic_db_auth.8.gz \
+		digest_file_auth.8.gz ext_file_userip_acl.8.gz \
+		ext_time_quota_acl.8.gz ext_unix_group_acl.8.gz
 .if ${PORT_OPTIONS:MAUTH_LDAP}
 USE_OPENLDAP=	yes
 CFLAGS+=	-I${LOCALBASE}/include
 LDFLAGS+=	-L${LOCALBASE}/lib
-MAN8+=		basic_ldap_auth.8 ext_ldap_group_acl.8
+PLIST_FILES+=	basic_ldap_auth.8.gz ext_ldap_group_acl.8.gz
 basic_auth+=	LDAP
 external_acl+=	LDAP_group
 libexec+=	basic_ldap_auth ext_ldap_group_acl
@@ -255,7 +240,7 @@ LIB_DEPENDS+=	libsasl2.so:${PORTSDIR}/se
 CFLAGS+=	-I${LOCALBASE}/include
 CPPFLAGS+=	-I${LOCALBASE}/include
 LDFLAGS+=	-L${LOCALBASE}/lib
-MAN8+=		basic_sasl_auth.8
+PLIST_FILES+=	basic_sasl_auth.8.gz
 basic_auth+=	SASL
 libexec+=	basic_sasl_auth
 .endif
@@ -266,14 +251,14 @@ basic_auth+=	SMB
 external_acl+=	wbinfo_group
 libexec+=	basic_smb_auth basic_smb_auth.sh \
 		ext_wbinfo_group_acl
-MAN8+=		ext_wbinfo_group_acl.8
+PLIST_FILES+=	ext_wbinfo_group_acl.8.gz
 .endif
 .if ${PORT_OPTIONS:MAUTH_SQL}
 USE_MYSQL=	yes
 RUN_DEPENDS+=	p5-DBD-mysql>=0:${PORTSDIR}/databases/p5-DBD-mysql
 external_acl+=	SQL_session
 libexec+=	ext_sql_session_acl
-MAN8+=		ext_sql_session_acl.8
+PLIST_FILES+=	ext_sql_session_acl.8.gz
 .endif
 # POLA: allow the old global make.conf(5) (pre src.conf(5)) defines, too:
 .if ${PORT_OPTIONS:MAUTH_NIS} && !defined(NO_NIS) && !defined(WITHOUT_NIS)
@@ -285,16 +270,12 @@ libexec+=	basic_nis_auth
 negotiate_auth=	kerberos wrapper
 libexec+=	negotiate_kerberos_auth negotiate_kerberos_auth_test \
 		negotiate_wrapper_auth
-MAN8+=		negotiate_kerberos_auth.8
+PLIST_FILES+=	negotiate_kerberos_auth.8.gz
 # the kerberos_ldap_group external helper depends on LDAP and SASL:
 .if ${PORT_OPTIONS:MAUTH_LDAP} && ${PORT_OPTIONS:MAUTH_SASL}
 external_acl+=	kerberos_ldap_group
 libexec+=	ext_kerberos_ldap_group_acl \
 		cert_tool
-# TODO
-# XXX: this manpage is present in Squid's source but is not being
-# built/installed yet (Squid 3.3.3 as at 04/2013).
-#MAN8+=		ext_kerberos_ldap_group_acl.8
 .endif
 .else
 negotiate_auth=	none
@@ -355,7 +336,7 @@ CONFIGURE_ARGS+=	--disable-snmp
 # This makes it currently impossible to combine this macro with OPTIONS to
 # conditionally include OpenSSL support.
 # XXX: is this still true with OptionsNG as of 2012-10?
-.include "${PORTSDIR}/Mk/bsd.openssl.mk"
+.include "${.CURDIR}/../../Mk/bsd.openssl.mk"
 CONFIGURE_ARGS+=	--enable-ssl \
 			--with-openssl="${OPENSSLBASE}"
 CFLAGS+=	-I${OPENSSLINC}
@@ -476,7 +457,25 @@ PLIST_DIRS=	%%ETCDIR%%/icons/silk %%ETCD
 PLIST_FILES=	${etc_files:S,^,etc/,} \
 		%%ETCDIR%%/icons/SN.png \
 		${icon_silk_files:S,^,%%ETCDIR%%/icons/silk/,} \
-		${libexec:S,^,libexec/squid/,} ${sbin:S,^,sbin/,}
+		${libexec:S,^,libexec/squid/,} ${sbin:S,^,sbin/,} \
+		man/man8/cachemgr.cgi.8.gz \
+		man/man8/basic_db_auth.8.gz \
+		man/man8/basic_getpwnam_auth.8.gz \
+		man/man8/basic_ncsa_auth.8.gz \
+		man/man8/basic_pam_auth.8.gz \
+		man/man8/basic_radius_auth.8.gz \
+		man/man8/digest_file_auth.8.gz \
+		man/man8/ext_file_userip_acl.8.gz \
+		man/man8/ext_unix_group_acl.8.gz \
+		man/man8/negotiate_kerberos_auth.8.gz \
+		man/man8/ext_time_quota_acl.8.gz \
+		man/man8/squid.8.gz \
+		man/man1/squidclient.1.gz \
+		%%ETCDIR%%/cachemgr.conf \
+		%%ETCDIR%%/mime.conf \
+		%%ETCDIR%%/msntauth.conf \
+		%%ETCDIR%%/squid.conf \
+		%%ETCDIR%%/errorpage.css
 
 PLIST_FILES+=	%%ETCDIR%%/errors/COPYRIGHT %%ETCDIR%%/errors/TRANSLATORS
 .for d in ${error_dirs}
@@ -485,40 +484,30 @@ PLIST_FILES+=	${error_files:S,^,%%ETCDIR
 .endfor
 PLIST_FILES+=	${error_dir_links:S,^,%%ETCDIR%%/errors/,}
 PLIST_DIRS+=	%%ETCDIR%%/errors
-PLIST_DIRSTRY+=	%%ETCDIR%%
+PLIST_DIRSTRY+=	%%ETCDIR%% /var/log/squid /var/run/squid \
+		/var/squid/cache/squid /var/squid/cache \
+		/var/squid/logs /var/squid
 
 post-patch:
-	@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
-	    ${WRKSRC}/src/cf.data.pre
-
-pre-install:
+	@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/src/cf.data.pre
 # Prevent installation of .orig files by deleting them.
 	@${FIND} ${WRKSRC} -name '*.bak' -delete
 	@${FIND} ${WRKSRC} -name '*.orig' -delete
 
-pre-su-install:
-	@${SETENV} ${SCRIPTS_ENV} PKG_PREFIX=${PREFIX} \
-	    ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-
 post-install:
 .if ${PORT_OPTIONS:MEXAMPLES}
-	@${MKDIR} ${EXAMPLESDIR}
-	${INSTALL_DATA} ${WRKSRC}/helpers/basic_auth/DB/passwd.sql ${EXAMPLESDIR}
+	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	${INSTALL_DATA} ${WRKSRC}/helpers/basic_auth/DB/passwd.sql \
+		${STAGEDIR}${EXAMPLESDIR}
 .endif
 .if ${PORT_OPTIONS:MICMP}
-	${CHMOD} 4510 ${PREFIX}/libexec/squid/pinger; \
-	${CHGRP} squid ${PREFIX}/libexec/squid/pinger
+	${CHMOD} 4510 ${STAGEDIR}${PREFIX}/libexec/squid/pinger; \
+	${CHGRP} squid ${STAGEDIR}${PREFIX}/libexec/squid/pinger
 .endif
 .if ${PORT_OPTIONS:MDOCS}
-	@${MKDIR} ${DOCSDIR}
-	cd ${WRKSRC} && ${INSTALL_DATA} ${docs} ${DOCSDIR}
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	cd ${WRKSRC} && ${INSTALL_DATA} ${MYDOCS} ${STAGEDIR}${DOCSDIR}
 .endif
-	@${SETENV} PKG_PREFIX=${PREFIX} \
-	    ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
-
-	@${ECHO_CMD} "===> post-installation information for ${PKGNAME}:"
-	@${ECHO_CMD} ""
-	@${CAT} ${PKGMESSAGE}
-	@${ECHO_CMD} ""
+	${MKDIR} ${STAGEDIR}/var/squid/logs
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>

Added: head/www/squid33/files/patch-compat_compat.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/squid33/files/patch-compat_compat.h	Sun Aug 17 12:47:41 2014	(r365181)
@@ -0,0 +1,18 @@
+--- compat/compat.h.orig	2013-11-30 13:55:13 UTC
++++ compat/compat.h
+@@ -104,10 +104,12 @@
+  */
+ #include "compat/GnuRegex.h"
+ 
+-/* some functions are unsafe to be used in Squid. */
+-#include "compat/unsafe.h"
+-
+ /* cppunit is not quite C++0x compatible yet */
+ #include "compat/cppunit.h"
+ 
++/* some functions are unsafe to be used in Squid. */
++/* XXX MBi do this only after including cppunit.h as that itself also
++   uses printf() */
++#include "compat/unsafe.h"
++
+ #endif /* _SQUID_COMPAT_H */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201408171247.s7HClgHx090183>