squid: initial import from old-packages
Signed-off-by: Luka Perkov <luka@openwrt.org>
This commit is contained in:
parent
b206a14bd8
commit
3df768771f
6 changed files with 311 additions and 0 deletions
132
net/squid/Makefile
Normal file
132
net/squid/Makefile
Normal file
|
@ -0,0 +1,132 @@
|
|||
#
|
||||
# Copyright (C) 2006-2015 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=squid
|
||||
PKG_VERSION:=3.4.10
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_MAINTAINER:=Luka Perkov <luka@openwrt.org>
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=http://www.squid-cache.org/Versions/v3/3.4/
|
||||
PKG_MD5SUM:=3136edfe9bc2458e725671b0d2455702
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_INSTALL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/squid/Default
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=Web Servers/Proxies
|
||||
URL:=http://www.squid-cache.org/
|
||||
endef
|
||||
|
||||
define Package/squid
|
||||
$(call Package/squid/Default)
|
||||
MENU:=1
|
||||
DEPENDS:=+libopenssl +libpthread +librt +libltdl +libstdcpp
|
||||
TITLE:=full-featured Web proxy cache
|
||||
endef
|
||||
|
||||
define Package/squid/description
|
||||
Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more.
|
||||
It reduces bandwidth and improves response times by caching and reusing
|
||||
frequently-requested web pages.
|
||||
endef
|
||||
|
||||
define Package/squid-mod-cachemgr
|
||||
$(call Package/squid/Default)
|
||||
DEPENDS:=squid
|
||||
TITLE:=Web based proxy manager and reporting tool
|
||||
endef
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--config-cache \
|
||||
--datadir=/usr/share/squid \
|
||||
--libexecdir=/usr/lib/squid \
|
||||
--sysconfdir=/etc/squid \
|
||||
--enable-shared \
|
||||
--disable-static \
|
||||
--enable-icmp \
|
||||
--enable-delay-pools \
|
||||
--enable-icap-client \
|
||||
--enable-kill-parent-hack \
|
||||
--disable-snmp \
|
||||
--enable-ssl \
|
||||
--enable-cache-digests \
|
||||
--enable-auth \
|
||||
--enable-auth-basic \
|
||||
--enable-auth-ntlm \
|
||||
--enable-auth-negotiate \
|
||||
--enable-auth-digest \
|
||||
--enable-linux-netfilter \
|
||||
--disable-unlinkd \
|
||||
--enable-x-accelerator-vary \
|
||||
--disable-translation \
|
||||
--disable-auto-locale \
|
||||
--with-dl \
|
||||
--with-pthreads \
|
||||
--without-expat \
|
||||
--without-libxml2 \
|
||||
--without-nettle \
|
||||
--with-openssl=$(STAGING_DIR)/usr \
|
||||
--enable-epoll \
|
||||
--with-maxfd=4096 \
|
||||
--disable-external-acl-helpers \
|
||||
--disable-auth-negotiate \
|
||||
--disable-auth-ntlm \
|
||||
--disable-auth-digest \
|
||||
--disable-auth-basic \
|
||||
--disable-arch-native \
|
||||
--with-krb5-config=no \
|
||||
--without-libcap
|
||||
|
||||
CONFIGURE_VARS += \
|
||||
ac_cv_header_linux_netfilter_ipv4_h=yes \
|
||||
ac_cv_epoll_works=yes \
|
||||
|
||||
define Build/Compile
|
||||
$(MAKE) -C $(PKG_BUILD_DIR)/lib \
|
||||
all
|
||||
$(MAKE) -C $(PKG_BUILD_DIR) \
|
||||
DESTDIR="$(PKG_INSTALL_DIR)" \
|
||||
install
|
||||
endef
|
||||
|
||||
define Package/squid/install
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/squid $(1)/usr/sbin/
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/config
|
||||
$(INSTALL_CONF) ./files/squid.config $(1)/etc/config/squid
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/squid
|
||||
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/squid/mime.conf $(1)/etc/squid/
|
||||
$(INSTALL_CONF) ./files/squid.conf $(1)/etc/squid/
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/init.d/
|
||||
$(INSTALL_BIN) ./files/squid.init $(1)/etc/init.d/squid
|
||||
|
||||
$(INSTALL_DIR) $(1)/usr/share/squid/icons/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/share/squid/icons/* $(1)/usr/share/squid/icons/
|
||||
|
||||
$(INSTALL_DIR) $(1)/usr/share/squid/errors/templates/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/share/squid/errors/templates/* $(1)/usr/share/squid/errors/templates/
|
||||
endef
|
||||
|
||||
define Package/squid-mod-cachemgr/install
|
||||
$(INSTALL_DIR) $(1)/www/cgi-bin/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/squid/cachemgr.cgi $(1)/www/cgi-bin/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,squid))
|
||||
$(eval $(call BuildPackage,squid-mod-cachemgr))
|
44
net/squid/files/squid.conf
Normal file
44
net/squid/files/squid.conf
Normal file
|
@ -0,0 +1,44 @@
|
|||
acl localnet src 10.0.0.0/8
|
||||
acl localnet src 172.16.0.0/12
|
||||
acl localnet src 192.168.0.0/16
|
||||
acl localnet src fc00::/7
|
||||
acl localnet src fe80::/10
|
||||
|
||||
acl ssl_ports port 443
|
||||
|
||||
acl safe_ports port 80
|
||||
acl safe_ports port 21
|
||||
acl safe_ports port 443
|
||||
acl safe_ports port 70
|
||||
acl safe_ports port 210
|
||||
acl safe_ports port 1025-65535
|
||||
acl safe_ports port 280
|
||||
acl safe_ports port 488
|
||||
acl safe_ports port 591
|
||||
acl safe_ports port 777
|
||||
acl connect method connect
|
||||
|
||||
http_access deny !safe_ports
|
||||
http_access deny connect !ssl_ports
|
||||
|
||||
http_access allow localhost manager
|
||||
http_access deny manager
|
||||
|
||||
http_access deny to_localhost
|
||||
|
||||
http_access allow localnet
|
||||
http_access allow localhost
|
||||
|
||||
http_access deny all
|
||||
|
||||
refresh_pattern ^ftp: 1440 20% 10080
|
||||
refresh_pattern ^gopher: 1440 0% 1440
|
||||
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
|
||||
refresh_pattern . 0 20% 4320
|
||||
|
||||
access_log none
|
||||
cache_log /dev/null
|
||||
cache_store_log /dev/null
|
||||
logfile_rotate 0
|
||||
|
||||
logfile_daemon /dev/null
|
5
net/squid/files/squid.config
Normal file
5
net/squid/files/squid.config
Normal file
|
@ -0,0 +1,5 @@
|
|||
config squid 'squid'
|
||||
option config_file '/etc/squid/squid.conf'
|
||||
option http_port '3128'
|
||||
option coredump_dir '/tmp/squid'
|
||||
option visible_hostname 'OpenWrt'
|
52
net/squid/files/squid.init
Normal file
52
net/squid/files/squid.init
Normal file
|
@ -0,0 +1,52 @@
|
|||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (C) 2015 OpenWrt.org
|
||||
|
||||
START=90
|
||||
STOP=10
|
||||
|
||||
USE_PROCD=1
|
||||
PROG=/usr/sbin/squid
|
||||
CONFIGFILE="/tmp/squid/squid.conf"
|
||||
|
||||
validate_squid_section() {
|
||||
uci_validate_section squid squid "${1}" \
|
||||
'config_file:string' \
|
||||
'http_port:port:3128' \
|
||||
'coredump_dir:string' \
|
||||
'visible_hostname:string:OpenWrt' \
|
||||
'pinger_enable:string:off'
|
||||
}
|
||||
|
||||
start_service() {
|
||||
local config_file http_port coredump_dir visible_hostname pinger_enable
|
||||
|
||||
validate_squid_section squid || {
|
||||
echo "validation failed"
|
||||
return 1
|
||||
}
|
||||
|
||||
mkdir -p $(dirname $CONFIGFILE)
|
||||
|
||||
cat $config_file > $CONFIGFILE
|
||||
echo http_port $http_port >> $CONFIGFILE
|
||||
echo coredump_dir $coredump_dir >> $CONFIGFILE
|
||||
echo visible_hostname $visible_hostname >> $CONFIGFILE
|
||||
echo pinger_enable $pinger_enable >> $CONFIGFILE
|
||||
|
||||
procd_open_instance
|
||||
procd_set_param command $PROG -s -f $CONFIGFILE -N
|
||||
procd_set_param file $CONFIGFILE
|
||||
procd_set_param respawn
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service()
|
||||
{
|
||||
${PROG} -f $CONFIGFILE -N -k shutdown 2>/dev/null
|
||||
}
|
||||
|
||||
service_triggers()
|
||||
{
|
||||
procd_add_reload_trigger "squid"
|
||||
procd_add_validation validate_squid_section
|
||||
}
|
49
net/squid/patches/001-cross_compile.patch
Normal file
49
net/squid/patches/001-cross_compile.patch
Normal file
|
@ -0,0 +1,49 @@
|
|||
--- a/src/Makefile.in
|
||||
+++ b/src/Makefile.in
|
||||
@@ -7742,7 +7742,7 @@ cache_cf.o: cf_parser.cci
|
||||
|
||||
# cf_gen builds the configuration files.
|
||||
cf_gen$(EXEEXT): $(cf_gen_SOURCES) $(cf_gen_DEPENDENCIES) cf_gen_defines.cci
|
||||
- $(HOSTCXX) -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src
|
||||
+ g++ -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src
|
||||
|
||||
# squid.conf.default is built by cf_gen when making cf_parser.cci
|
||||
squid.conf.default squid.conf.documented: cf_parser.cci
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -22223,7 +22223,7 @@ $as_echo_n "checking whether the SSL_get
|
||||
if test "$cross_compiling" = yes; then :
|
||||
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
-as_fn_error $? "cannot run test program while cross compiling
|
||||
+_as_fn_error $? "cannot run test program while cross compiling
|
||||
See \`config.log' for more details" "$LINENO" 5; }
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
@@ -22271,7 +22271,7 @@ $as_echo_n "checking whether the workaro
|
||||
if test "$cross_compiling" = yes; then :
|
||||
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
-as_fn_error $? "cannot run test program while cross compiling
|
||||
+_as_fn_error $? "cannot run test program while cross compiling
|
||||
See \`config.log' for more details" "$LINENO" 5; }
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
@@ -24921,7 +24921,7 @@ else
|
||||
if test "$cross_compiling" = yes; then :
|
||||
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
-as_fn_error $? "cannot run test program while cross compiling
|
||||
+_as_fn_error $? "cannot run test program while cross compiling
|
||||
See \`config.log' for more details" "$LINENO" 5; }
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
@@ -24946,7 +24946,7 @@ else
|
||||
if test "$cross_compiling" = yes; then :
|
||||
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||
-as_fn_error $? "cannot run test program while cross compiling
|
||||
+_as_fn_error $? "cannot run test program while cross compiling
|
||||
See \`config.log' for more details" "$LINENO" 5; }
|
||||
else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
29
net/squid/patches/100-mime.patch
Normal file
29
net/squid/patches/100-mime.patch
Normal file
|
@ -0,0 +1,29 @@
|
|||
--- a/src/mime.conf.default
|
||||
+++ b/src/mime.conf.default
|
||||
@@ -1,19 +1,3 @@
|
||||
-# This file associates filename extensions (for servers or services
|
||||
-# that don't automatically include them - like ftp) with a mime type
|
||||
-# and a graphical icon.
|
||||
-#
|
||||
-#
|
||||
-# This file has the format :
|
||||
-# regex content-type icon content-encoding transfer-mode
|
||||
-#-----------------------------------------------------------------------------------
|
||||
-#
|
||||
-#
|
||||
-# Content-Encodings are taken from section 3.1 of RFC2068 (HTTP/1.1)
|
||||
-#
|
||||
-#
|
||||
-#
|
||||
-# regexp content-type icon encoding mode actions
|
||||
-#--------------------------------------------------------------------------------------------------------
|
||||
\.gif$ image/gif silk/image.png - image +download
|
||||
\.mime$ www/mime silk/page_white_text.png - ascii +download
|
||||
^internal-dirup$ - silk/arrow_up.png - -
|
||||
@@ -190,6 +174,4 @@
|
||||
\.xml$ text/xml silk/page_world.png - ascii +download
|
||||
\.xsl$ text/xml silk/layout.png - ascii +download
|
||||
\.xyz$ chemical/x-xyz silk/chart_line.png - image +download
|
||||
-
|
||||
-# the default
|
||||
. text/plain silk/bullet_red.png - image +download +view
|
Loading…
Reference in a new issue