2 # Copyright (C) 2006-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 PKG_VERSION
:=2.7.STABLE9
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.bz2
15 PKG_SOURCE_URL
:=http
://www.squid-cache.org
/Versions
/v2
/2.7/
16 PKG_MD5SUM
:=3c6642c85470b1079207d43bba25a819
18 include $(INCLUDE_DIR
)/package.mk
20 define Package
/squid
/Default
23 SUBMENU
:=Web Servers
/Proxies
24 URL
:=http
://www.squid-cache.org
/
28 $(call Package
/squid
/Default
)
30 DEPENDS
:=+libopenssl
+libpthread @
!LINUX_2_4
31 TITLE
:=full-featured Web proxy cache
34 define Package
/squid
/description
35 Squid is a high-performance proxy caching server for web clients
,
36 supporting FTP
, gopher
, and HTTP data objects. Unlike traditional
37 caching software
, Squid handles
all requests in a single
,
38 non-blocking
, I
/O-driven process.
41 define Package
/squid
/conffiles
46 define Package
/squid-mod-cachemgr
47 $(call Package
/squid
/Default
)
49 TITLE
:=Web based proxy manager and reporting tool
52 define Package
/squid-mod-basic-auth-getpwnam
53 $(call Package
/squid
/Default
)
55 TITLE
:=getpwnam basic authentication helper
58 define Package
/squid-mod-basic-auth-ncsa
59 $(call Package
/squid
/Default
)
61 TITLE
:=NCSA basic authentication helper
64 define Package
/squid-mod-basic-auth-smb
65 $(call Package
/squid
/Default
)
67 TITLE
:=Samba basic authentication helper
70 define Package
/squid-mod-digest-auth-password
71 $(call Package
/squid
/Default
)
73 TITLE
:=Password digest authentication helper
76 define Package
/squid-mod-external-acl-ip-user
77 $(call Package
/squid
/Default
)
79 TITLE
:=IP user external ACL helper
82 define Package
/squid-mod-external-acl-unix-group
83 $(call Package
/squid
/Default
)
85 TITLE
:=Unix group external ACL helper
88 define Package
/squid-mod-ntlm-auth-fakeauth
89 $(call Package
/squid
/Default
)
91 TITLE
:=Fakeauth NTLM authentication helper
94 define Package
/squid-mod-ntlm-auth-smb-auth
95 $(call Package
/squid
/Default
)
97 TITLE
:=Samba NTLM authentication helper
101 --datadir=/usr
/share
/squid \
102 --libexecdir
=/usr
/lib
/squid \
103 --sysconfdir
=/etc
/squid \
106 --enable-x-accelerator-vary \
110 --enable-kill-parent-hack \
114 --enable-err-languages
=English \
115 --enable-default-err-language
=English \
116 --enable-linux-netfilter \
118 --enable-external-acl-helpers
="" \
119 --enable-underscores \
120 --enable-cache-digests \
121 --enable-referer-log \
122 --enable-delay-pools \
123 --enable-useragent-log \
124 --with-openssl
=$(STAGING_DIR
)/usr \
125 --enable-auth
="basic digest ntlm" \
126 --enable-basic-auth-helpers
="getpwnam NCSA SMB" \
127 --enable-ntlm-auth-helpers
="fakeauth SMB" \
128 --enable-digest-auth-helpers
="password" \
129 --enable-external-acl-helpers
="ip_user unix_group" \
130 --enable-storeio
=null
,ufs \
135 ac_cv_header_linux_netfilter_ipv4_h
=yes \
136 ac_cv_epoll_works
=yes \
139 # pass INCLUDES to compile host sources against our OpenSSL, not the host one
140 $(MAKE
) -C
$(PKG_BUILD_DIR
)/lib \
142 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
143 DESTDIR
="$(PKG_INSTALL_DIR)" \
148 define Package
/$(1)/install
149 $(INSTALL_DIR
) $$(1)/usr
/lib
/squid
150 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/squid
/$(2) $$(1)/usr
/lib
/squid
/
153 $$(eval
$$(call BuildPackage
,$(1)))
156 define Package
/squid
/install
157 $(INSTALL_DIR
) $(1)/etc
/squid
158 $(CP
) $(PKG_INSTALL_DIR
)/etc
/squid
/mime.conf
$(1)/etc
/squid
/
159 $(CP
) $(PKG_INSTALL_DIR
)/etc
/squid
/squid.conf
$(1)/etc
/squid
/
160 $(INSTALL_DIR
) $(1)/usr
/share
/squid
161 $(CP
) $(PKG_INSTALL_DIR
)/usr
/share
/squid
/* $(1)/usr
/share
/squid
/
162 $(INSTALL_DIR
) $(1)/usr
/sbin
163 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/squid
$(1)/usr
/sbin
/
164 $(INSTALL_DIR
) $(1)/usr
/lib
/squid
165 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/squid
/{unlinkd
,pinger
,logfile-daemon
} $(1)/usr
/lib
/squid
/
168 define Package
/squid-mod-cachemgr
/install
169 $(INSTALL_DIR
) $(1)/www
/cgi-bin
/
170 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/squid
/cachemgr.cgi
$(1)/www
/cgi-bin
/
173 $(eval
$(call RequireHeader
,/usr
/include/openssl
/ssl.h
, \
174 $(PKG_NAME
) requires the openssl development
(named like libssl-dev
, \
175 depending of your package manager
) package be installed on the host-system. \
178 $(eval
$(call BuildPackage
,squid
))
179 $(eval
$(call BuildPackage
,squid-mod-cachemgr
))
180 $(eval
$(call BuildPlugin
,squid-mod-basic-auth-getpwnam
,getpwname_auth
))
181 $(eval
$(call BuildPlugin
,squid-mod-basic-auth-ncsa
,ncsa_auth
))
182 $(eval
$(call BuildPlugin
,squid-mod-basic-auth-smb
,smb_auth
))
183 $(eval
$(call BuildPlugin
,squid-mod-digest-auth-password
,digest_pw_auth
))
184 $(eval
$(call BuildPlugin
,squid-mod-external-acl-ip-user
,ip_user_check
))
185 $(eval
$(call BuildPlugin
,squid-mod-external-acl-unix-group
,squid_unix_group
))
186 $(eval
$(call BuildPlugin
,squid-mod-ntlm-auth-fakeauth
,fakeauth_auth
))
187 $(eval
$(call BuildPlugin
,squid-mod-ntlm-auth-smb-auth
,ntlm_auth
))