141eba419c
Add SysV-style initscript, complete rewrite from http://patchwork.ozlabs.org/patch/412057/ 'stop' is handled by squid itself to gracefully (as possible) close every pending connection and commit changes to disk. By default this is configured for 30 seconds and can be configured via shutdown_lifetime in /etc/squid.conf if someone is too anxious. The script won't block until squid is properly shutdown - but people should _REALLY_ use restart or reload if that's what they want, instead of stop+start. 'restart' is handled by squid itself, since if we do a stop/start cycle we must wait for a clean shutdown cycle (takes time). 'reload' is also handled by squid itself and it's not the same as restart, it will just trigger a configuration reload without purging runtime cache (RAM) contents. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
74 lines
2.1 KiB
Makefile
74 lines
2.1 KiB
Makefile
################################################################################
|
|
#
|
|
# squid
|
|
#
|
|
################################################################################
|
|
|
|
SQUID_VERSION_MAJOR = 3.4
|
|
SQUID_VERSION = $(SQUID_VERSION_MAJOR).11
|
|
SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz
|
|
SQUID_SITE = http://www.squid-cache.org/Versions/v3/$(SQUID_VERSION_MAJOR)
|
|
SQUID_LICENSE = GPLv2+
|
|
SQUID_LICENSE_FILES = COPYING
|
|
# For squid-01-assume-get-certificate-ok.patch
|
|
SQUID_AUTORECONF = YES
|
|
SQUID_DEPENDENCIES = libcap host-libcap host-pkgconf \
|
|
$(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack)
|
|
SQUID_CONF_ENV = \
|
|
ac_cv_epoll_works=yes \
|
|
ac_cv_func_setresuid=yes \
|
|
ac_cv_func_va_copy=yes \
|
|
ac_cv_func___va_copy=yes \
|
|
ac_cv_func_strnstr=no \
|
|
ac_cv_have_squid=yes \
|
|
ACLOCAL="$(ACLOCAL)" \
|
|
AUTOMAKE="$(AUTOMAKE)"
|
|
SQUID_CONF_OPTS = \
|
|
--enable-async-io=8 \
|
|
--enable-linux-netfilter \
|
|
--enable-removal-policies="lru,heap" \
|
|
--with-filedescriptors=1024 \
|
|
--disable-ident-lookups \
|
|
--with-krb5-config=no \
|
|
--enable-auth-basic="fake getpwnam" \
|
|
--enable-auth-digest="file" \
|
|
--enable-auth-negotiate="wrapper" \
|
|
--enable-auth-ntlm="fake" \
|
|
--disable-strict-error-checking \
|
|
--enable-external-acl-helpers="file_userip" \
|
|
--with-logdir=/var/log/squid/ \
|
|
--with-pidfile=/var/run/squid.pid \
|
|
--with-swapdir=/var/cache/squid/ \
|
|
--enable-icap-client \
|
|
--with-default-user=squid
|
|
|
|
# On uClibc librt needs libpthread
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS)$(BR2_TOOLCHAIN_USES_UCLIBC),yy)
|
|
SQUID_CONF_ENV += ac_cv_search_shm_open="-lrt -lpthread"
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
SQUID_CONF_OPTS += --enable-ssl
|
|
SQUID_DEPENDENCIES += openssl
|
|
endif
|
|
|
|
define SQUID_CLEANUP_TARGET
|
|
rm -f $(addprefix $(TARGET_DIR)/usr/bin/, \
|
|
RunCache RunAccel)
|
|
rm -f $(addprefix $(TARGET_DIR)/etc/, \
|
|
cachemgr.conf mime.conf.default squid.conf.default)
|
|
endef
|
|
|
|
SQUID_POST_INSTALL_TARGET_HOOKS += SQUID_CLEANUP_TARGET
|
|
|
|
define SQUID_USERS
|
|
squid -1 squid -1 * - - - Squid proxy cache
|
|
endef
|
|
|
|
define SQUID_INSTALL_INIT_SYSV
|
|
$(INSTALL) -m 755 -D package/squid/S97squid \
|
|
$(TARGET_DIR)/etc/init.d/S97squid
|
|
endef
|
|
|
|
$(eval $(autotools-package))
|