summaryrefslogtreecommitdiff
blob: 710eeb83ce89111e29dfad6c7df85317324e08de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5

inherit autotools base libtool

MY_P="tacacs+-F${PV}"
S="${WORKDIR}/${MY_P}"

DESCRIPTION="An updated version of Cisco's TACACS+ server"
HOMEPAGE="http://www.shrubbery.net/tac_plus/"
SRC_URI="ftp://ftp.shrubbery.net/pub/tac_plus/${MY_P}.tar.gz"

LICENSE="HPND RSA GPL-2" # GPL-2 only for init script
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="debug finger maxsess tcpd skey static-libs"

DEPEND="skey? ( >=sys-auth/skey-1.1.5-r1 )
	tcpd? ( sys-apps/tcp-wrappers )
	sys-libs/pam"
RDEPEND="${DEPEND}"

PATCHES=(
	"${FILESDIR}/${P}-parallelmake.patch"
	"${FILESDIR}/${P}-deansification.patch"
)

src_prepare() {
	base_src_prepare
	mv configure.in configure.ac || die "Unable to quiet autoconf deprecation warning"
	AT_M4DIR="." eautoreconf
	elibtoolize
}

src_configure() {
	econf \
		$(use_with skey) \
		$(use_with tcpd libwrap) \
		$(use_enable debug) \
		$(use_enable finger) \
		$(use_enable maxsess) \
		$(use_enable static-libs static)
}

src_install() {
	emake DESTDIR="${D}" install

	use static-libs || find "${D}" -name '*.la' -delete || die "Unable to remove spurious libtool archive"
	dodoc CHANGES FAQ

	newinitd "${FILESDIR}/tac_plus.init2" tac_plus
	newconfd "${FILESDIR}/tac_plus.confd2" tac_plus

	insinto /etc/tac_plus
	newins "${FILESDIR}/tac_plus.conf2" tac_plus.conf
}