# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 inherit autotools pam ssl-cert DESCRIPTION="Serial Console Manager" HOMEPAGE="https://www.conserver.com" SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" LICENSE="BSD BSD-with-attribution" SLOT="0" KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" IUSE="debug ipv6 freeipmi kerberos libressl pam ssl test tcpd" DEPEND="debug? ( dev-libs/dmalloc:= ) freeipmi? ( sys-libs/freeipmi:= ) kerberos? ( virtual/krb5 net-libs/libgssglue ) ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) ) pam? ( virtual/pam ) tcpd? ( sys-apps/tcp-wrappers ) " RDEPEND="${DEPEND} pam? ( sys-auth/pambase )" DOCS=( CHANGES FAQ PROTOCOL README.md conserver/Sun-serial contrib/maketestcerts) PATCHES=( "${FILESDIR}/${PV}-libressl.patch" ) src_prepare() { default sed -e '/^INSTALL_PROGRAM/s:-s::' \ -i {console,conserver,autologin,contrib/chat}/Makefile.in || die eautoreconf } src_configure() { local myconf=( $(use_with debug dmalloc) $(use_with ipv6) $(use_with freeipmi) $(use_with kerberos gssapi) $(use_with ssl openssl) $(use_with pam) $(use_with tcpd libwrap) --with-cffile=conserver/conserver.cf --with-logfile=/var/log/conserver.log --with-master=localhost --with-pidfile=/run/conserver.pid --with-port=7782 --with-pwdfile=conserver/conserver.passwd ) econf "${myconf[@]}" } src_install() { emake DESTDIR="${D}" exampledir="/usr/share/doc/${PF}/examples" install keepdir /var/consoles fowners daemon:daemon /var/consoles fperms 700 /var/consoles newinitd "${FILESDIR}"/conserver.initd-r1 conserver newconfd "${FILESDIR}"/conserver.confd-r1 conserver dodir /etc/conserver fperms 700 /etc/conserver insinto /etc/conserver newins "${S}"/conserver.cf/conserver.cf conserver.cf.sample newins "${S}"/conserver.cf/conserver.passwd conserver.passwd.sample einstalldocs docinto examples dodoc -r conserver.cf/samples/. newpamd "${FILESDIR}"/conserver.pam-pambase conserver } src_test() { # hangs without -j1 emake -j1 test } pkg_postinst() { if use ssl; then if [[ ! -f "${EROOT}"/etc/ssl/conserver/conserver.key ]]; then install_cert /etc/ssl/conserver/conserver fi fi }