diff options
Diffstat (limited to 'net-misc/sslh/sslh-1.21c-r2.ebuild')
-rw-r--r-- | net-misc/sslh/sslh-1.21c-r2.ebuild | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/net-misc/sslh/sslh-1.21c-r2.ebuild b/net-misc/sslh/sslh-1.21c-r2.ebuild new file mode 100644 index 000000000000..fa5062502fa5 --- /dev/null +++ b/net-misc/sslh/sslh-1.21c-r2.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic systemd toolchain-funcs + +DESCRIPTION="Port multiplexer - accept both HTTPS and SSH connections on the same port" +HOMEPAGE="https://www.rutschle.net/tech/sslh/README.html" +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/yrutschle/sslh.git" + inherit git-r3 +else + KEYWORDS="~amd64 ~arm ~m68k ~mips ~s390 ~x86" + SRC_URI="https://github.com/yrutschle/sslh/archive/v${PV}.tar.gz -> ${P}.tar.gz" + S=${WORKDIR}/${P} +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="caps pcre systemd tcpd" + +RDEPEND="caps? ( sys-libs/libcap ) + pcre? ( dev-libs/libpcre:= ) + systemd? ( sys-apps/systemd:= ) + tcpd? ( sys-apps/tcp-wrappers ) + >=dev-libs/libconfig-1.5:=" +DEPEND="${RDEPEND} + dev-lang/perl" + +RESTRICT="test" + +src_prepare() { + default + sed -i \ + -e '/MAN/s:| gzip -9 - >:>:' \ + -e '/MAN=sslh.8.gz/s:.gz::' \ + Makefile || die +} + +src_compile() { + # On older versions of GCC, the default gnu89 variant + # will reject within-for-loop initializers, bug #595426 + # Furthermore, we need to use the gnu variant (gnu99) instead + # of the ISO (c99) variant, as we want the __USE_XOPEN2K macro + # to be defined. + append-cflags -std=gnu99 + + emake \ + CC="$(tc-getCC)" \ + USELIBPCRE=$(usev pcre) \ + USELIBCAP=$(usev caps) \ + USELIBWRAP=$(usev tcpd) \ + USESYSTEMD=$(usev systemd) +} + +src_install() { + dosbin sslh-{fork,select} + dosym sslh-fork /usr/sbin/sslh + + doman ${PN}.8 + + dodoc ChangeLog README.md + + newinitd "${FILESDIR}"/sslh.init.d-3 sslh + newconfd "${FILESDIR}"/sslh.conf.d-2 sslh + + if use systemd; then + # Gentoo puts the binaries in /usr/sbin, but upstream puts them in /usr/bin + sed -i -e 's~/usr/bin/~/usr/sbin/~g' scripts/systemd.sslh.service || die + systemd_newunit scripts/systemd.sslh.service sslh.service + exeinto /usr/lib/systemd/system-generators/ + doexe systemd-sslh-generator + fi +} |