# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 inherit autotools eutils flag-o-matic user systemd DESCRIPTION="Clam Anti-Virus Scanner" HOMEPAGE="https://www.clamav.net/" SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris" IUSE="bzip2 doc clamdtop clamsubmit iconv ipv6 libclamav-only libressl milter metadata-analysis-api selinux static-libs test uclibc xml" RESTRICT="!test? ( test )" CDEPEND="bzip2? ( app-arch/bzip2 ) clamdtop? ( sys-libs/ncurses:0 ) iconv? ( virtual/libiconv ) metadata-analysis-api? ( dev-libs/json-c:= ) milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) ) >=sys-libs/zlib-1.2.2:= !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) sys-devel/libtool || ( dev-libs/libpcre2 >dev-libs/libpcre-6 ) dev-libs/libmspack xml? ( dev-libs/libxml2 ) elibc_musl? ( sys-libs/fts-standalone ) !libclamav-only? ( net-misc/curl ) clamsubmit? ( net-misc/curl dev-libs/json-c:= ) !!> "${ED}"/etc/conf.d/clamd <<-EOF MILTER_NICELEVEL=19 START_MILTER=no EOF systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service fi if use doc; then einstalldocs doman docs/man/*.[1-8] fi for i in clamd freshclam clamav-milter do [[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,} done prune_libtool_files --all } src_test() { emake quick-check } pkg_postinst() { if use milter ; then elog "For simple instructions how to setup the clamav-milter read the" elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}" fi if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then ewarn "You must run freshclam manually to populate the virus database files" ewarn "before starting clamav for the first time.\n" fi elog "For instructions on how to use clamonacc see https://www.clamav.net/documents/on-access-scanning" }