You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/mail-filter/gld/gld-1.7-r4.ebuild

82 lines
1.9 KiB

# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit toolchain-funcs
DESCRIPTION="A standalone anti-spam greylisting algorithm on top of Postfix"
HOMEPAGE="http://www.gasmi.net/gld.html"
SRC_URI="http://www.gasmi.net/down/${P}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86"
IUSE="postgres"
# Not adding a mysql USE flag. The package defaults to it, so we will too.
DEPEND="sys-libs/zlib
dev-libs/openssl:0=
!postgres? ( dev-db/mysql-connector-c:0= )
postgres? ( dev-db/postgresql:*[server] )"
RDEPEND="${DEPEND}"
src_prepare() {
sed -i gld.conf \
-e 's:^LOOPBACKONLY=.*:LOOPBACKONLY=1:' \
-e 's:^#USER=.*:USER=nobody:' \
-e 's:^#GROUP=.*:GROUP=nobody:' \
|| die "sed gld.conf failed"
sed -i Makefile.in \
-e '/ -c /{s|-O2|$(CFLAGS)|g}' \
-e '/ -o /{s|-O2|$(CFLAGS) $(LDFLAGS)|g}' \
-e '/strip/d' \
|| die "sed Makefile.in failed"
sed -i tables.{my,pg}sql \
-e '/ip char/s/16/39/' \
|| die "sed sql tables failed"
sed -i configure \
-e "/SQL_LIBS/{s~/lib~/$(get_libdir)~g}" || die
default
}
src_configure() {
tc-export CC
# It's kind of weird. $(use_with postgres pgsql) won't work if you don't
# use it...
econf $(usex postgres '--with-pgsql' '')
}
src_install() {
dobin gld
insinto /etc
newins gld.conf gld.conf.example
dodoc HISTORY README*
insinto /usr/share/${PN}/sql
doins *.pgsql *-whitelist.sql "${FILESDIR}"/tables.sql
newinitd "${FILESDIR}"/gld.rc gld
}
pkg_preinst() {
elog "Please read the README file in /usr/share/doc/${PF} for"
elog "details on how to setup gld."
elog
elog "The sql files have been installed to /usr/share/${PN}/sql."
local old_ver
for old_ver in ${REPLACING_VERSIONS} ; do
if ver_test ${old_ver} -eq "1.7-r1" ; then
elog "You might want to use the ALTER_TABLE command to change the"
elog "ip field width to 39 chars to accomodate ipv6 addresses."
elog "Please see your sql server documentation."
fi
done
}