summaryrefslogtreecommitdiff
path: root/www/squid4/Makefile
blob: 8520f96c10473daeeb313a8703d9093893088a29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# $NetBSD: Makefile,v 1.27 2022/10/26 10:32:06 wiz Exp $

DISTNAME=	squid-4.17
PKGREVISION=	5
CATEGORIES=	www
MASTER_SITES=	http://www.squid-cache.org/Versions/v4/
EXTRACT_SUFX=	.tar.xz

PATCH_SITES=	http://www.squid-cache.org/Versions/v4/changesets/
PATCHFILES=	SQUID-2022_1.patch SQUID-2022_2.patch
PATCH_DIST_STRIP=	-p1

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	http://www.squid-cache.org/
COMMENT=	Post-Harvest_cached WWW proxy cache and accelerator
LICENSE=	gnu-gpl-v2

USE_LANGUAGES=		c c++11
USE_TOOLS+=		perl:run gmake
GNU_CONFIGURE=		yes
GNU_CONFIGURE_STRICT=	no # has sub-configure in libltdl
CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+=	--localstatedir=${SQUID_DATADIR}
CONFIGURE_ARGS+=	--datarootdir=${PREFIX}/share/squid
CONFIGURE_ARGS+=	--disable-arch-native
CONFIGURE_ARGS+=	--enable-cachemgr-hostname=localhost
CONFIGURE_ARGS+=	--enable-delay-pools
CONFIGURE_ARGS+=	--enable-icap-client
CONFIGURE_ARGS+=	--enable-icmp
CONFIGURE_ARGS+=	--enable-poll
CONFIGURE_ARGS+=	--enable-removal-policies=lru,heap
CONFIGURE_ARGS+=	--enable-storeio=${SQUID_BACKENDS:Q}
CONFIGURE_ARGS+=	--with-aio
CONFIGURE_ARGS+=	--with-default-user=${SQUID_USER}
CONFIGURE_ARGS+=	--with-pidfile=${VARBASE}/run/squid.pid

# Let 'purge' find correct config file by default.
CPPFLAGS+=		-DDEFAULT_SQUID_CONF=\"${PKG_SYSCONFDIR}/squid.conf\"

BUILDLINK_TRANSFORM+=	rm:-Werror

MAKE_ENV+=		INSTALL_SCRIPT=${INSTALL_SCRIPT:Q}
MAKE_ENV+=		PKG_PREFIX=${PREFIX} VARBASE=${VARBASE}
REPLACE_PERL+=		contrib/url-normalizer.pl contrib/user-agents.pl \
			scripts/AnnounceCache.pl scripts/access-log-matrix.pl \
			scripts/cache-compare.pl scripts/cachetrace.pl \
			scripts/calc-must-ids.pl scripts/check_cache.pl \
			scripts/fileno-to-pathname.pl scripts/find-alive.pl \
			scripts/flag_truncs.pl scripts/icp-test.pl \
			scripts/icpserver.pl scripts/tcp-banger.pl \
			scripts/trace-job.pl scripts/trace-master.pl \
			scripts/udp-banger.pl scripts/upgrade-1.0-store.pl \
			tools/helper-ok-dying.pl tools/helper-ok.pl
EGFILES=		src/mime.conf.default src/squid.conf.default \
			errors/errorpage.css tools/cachemgr.conf
EGDIR=			share/examples/squid
.for f in cachemgr.conf errorpage.css mime.conf squid.conf
CONF_FILES+=		${PREFIX}/${EGDIR}/${f} ${PKG_SYSCONFDIR}/${f}
.endfor
OWN_DIRS=		${SQUID_DATADIR}
OWN_DIRS_PERMS+=	${SQUID_DATADIR}/cache ${SQUID_USER} ${SQUID_GROUP} 0750 \
			${SQUID_DATADIR}/logs ${SQUID_USER} ${SQUID_GROUP} 0750

.include "Makefile.common"
.include "options.mk"

# Incorrect check for <netinet/ip_icmp.h> on FreeBSD:
CONFIGURE_ENV.FreeBSD+=	ac_cv_header_netinet_ip_icmp_h=yes

INSTALLATION_DIRS=	${EGDIR}

SPECIAL_PERMS+=		libexec/pinger ${SETUID_ROOT_PERMS}

RCD_SCRIPTS=		squid
RCD_SCRIPT_SRC.squid=	files/squid.sh
SMF_NAME=		squid

SUBST_CLASSES+=		confs
SUBST_STAGE.confs=	pre-configure
SUBST_FILES.confs=	src/cf.data.pre
SUBST_SED.confs=	-e "s/@DEFAULT_CACHE_EFFECTIVE_USER@/${SQUID_USER}/"
SUBST_MESSAGE.confs=	Fixing configuration files.

post-build:
	cd ${WRKSRC}/src && ${CP} -pf squid.conf.documented squid.conf.default

post-install:
.for f in ${EGFILES}
	${INSTALL_DATA}	${WRKSRC}/${f} \
		${DESTDIR}${PREFIX}/${EGDIR}/`basename ${f} .default`
.endfor

.include "../../devel/libltdl/buildlink3.mk"
.include "../../mk/atomic64.mk"
.include "../../mk/bsd.pkg.mk"