81 lines
1.9 KiB
Bash
81 lines
1.9 KiB
Bash
# Copyright 1999-2021 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=7
|
|
|
|
inherit systemd
|
|
|
|
DESCRIPTION="Lightweight connection pooler for PostgreSQL"
|
|
HOMEPAGE="https://www.pgbouncer.org/"
|
|
SRC_URI="https://www.pgbouncer.org/downloads/files/${PV}/pgbouncer-${PV}.tar.gz"
|
|
LICENSE="BSD"
|
|
SLOT="0"
|
|
KEYWORDS="amd64 x86"
|
|
IUSE="+c-ares debug doc pam ssl systemd udns"
|
|
|
|
# At-most-one-of, one can be enabled but not both
|
|
REQUIRED_USE="?? ( c-ares udns )"
|
|
|
|
RDEPEND="
|
|
>=dev-libs/libevent-2.0:=
|
|
>=sys-libs/glibc-2.10
|
|
acct-user/pgbouncer
|
|
c-ares? ( >=net-dns/c-ares-1.10 )
|
|
ssl? ( >=dev-libs/openssl-1.0.1:=[-bindist(-)] )
|
|
systemd? ( sys-apps/systemd )
|
|
udns? ( >=net-libs/udns-0.1 )
|
|
"
|
|
|
|
DEPEND="${RDEPEND}"
|
|
|
|
# Tests require a local database server, wants to fiddle with iptables,
|
|
# and doesn't support overriding.
|
|
RESTRICT="test"
|
|
|
|
src_prepare() {
|
|
eapply "${FILESDIR}"/pgbouncer-1.12-dirs.patch
|
|
|
|
default
|
|
}
|
|
|
|
src_configure() {
|
|
# --enable-debug is only used to disable stripping
|
|
econf \
|
|
--docdir=/usr/share/doc/${PF} \
|
|
--enable-debug \
|
|
$(use_with c-ares cares) \
|
|
$(use_enable debug cassert) \
|
|
$(use_with pam) \
|
|
$(use_with ssl openssl) \
|
|
$(use_with systemd) \
|
|
$(use_with udns)
|
|
}
|
|
|
|
src_install() {
|
|
emake DESTDIR="${D}" install
|
|
|
|
dodoc AUTHORS
|
|
use doc && dodoc doc/*.rst
|
|
|
|
newconfd "${FILESDIR}/${PN}.confd-r1" "${PN}"
|
|
newinitd "${FILESDIR}/${PN}.initd-r2" "${PN}"
|
|
|
|
insinto /etc
|
|
doins etc/pgbouncer.ini
|
|
|
|
insinto /etc/logrotate.d
|
|
newins "${FILESDIR}/logrotate" pgbouncer
|
|
}
|
|
|
|
pkg_postinst() {
|
|
if [[ -z ${REPLACING_VERSIONS} ]] ; then
|
|
einfo "Please read the config.txt for Configuration Directives"
|
|
einfo
|
|
einfo "For Administration Commands, see:"
|
|
einfo " man pgbouncer"
|
|
einfo
|
|
einfo "By default, PgBouncer does not have access to any database."
|
|
einfo "GRANT the permissions needed for your application and make sure that it"
|
|
einfo "exists in PgBouncer's auth_file."
|
|
fi
|
|
}
|