# definition of package # # Set CFLAGS and CXXFLAGS # Set pre # act_system := $(shell cat /etc/eisfair-system) $(info Compiling for $(act_system) system) opts := -O2 ifeq ($(act_system),eisfair-1) opts += -march=i486 -g -latomic ddir = eisfair-1 ldir = else opts += -march=x86-64 -g -latomic ddir = eisfair-64 ldir = --libdir=/usr/lib64 endif CFLAGS = $(opts) export CFLAGS CXXFLAGS = $(opts) export CXXFLAGS package=squid # actual source and destination versions src_squid=squid-5.4 dest_squid=$(ddir) src_squidguard=squidGuard-1.4 dest_squidguard=$(ddir) src_chpasswd=chpasswd-2.2.4 dest_chpasswd=$(ddir) # destination for common files dest_squidcommon=squid-common # definition of directories and names path_base=${HOME} path_svn=${HOME}/eisler-trunk path_subfolder=web path_package=${path_svn}/${path_subfolder}/${package}/${dest_squid} path_package_squidcommon=${path_svn}/${path_subfolder}/${package}/${dest_squidcommon} # names of sources path_source=${path_base}/psource path_squid=${path_source}/${src_squid} path_squidguard=${path_source}/${src_squidguard} path_chpasswd=${path_source}/${src_chpasswd} # actual patches patch_dir=${path_svn}/${path_subfolder}/${package}/_ADMIN/binaries_howto #============================================================================= # # create package source elements # all_psource: squid squidguard chpasswd # # install package source elements to svn directory # install_all_psource: install_squid install_squidguard install_chpasswd # # clean all package source elements # clean_all_psource: clean_squid clean_squidguard clean_chpasswd # # squid # squid: ${path_squid} ${path_squid}: ${path_squid}.tar.gz echo "Building squid" (cd ${path_source} && tar xvfz ${src_squid}.tar.gz) (cd ${path_squid} && \ ./configure \ --sysconfdir=/etc/squid \ --datarootdir=/usr/share/squid \ --libexecdir=/usr/lib/squid \ --prefix=/usr \ --enable-delay-pools \ --enable-snmp \ --enable-ssl \ --disable-loadable-modules \ --enable-linux-netfilter \ --disable-arch-native \ --with-large-files \ --enable-auth-basic && \ make; \ ) clean_squid: (cd ${path_source} && rm -rf ${src_squid}) install_squid: (cd ${path_squid}; \ mkdir -p ${path_package}/_ADMIN ; \ mkdir -p ${path_package}/usr/bin ; \ /usr/bin/install -p -s -m 755 tools/purge/purge ${path_package}/usr/bin/. ; \ /usr/bin/install -p -s -m 755 tools/squidclient/squidclient ${path_package}/usr/bin/. ; \ mkdir -p ${path_package}/usr/lib/squid ; \ /usr/bin/install -p -s -m 755 src/auth/basic/LDAP/basic_ldap_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/SMB/basic_smb_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/auth/basic/SMB/basic_smb_auth.sh ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/fake/basic_fake_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/auth/basic/POP3/basic_pop3_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/getpwnam/basic_getpwnam_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/LDAP/basic_ldap_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/RADIUS/basic_radius_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/SASL/basic_sasl_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/auth/basic/DB/basic_db_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/PAM/basic_pam_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/NCSA/basic_ncsa_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/basic/NIS/basic_nis_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 tools/cachemgr.cgi ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/acl/external/kerberos_ldap_group/cert_tool ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/digest/eDirectory/digest_edirectory_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/digest/file/digest_file_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/digest/LDAP/digest_ldap_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/DiskIO/DiskDaemon/diskd ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/acl/external/delayer/ext_delayer_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/eDirectory_userip/ext_edirectory_userip_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/file_userip/ext_file_userip_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/kerberos_ldap_group/ext_kerberos_ldap_group_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/LDAP_group/ext_ldap_group_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/session/ext_session_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/acl/external/SQL_session/ext_sql_session_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/acl/external/time_quota/ext_time_quota_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/acl/external/unix_group/ext_unix_group_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/acl/external/wbinfo_group/ext_wbinfo_group_acl ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 tools/helper-mux/helper-mux ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/log/DB/log_db_daemon ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/log/file/log_file_daemon ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/negotiate/kerberos/negotiate_kerberos_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/negotiate/kerberos/negotiate_kerberos_auth_test ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/negotiate/wrapper/negotiate_wrapper_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/auth/ntlm/fake/ntlm_fake_auth ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/security/cert_validators/fake/security_fake_certverify ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/store/id_rewriters/file/storeid_file_rewrite ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -s -m 755 src/unlinkd ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/http/url_rewriters/fake/url_fake_rewrite ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/http/url_rewriters/fake/url_fake_rewrite.sh ${path_package}/usr/lib/squid/. ; \ /usr/bin/install -p -m 755 src/http/url_rewriters/LFS/url_lfs_rewrite ${path_package}/usr/lib/squid/. ; \ mkdir -p ${path_package}/usr/sbin ; \ /usr/bin/install -p -s -m 755 src/squid ${path_package}/usr/sbin/. ; \ mkdir -p ${path_package}/usr/share/squid ; \ /usr/bin/install -p -m 644 src/mib.txt ${path_package}/usr/share/squid ; \ mkdir -p ${path_package_squidcommon}/_ADMIN ; \ mkdir -p ${path_package_squidcommon}/usr/share/squid/errors/en ; \ /usr/bin/install -p -m 644 errors/en/ERR_* ${path_package_squidcommon}/usr/share/squid/errors/en/. ; \ /usr/bin/install -p -m 644 errors/en/error-details.txt ${path_package_squidcommon}/usr/share/squid/errors/en/. ; \ mkdir -p ${path_package_squidcommon}/usr/share/squid/errors/fr ; \ /usr/bin/install -p -m 644 errors/fr/ERR_* ${path_package_squidcommon}/usr/share/squid/errors/fr/. ; \ /usr/bin/install -p -m 644 errors/fr/error-details.txt ${path_package_squidcommon}/usr/share/squid/errors/fr/. ; \ mkdir -p ${path_package_squidcommon}/usr/share/squid/errors/de ; \ /usr/bin/install -p -m 644 errors/de/ERR_* ${path_package_squidcommon}/usr/share/squid/errors/de/. ; \ /usr/bin/install -p -m 644 errors/de/error-details.txt ${path_package_squidcommon}/usr/share/squid/errors/de/. ; \ /usr/bin/install -p -m 644 errors/COPYRIGHT ${path_package_squidcommon}/usr/share/squid/errors/. ; \ /usr/bin/install -p -m 644 errors/TRANSLATORS ${path_package_squidcommon}/usr/share/squid/errors/. ; \ /usr/bin/install -p -m 644 errors/errorpage.css ${path_package_squidcommon}/usr/share/squid/errors/. ; \ mkdir -p ${path_package_squidcommon}/usr/share/squid/icons/silk ; \ /usr/bin/install -p -m 644 icons/silk/*.png ${path_package_squidcommon}/usr/share/squid/icons/silk/. ; \ /usr/bin/install -p -m 644 icons/SN.png ${path_package_squidcommon}/usr/share/squid/icons/. ; \ ) sh $(path_squid)/errors/alias-link.sh "/bin/ln" "/bin/rm -f" ${path_package_squidcommon}/usr/share/squid/errors $(path_squid)/errors/aliases >/dev/null # # squidguard # squidguard: ${path_squidguard} ${path_squidguard}: ${path_squidguard}.tar.gz echo "Building squidguard" (cd ${path_source} && tar xvfz ${src_squidguard}.tar.gz) (cd ${path_squidguard} && \ echo "Patch: squidGuard-Makefile.patch"; \ patch -p 0 < ${patch_dir}/squidGuard-Makefile.patch; \ echo "Patch: squidGuard-1.4-mysql.patch"; \ patch -p 1 < ${patch_dir}/squidGuard-1.4-mysql.patch; \ echo "Patch: squidGuard-config.patch"; \ patch -p 0 < ${patch_dir}/squidGuard-config.patch; \ echo "Patch: squidGuard-CVE-2009-3700.patch"; \ patch -p 1 < ${patch_dir}/squidGuard-CVE-2009-3700.patch; \ echo "Patch: squidGuard-CVE-2009-3826.patch"; \ patch -p 1 < ${patch_dir}/squidGuard-CVE-2009-3826.patch; \ echo "Patch: xss_fix_02_2015.patch"; \ patch -p 1 < ${patch_dir}/xss_fix_02_2015.patch; \ echo "Patch: squidGuard-1.4_upgrade.patch"; \ patch -p 1 < ${patch_dir}/squidGuard-1.4_upgrade.patch; \ echo "Patch: default_config_pathfixes.patch"; \ patch -p 1 < ${patch_dir}/default_config_pathfixes.patch; \ echo "Patch: type_fixes.patch"; \ patch -p 1 < ${patch_dir}/type_fixes.patch; \ echo "Patch: squidGuard-db5.patch"; \ patch -p 0 < ${patch_dir}/squidGuard-db5.patch; \ ) (cd ${path_squidguard} && \ ./configure --with-db \ --with-sg-config=/usr/squidGuard/squidGuard.conf \ --with-sg-logdir=/usr/squidGuard/log \ --with-sg-dbhome=/usr/squidGuard/db \ ) (cd ${path_squidguard} && make) clean_squidguard: (cd ${path_source} && rm -rf ${src_squidguard}) install_squidguard: (cd ${path_squidguard}; \ mkdir -p ${path_package}/usr/bin ; \ /usr/bin/install -p -s -m 755 src/squidGuard ${path_package}/usr/bin/. ; \ mkdir -p ${path_package}/usr/squidGuard ; \ /usr/bin/install -p -m 644 samples/squidGuard-simple.cgi ${path_package}/usr/squidGuard/. ; \ ) # # chpasswd # chpasswd: ${path_chpasswd} ${path_chpasswd}: ${path_chpasswd}.tar.gz echo "Building chpasswd" (cd ${path_source} && tar xvfz ${src_chpasswd}.tar.gz) (cd ${path_chpasswd} && \ ./configure \ --sysconfdir=/etc/squid \ --prefix=/etc/squid \ --enable-cgidir=/var/www/cgi-bin \ ) (cd ${path_chpasswd} && make) clean_chpasswd: (cd ${path_source} && rm -rf ${src_chpasswd}) install_chpasswd: (cd ${path_chpasswd}; \ mkdir -p ${path_package}/usr/bin ; \ /usr/bin/install -p -s -m 755 chpasswd.cgi ${path_package}/usr/sbin/. ; \ ) # mkdir -p ${path_package}/etc/squid ; \ # /usr/bin/install -p -m 644 chpasswd.conf ${path_package}/etc/squid/. ; \