commit: d7c0ea454b476120244a294756873be67406ef68 Author: Hank Leininger <hlein <AT> korelogic <DOT> com> AuthorDate: Thu May 1 02:57:56 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Jun 1 05:03:19 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d7c0ea45
net-proxy/squid: drop 6.10, 6.11 Signed-off-by: Hank Leininger <hlein <AT> korelogic.com> Part-of: https://github.com/gentoo/gentoo/pull/41872 Closes: https://github.com/gentoo/gentoo/pull/41872 Signed-off-by: Sam James <sam <AT> gentoo.org> net-proxy/squid/Manifest | 4 - net-proxy/squid/files/squid.cron | 5 - net-proxy/squid/files/squid.logrotate | 8 - net-proxy/squid/squid-6.10.ebuild | 402 --------------------------------- net-proxy/squid/squid-6.11.ebuild | 411 ---------------------------------- 5 files changed, 830 deletions(-) diff --git a/net-proxy/squid/Manifest b/net-proxy/squid/Manifest index d2fd119cf95d..ac2d41a3817f 100644 --- a/net-proxy/squid/Manifest +++ b/net-proxy/squid/Manifest @@ -1,7 +1,3 @@ -DIST squid-6.10.tar.xz 2558208 BLAKE2B 608b49c25549e73bc58ee4ec82a4d582f6f28b6dd324261806931eb2e37f0b5d63f6c2f6373a3db43823e805f5d6df56b2a4b5a8324cd6e623c4302d2c4b9421 SHA512 c0b75c3d383b1cd234b30dd02e84e1c5655fc53f63b75704bf4bac9ee0b86ba27e4656116893aff8b95dea19ff1befabcbb9dab3875da52fcb65f1d30f0fe5a9 -DIST squid-6.10.tar.xz.asc 647 BLAKE2B 22c41fae76b5e2efb5adc7d34beac0dce8218af0a4e77268989078acb91b6822a41f9a44cb60796548bb392040ad35317b5cfde9fdc51a37ffae616bbe9faede SHA512 5e9d053db90549760f7a675d9f4703ecde460906cb09dff489f9db5d0f7826fb30487c9b009cc4577f3f061f3c7b3a667418af298f55f882f696884dc536bf53 -DIST squid-6.11.tar.xz 2547824 BLAKE2B 8143257e33dc23d3e22ae778990a1cc086740284cd356b3069f3c268c5648d08ddec7346028649c855dcd5c71fa4da555e81f9aac77e1bad8e06e9bd52655749 SHA512 669f658b0a58514f98c2b33df874706d40b9ed0837e1f32e08e274c79617063e06e706932011a34b115dcc96d43125f9cea30fba459cd31a88e3afd9b6076d7a -DIST squid-6.11.tar.xz.asc 647 BLAKE2B b440ecb5f3d9c05fc8fd48bde0385deea39a2b0628dd0a3dc9c7f7d1bb55466cf43a5504f452d1ec532954c46a8d84741641e1fce9e0c7cae9f80aa93f29ad45 SHA512 e4bf8a77fe431eb6ba7ff9c10511d987692438d66c4aa72739b4fedf73aa6e6704e4da756ffcfeb82b9d76be9a3e4bb963dd523132cda732077898785cc6bbb9 DIST squid-6.12.tar.xz 2548220 BLAKE2B ef1ae1bb0769a3509783027cd9596bdc64cedd1c46bbf393b34504f7074bd5eec8dcaf79c6e9fc227cc709f4f90b8abba373bb2ac06d93dcb5b1783196349e04 SHA512 7ab61f19416426fb8284de7bddc1ea9a5a7b3148fc54c018a243071ba5854610ef38a248f6a22634a2acb7d3ea408b582af1f48818dfe698ade0b7b8c00fd183 DIST squid-6.12.tar.xz.asc 647 BLAKE2B 538d6c99bc7f4aef804dc32c3bbcf951db175ec0d74fbf3f5c955f26e33bcad7b284b33bfa2a6e165b536c1d9f18264537802dc34304c1ebcb6e0d192222cd32 SHA512 34cd6e9f6f908626184ea6995bcb340a939c00b6254f4427967282fb6e4b89e5cf9c02f8df9f61f2ae9ea08a4ec3796840eeb327e123299e26683a5ecb9b9a0f DIST squid-6.13.tar.xz 2548680 BLAKE2B cc45b4b071d9d70fd145d9d01d25a27f73a70535cfa36e476a9304e8d13701832f658c3334d21093a2c49b5e993c68164d10151f99ee7c7a0ae1619302a94974 SHA512 a67276a7eb38d00271962b67bff7f08e760db73bc6b0f94ab71297d520405033df65ebb0b38ee5db02bd6c00d81cd600b60d918fe7fff64e06255deaf78f00c1 diff --git a/net-proxy/squid/files/squid.cron b/net-proxy/squid/files/squid.cron deleted file mode 100644 index 8726ddd72955..000000000000 --- a/net-proxy/squid/files/squid.cron +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -if test -e /var/run/squid.pid ; then - test -n "$(cat /var/run/squid.pid|xargs ps -p|grep squid)" && \ - /usr/sbin/squid -k rotate -fi diff --git a/net-proxy/squid/files/squid.logrotate b/net-proxy/squid/files/squid.logrotate deleted file mode 100644 index 5bf289691aec..000000000000 --- a/net-proxy/squid/files/squid.logrotate +++ /dev/null @@ -1,8 +0,0 @@ -/var/log/squid/*.log { - copytruncate - compress - notifempty - missingok - sharedscripts -} - diff --git a/net-proxy/squid/squid-6.10.ebuild b/net-proxy/squid/squid-6.10.ebuild deleted file mode 100644 index deb509287ea9..000000000000 --- a/net-proxy/squid/squid-6.10.ebuild +++ /dev/null @@ -1,402 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/squid.gpg -inherit autotools flag-o-matic linux-info pam systemd toolchain-funcs verify-sig - -DESCRIPTION="Full-featured web proxy cache" -HOMEPAGE="https://www.squid-cache.org/" - -MY_PV_MAJOR=$(ver_cut 1) -# Upstream patch ID for the most recent bug-fixed update to the formal release. -#r=-20181117-r0022167 -r= -if [[ -z ${r} ]]; then - SRC_URI=" - http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}.tar.xz - https://dev.gentoo.org/~juippis/distfiles/squid-6.9-memleak_fix.patch - verify-sig? ( http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}.tar.xz.asc ) - " -else - SRC_URI="http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}${r}.tar.bz2 - https://dev.gentoo.org/~juippis/distfiles/squid-6.9-memleak_fix.patch" - S="${S}${r}" -fi - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc x86" -IUSE="caps gnutls pam ldap samba sasl kerberos nis radius ssl snmp selinux logrotate test ecap" -IUSE+=" esi ssl-crtd mysql postgres sqlite systemd perl qos tproxy +htcp valgrind +wccp +wccpv2" -RESTRICT="!test? ( test )" -REQUIRED_USE="tproxy? ( caps ) qos? ( caps ) ssl-crtd? ( ssl )" - -DEPEND=" - acct-group/squid - acct-user/squid - dev-libs/libltdl - sys-libs/tdb - virtual/libcrypt:= - caps? ( >=sys-libs/libcap-2.16 ) - ecap? ( net-libs/libecap:1 ) - esi? ( - dev-libs/expat - dev-libs/libxml2 - ) - ldap? ( net-nds/openldap:= ) - gnutls? ( >=net-libs/gnutls-3.1.5:= ) - logrotate? ( app-admin/logrotate ) - nis? ( - net-libs/libtirpc:= - net-libs/libnsl:= - ) - kerberos? ( virtual/krb5 ) - pam? ( sys-libs/pam ) - qos? ( net-libs/libnetfilter_conntrack ) - ssl? ( - dev-libs/nettle:= - !gnutls? ( - dev-libs/openssl:= - ) - ) - sasl? ( dev-libs/cyrus-sasl ) - systemd? ( sys-apps/systemd:= ) -" -RDEPEND=" - ${DEPEND} - mysql? ( dev-perl/DBD-mysql ) - postgres? ( dev-perl/DBD-Pg ) - perl? ( dev-lang/perl ) - samba? ( net-fs/samba ) - selinux? ( sec-policy/selinux-squid ) - sqlite? ( dev-perl/DBD-SQLite ) -" -DEPEND+=" valgrind? ( dev-debug/valgrind )" -BDEPEND=" - dev-lang/perl - ecap? ( virtual/pkgconfig ) - test? ( dev-util/cppunit ) - verify-sig? ( sec-keys/openpgp-keys-squid ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-6.2-gentoo.patch - "${FILESDIR}"/${PN}-4.17-use-system-libltdl.patch - "${DISTDIR}"/${PN}-6.9-memleak_fix.patch -) - -pkg_pretend() { - if use tproxy; then - local CONFIG_CHECK="~NF_CONNTRACK ~NETFILTER_XT_MATCH_SOCKET ~NETFILTER_XT_TARGET_TPROXY" - linux-info_pkg_setup - fi -} - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.asc} - fi - - default -} - -src_prepare() { - default - - # Fixup various paths - sed -i -e 's:/usr/local/squid/etc:/etc/squid:' \ - INSTALL QUICKSTART \ - scripts/fileno-to-pathname.pl \ - scripts/check_cache.pl \ - tools/cachemgr.cgi.8 \ - tools/purge/conffile.hh \ - tools/purge/purge.1 || die - sed -i -e 's:/usr/local/squid/sbin:/usr/sbin:' \ - INSTALL QUICKSTART || die - sed -i -e 's:/usr/local/squid/var/cache:/var/cache/squid:' \ - QUICKSTART || die - sed -i -e 's:/usr/local/squid/var/logs:/var/log/squid:' \ - QUICKSTART \ - src/log/access_log.cc || die - sed -i -e 's:/usr/local/squid/logs:/var/log/squid:' \ - src/log/access_log.cc || die - sed -i -e 's:/usr/local/squid/libexec:/usr/libexec/squid:' \ - src/acl/external/unix_group/ext_unix_group_acl.8 \ - src/acl/external/session/ext_session_acl.8 || die - sed -i -e 's:/usr/local/squid/cache:/var/cache/squid:' \ - scripts/check_cache.pl || die - # /var/run/squid to /run/squid - sed -i -e 's:$(localstatedir)::' \ - src/ipc/Makefile.am || die - sed -i 's:/var/run/:/run/:g' tools/systemd/squid.service || die - - sed -i -e 's:_LTDL_SETUP:LTDL_INIT([installable]):' \ - libltdl/configure.ac || die - - eautoreconf -} - -src_configure() { - local myeconfargs=( - --cache-file="${S}"/config.cache - - --datadir=/usr/share/squid - --libexecdir=/usr/libexec/squid - --localstatedir=/var - --sysconfdir=/etc/squid - --with-default-user=squid - --with-logdir=/var/log/squid - --with-pidfile=/run/squid.pid - - --enable-build-info="Gentoo ${PF} (r: ${r:-NONE})" - --enable-log-daemon-helpers - --enable-url-rewrite-helpers - --enable-cache-digests - --enable-delay-pools - --enable-disk-io - --enable-eui - --enable-icmp - --enable-ipv6 - --enable-follow-x-forwarded-for - --enable-removal-policies="lru,heap" - --disable-strict-error-checking - --disable-arch-native - - --with-large-files - --with-build-environment=default - - --with-tdb - - --without-included-ltdl - --with-ltdl-include="${ESYSROOT}"/usr/include - --with-ltdl-lib="${ESYSROOT}"/usr/$(get_libdir) - - $(use_with caps cap) - $(use_enable snmp) - $(use_with ssl openssl) - $(use_with ssl nettle) - $(use_with gnutls) - $(use_with ldap) - $(use_enable ssl-crtd) - $(use_with systemd) - $(use_with test cppunit) - $(use_enable ecap) - $(use_enable esi) - $(use_enable esi expat) - $(use_enable esi xml2) - $(use_enable htcp) - $(use_with valgrind valgrind-debug) - $(use_enable wccp) - $(use_enable wccpv2) - ) - - # Basic modules - local basic_modules=( - NCSA - POP3 - getpwnam - - $(usev samba 'SMB') - $(usev ldap 'SMB_LM LDAP') - $(usev pam 'PAM') - $(usev sasl 'SASL') - $(usev nis 'NIS') - $(usev radius 'RADIUS') - ) - - use nis && append-cppflags "-I${ESYSROOT}/usr/include/tirpc" - - if use mysql || use postgres || use sqlite; then - basic_modules+=( DB ) - fi - - # Digests - local digest_modules=( - file - - $(usev ldap 'LDAP eDirectory') - ) - - # Kerberos - local negotiate_modules=( none ) - - myeconfargs+=( --without-mit-krb5 --without-heimdal-krb5 ) - - if use kerberos; then - # We intentionally overwrite negotiate_modules here to lose - # the 'none'. - negotiate_modules=( kerberos wrapper ) - - if has_version app-crypt/heimdal; then - myeconfargs+=( - --without-mit-krb5 - --with-heimdal-krb5 - ) - else - myeconfargs+=( - --with-mit-krb5 - --without-heimdal-krb5 - ) - fi - fi - - # NTLM modules - local ntlm_modules=( none ) - - if use samba ; then - # We intentionally overwrite ntlm_modules here to lose - # the 'none'. - ntlm_modules=( SMB_LM ) - fi - - # External helpers - local ext_helpers=( - file_userip - session - unix_group - delayer - time_quota - - $(usev samba 'wbinfo_group') - $(usev ldap 'LDAP_group eDirectory_userip') - ) - - use ldap && use kerberos && ext_helpers+=( kerberos_ldap_group ) - if use mysql || use postgres || use sqlite; then - ext_helpers+=( SQL_session ) - fi - - # Storage modules - local storeio_modules=( - aufs - diskd - rock - ufs - ) - - # - local transparent - if use kernel_linux; then - myeconfargs+=( - --enable-linux-netfilter - $(usev qos '--enable-zph-qos --with-netfilter-conntrack') - ) - fi - - tc-export_build_env BUILD_CXX - export BUILDCXX="${BUILD_CXX}" - export BUILDCXXFLAGS="${BUILD_CXXFLAGS}" - tc-export CC AR - - # Should be able to drop this workaround with newer versions. - # https://bugs.squid-cache.org/show_bug.cgi?id=4224 - tc-is-cross-compiler && export squid_cv_gnu_atomics=no - - # Bug #719662 - append-atomic-flags - - print_options_without_comma() { - # IFS as ',' will cut off any trailing commas - ( - IFS=',' - options=( $(printf "%s," "${@}") ) - echo "${options[*]}" - ) - } - - myeconfargs+=( - --enable-storeio=$(print_options_without_comma "${storeio_modules[@]}") - --enable-auth-basic=$(print_options_without_comma "${basic_modules[@]}") - --enable-auth-digest=$(print_options_without_comma "${digest_modules[@]}") - --enable-auth-ntlm=$(print_options_without_comma "${ntlm_modules[@]}") - --enable-auth-negotiate=$(print_options_without_comma "${negotiate_modules[@]}") - --enable-external-acl-helpers=$(print_options_without_comma "${ext_helpers[@]}") - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - default - - systemd_dounit tools/systemd/squid.service - - # Need suid root for looking into /etc/shadow - fowners root:squid /usr/libexec/squid/basic_ncsa_auth - fperms 4750 /usr/libexec/squid/basic_ncsa_auth - - if use pam; then - fowners root:squid /usr/libexec/squid/basic_pam_auth - fperms 4750 /usr/libexec/squid/basic_pam_auth - fi - - # Pinger needs suid as well - fowners root:squid /usr/libexec/squid/pinger - fperms 4750 /usr/libexec/squid/pinger - - # These scripts depend on perl - if ! use perl; then - local perl_scripts=( - basic_pop3_auth ext_delayer_acl helper-mux - log_db_daemon security_fake_certverify - storeid_file_rewrite url_lfs_rewrite - ) - - local script - for script in "${perl_scripts[@]}"; do - rm "${ED}"/usr/libexec/squid/${script} || die - done - fi - - # Cleanup - rm -r "${D}"/run "${D}"/var/cache || die - - dodoc CONTRIBUTORS CREDITS ChangeLog INSTALL QUICKSTART README SPONSORS doc/*.txt - newdoc src/auth/negotiate/kerberos/README README.kerberos - newdoc src/auth/basic/RADIUS/README README.RADIUS - newdoc src/acl/external/kerberos_ldap_group/README README.kerberos_ldap_group - dodoc RELEASENOTES.html - - if use pam; then - newpamd "${FILESDIR}"/squid.pam squid - fi - - newconfd "${FILESDIR}"/squid.confd-r2 squid - newinitd "${FILESDIR}"/squid.initd-r7 squid - - if use logrotate ; then - insinto /etc/logrotate.d - newins "${FILESDIR}"/squid.logrotate-r1 squid - else - exeinto /etc/cron.weekly - newexe "${FILESDIR}"/squid.cron-r1 squid.cron - fi - - diropts -m0750 -o squid -g squid - keepdir /var/log/squid /etc/ssl/squid /var/lib/squid - - # Hack for bug #834503 (see also bug #664940) - # Please keep this for a few years until it's no longer plausible - # someone is upgrading from < squid 5.7. - mv "${ED}"/usr/share/squid/errors{,.new} || die -} - -pkg_preinst() { - # Remove file in EROOT that the directory collides with. - rm -rf "${EROOT}"/usr/share/squid/errors || die - - # Following the collision protection check, reverse - # src_install's rename in ED. - mv "${ED}"/usr/share/squid/errors{.new,} || die -} - -pkg_postinst() { - elog "A good starting point to debug Squid issues is to use 'squidclient mgr:' commands such as 'squidclient mgr:info'." - - if [[ ${#r} -gt 0 ]]; then - elog "You are using a release with the official ${r} patch! Make sure you mention that, or send the output of 'squidclient mgr:info' when asking for support." - fi -} diff --git a/net-proxy/squid/squid-6.11.ebuild b/net-proxy/squid/squid-6.11.ebuild deleted file mode 100644 index 4ca27d5a50d0..000000000000 --- a/net-proxy/squid/squid-6.11.ebuild +++ /dev/null @@ -1,411 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/squid.gpg -inherit autotools flag-o-matic linux-info pam systemd toolchain-funcs verify-sig - -DESCRIPTION="Full-featured web proxy cache" -HOMEPAGE="https://www.squid-cache.org/" - -MY_PV_MAJOR=$(ver_cut 1) -# Upstream patch ID for the most recent bug-fixed update to the formal release. -#r=-20181117-r0022167 -r= -if [[ -z ${r} ]]; then - SRC_URI=" - http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}.tar.xz - https://dev.gentoo.org/~juippis/distfiles/squid-6.9-memleak_fix.patch - verify-sig? ( http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}.tar.xz.asc ) - " -else - SRC_URI="http://static.squid-cache.org/Versions/v${MY_PV_MAJOR}/${P}${r}.tar.bz2 - https://dev.gentoo.org/~juippis/distfiles/squid-6.9-memleak_fix.patch" - S="${S}${r}" -fi - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="caps gnutls pam ldap samba sasl kerberos nis radius ssl snmp selinux logrotate test ecap" -IUSE+=" esi ssl-crtd mysql postgres sqlite systemd perl qos tproxy +htcp valgrind +wccp +wccpv2" -RESTRICT="!test? ( test )" -REQUIRED_USE="tproxy? ( caps ) qos? ( caps ) ssl-crtd? ( ssl )" - -DEPEND=" - acct-group/squid - acct-user/squid - dev-libs/libltdl - sys-libs/tdb - virtual/libcrypt:= - caps? ( >=sys-libs/libcap-2.16 ) - ecap? ( net-libs/libecap:1 ) - esi? ( - dev-libs/expat - dev-libs/libxml2 - ) - ldap? ( net-nds/openldap:= ) - gnutls? ( >=net-libs/gnutls-3.1.5:= ) - logrotate? ( app-admin/logrotate ) - nis? ( - net-libs/libtirpc:= - net-libs/libnsl:= - ) - kerberos? ( virtual/krb5 ) - pam? ( sys-libs/pam ) - qos? ( net-libs/libnetfilter_conntrack ) - ssl? ( - dev-libs/nettle:= - !gnutls? ( - dev-libs/openssl:= - ) - ) - sasl? ( dev-libs/cyrus-sasl ) - systemd? ( sys-apps/systemd:= ) -" -RDEPEND=" - ${DEPEND} - mysql? ( dev-perl/DBD-mysql ) - postgres? ( dev-perl/DBD-Pg ) - perl? ( dev-lang/perl ) - samba? ( net-fs/samba ) - selinux? ( sec-policy/selinux-squid ) - sqlite? ( dev-perl/DBD-SQLite ) -" -DEPEND+=" valgrind? ( dev-debug/valgrind )" -BDEPEND=" - dev-lang/perl - ecap? ( virtual/pkgconfig ) - test? ( dev-util/cppunit ) - verify-sig? ( sec-keys/openpgp-keys-squid ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-6.2-gentoo.patch - "${FILESDIR}"/${PN}-4.17-use-system-libltdl.patch - "${DISTDIR}"/${PN}-6.9-memleak_fix.patch -) - -pkg_pretend() { - if use tproxy; then - local CONFIG_CHECK="~NF_CONNTRACK ~NETFILTER_XT_MATCH_SOCKET ~NETFILTER_XT_TARGET_TPROXY" - linux-info_pkg_setup - fi -} - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.asc} - fi - - default -} - -src_prepare() { - default - - # Fixup various paths - sed -i -e 's:/usr/local/squid/etc:/etc/squid:' \ - INSTALL QUICKSTART \ - scripts/fileno-to-pathname.pl \ - scripts/check_cache.pl \ - tools/cachemgr.cgi.8 \ - tools/purge/conffile.hh \ - tools/purge/purge.1 || die - sed -i -e 's:/usr/local/squid/sbin:/usr/sbin:' \ - INSTALL QUICKSTART || die - sed -i -e 's:/usr/local/squid/var/cache:/var/cache/squid:' \ - QUICKSTART || die - sed -i -e 's:/usr/local/squid/var/logs:/var/log/squid:' \ - QUICKSTART \ - src/log/access_log.cc || die - sed -i -e 's:/usr/local/squid/logs:/var/log/squid:' \ - src/log/access_log.cc || die - sed -i -e 's:/usr/local/squid/libexec:/usr/libexec/squid:' \ - src/acl/external/unix_group/ext_unix_group_acl.8 \ - src/acl/external/session/ext_session_acl.8 || die - sed -i -e 's:/usr/local/squid/cache:/var/cache/squid:' \ - scripts/check_cache.pl || die - # /var/run/squid to /run/squid - sed -i -e 's:$(localstatedir)::' \ - src/ipc/Makefile.am || die - sed -i 's:/var/run/:/run/:g' tools/systemd/squid.service || die - - sed -i -e 's:_LTDL_SETUP:LTDL_INIT([installable]):' \ - libltdl/configure.ac || die - - eautoreconf -} - -src_configure() { - local myeconfargs=( - --cache-file="${S}"/config.cache - - --datadir=/usr/share/squid - --libexecdir=/usr/libexec/squid - --localstatedir=/var - --sysconfdir=/etc/squid - --with-default-user=squid - --with-logdir=/var/log/squid - --with-pidfile=/run/squid.pid - - --enable-build-info="Gentoo ${PF} (r: ${r:-NONE})" - --enable-log-daemon-helpers - --enable-url-rewrite-helpers - --enable-cache-digests - --enable-delay-pools - --enable-disk-io - --enable-eui - --enable-icmp - --enable-ipv6 - --enable-follow-x-forwarded-for - --enable-removal-policies="lru,heap" - --disable-strict-error-checking - --disable-arch-native - - --with-large-files - --with-build-environment=default - - --with-tdb - - --without-included-ltdl - --with-ltdl-include="${ESYSROOT}"/usr/include - --with-ltdl-lib="${ESYSROOT}"/usr/$(get_libdir) - - $(use_with caps cap) - $(use_enable snmp) - $(use_with ssl openssl) - $(use_with ssl nettle) - $(use_with gnutls) - $(use_with ldap) - $(use_enable ssl-crtd) - $(use_with systemd) - $(use_with test cppunit) - $(use_enable ecap) - $(use_enable esi) - $(use_enable esi expat) - $(use_enable esi xml2) - $(use_enable htcp) - $(use_with valgrind valgrind-debug) - $(use_enable wccp) - $(use_enable wccpv2) - ) - - # Basic modules - local basic_modules=( - NCSA - POP3 - getpwnam - - $(usev samba 'SMB') - $(usev ldap 'SMB_LM LDAP') - $(usev pam 'PAM') - $(usev sasl 'SASL') - $(usev nis 'NIS') - $(usev radius 'RADIUS') - ) - - use nis && append-cppflags "-I${ESYSROOT}/usr/include/tirpc" - - if use mysql || use postgres || use sqlite; then - basic_modules+=( DB ) - fi - - # Digests - local digest_modules=( - file - - $(usev ldap 'LDAP eDirectory') - ) - - # Kerberos - local negotiate_modules=( none ) - - myeconfargs+=( --without-mit-krb5 --without-heimdal-krb5 ) - - if use kerberos; then - # We intentionally overwrite negotiate_modules here to lose - # the 'none'. - negotiate_modules=( kerberos wrapper ) - - if has_version app-crypt/heimdal; then - myeconfargs+=( - --without-mit-krb5 - --with-heimdal-krb5 - ) - else - myeconfargs+=( - --with-mit-krb5 - --without-heimdal-krb5 - ) - fi - fi - - # NTLM modules - local ntlm_modules=( none ) - - if use samba ; then - # We intentionally overwrite ntlm_modules here to lose - # the 'none'. - ntlm_modules=( SMB_LM ) - fi - - # External helpers - local ext_helpers=( - file_userip - session - unix_group - delayer - time_quota - - $(usev samba 'wbinfo_group') - $(usev ldap 'LDAP_group eDirectory_userip') - ) - - use ldap && use kerberos && ext_helpers+=( kerberos_ldap_group ) - if use mysql || use postgres || use sqlite; then - ext_helpers+=( SQL_session ) - fi - - # Storage modules - local storeio_modules=( - aufs - diskd - rock - ufs - ) - - # - local transparent - if use kernel_linux; then - myeconfargs+=( - --enable-linux-netfilter - $(usev qos '--enable-zph-qos --with-netfilter-conntrack') - ) - fi - - tc-export_build_env BUILD_CXX - export BUILDCXX="${BUILD_CXX}" - export BUILDCXXFLAGS="${BUILD_CXXFLAGS}" - tc-export CC AR - - # Should be able to drop this workaround with newer versions. - # https://bugs.squid-cache.org/show_bug.cgi?id=4224 - tc-is-cross-compiler && export squid_cv_gnu_atomics=no - - # Bug #719662 - append-atomic-flags - - print_options_without_comma() { - # IFS as ',' will cut off any trailing commas - ( - IFS=',' - options=( $(printf "%s," "${@}") ) - echo "${options[*]}" - ) - } - - myeconfargs+=( - --enable-storeio=$(print_options_without_comma "${storeio_modules[@]}") - --enable-auth-basic=$(print_options_without_comma "${basic_modules[@]}") - --enable-auth-digest=$(print_options_without_comma "${digest_modules[@]}") - --enable-auth-ntlm=$(print_options_without_comma "${ntlm_modules[@]}") - --enable-auth-negotiate=$(print_options_without_comma "${negotiate_modules[@]}") - --enable-external-acl-helpers=$(print_options_without_comma "${ext_helpers[@]}") - ) - - econf "${myeconfargs[@]}" -} - -src_test() { - default - - # Suppress QA warning (bug #877729) for no tests executed - # for some subsuites. The layout is odd and there's a bunch - # of useless/stub directories which confuses it. - find "${S}" -iname test-suite.log -delete || die -} - -src_install() { - default - - systemd_dounit tools/systemd/squid.service - - # Need suid root for looking into /etc/shadow - fowners root:squid /usr/libexec/squid/basic_ncsa_auth - fperms 4750 /usr/libexec/squid/basic_ncsa_auth - - if use pam; then - fowners root:squid /usr/libexec/squid/basic_pam_auth - fperms 4750 /usr/libexec/squid/basic_pam_auth - fi - - # Pinger needs suid as well - fowners root:squid /usr/libexec/squid/pinger - fperms 4750 /usr/libexec/squid/pinger - - # These scripts depend on perl - if ! use perl; then - local perl_scripts=( - basic_pop3_auth ext_delayer_acl helper-mux - log_db_daemon security_fake_certverify - storeid_file_rewrite url_lfs_rewrite - ) - - local script - for script in "${perl_scripts[@]}"; do - rm "${ED}"/usr/libexec/squid/${script} || die - done - fi - - # Cleanup - rm -r "${D}"/run "${D}"/var/cache || die - - dodoc CONTRIBUTORS CREDITS ChangeLog INSTALL QUICKSTART README SPONSORS doc/*.txt - newdoc src/auth/negotiate/kerberos/README README.kerberos - newdoc src/auth/basic/RADIUS/README README.RADIUS - newdoc src/acl/external/kerberos_ldap_group/README README.kerberos_ldap_group - dodoc RELEASENOTES.html - - if use pam; then - newpamd "${FILESDIR}"/squid.pam squid - fi - - newconfd "${FILESDIR}"/squid.confd-r2 squid - newinitd "${FILESDIR}"/squid.initd-r7 squid - - if use logrotate ; then - insinto /etc/logrotate.d - newins "${FILESDIR}"/squid.logrotate-r1 squid - else - exeinto /etc/cron.weekly - newexe "${FILESDIR}"/squid.cron-r1 squid.cron - fi - - diropts -m0750 -o squid -g squid - keepdir /var/log/squid /etc/ssl/squid /var/lib/squid - - # Hack for bug #834503 (see also bug #664940) - # Please keep this for a few years until it's no longer plausible - # someone is upgrading from < squid 5.7. - mv "${ED}"/usr/share/squid/errors{,.new} || die -} - -pkg_preinst() { - # Remove file in EROOT that the directory collides with. - rm -rf "${EROOT}"/usr/share/squid/errors || die - - # Following the collision protection check, reverse - # src_install's rename in ED. - mv "${ED}"/usr/share/squid/errors{.new,} || die -} - -pkg_postinst() { - elog "A good starting point to debug Squid issues is to use 'squidclient mgr:' commands such as 'squidclient mgr:info'." - - if [[ ${#r} -gt 0 ]]; then - elog "You are using a release with the official ${r} patch! Make sure you mention that, or send the output of 'squidclient mgr:info' when asking for support." - fi -}
