summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <patrick.mclean@sony.com>2020-05-08 19:51:30 -0700
committerPatrick McLean <chutzpah@gentoo.org>2020-05-08 19:54:51 -0700
commit6958be66cd5dd6d8f6c26ba94ecc48ef40299e16 (patch)
treedd7686da8790bcfb89f9b5bfaf80b9fb2733f206 /net-firewall
parentnet-firewall/arptables-0.0.5-r1: Revbump, support eselect-arptables (diff)
downloadgentoo-6958be66cd5dd6d8f6c26ba94ecc48ef40299e16.tar.gz
gentoo-6958be66cd5dd6d8f6c26ba94ecc48ef40299e16.tar.bz2
gentoo-6958be66cd5dd6d8f6c26ba94ecc48ef40299e16.zip
net-firewall/ebtables-2.0.11-r1: Revbump, support eselect-arptables
Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
Diffstat (limited to 'net-firewall')
-rw-r--r--net-firewall/ebtables/ebtables-2.0.11-r1.ebuild106
1 files changed, 106 insertions, 0 deletions
diff --git a/net-firewall/ebtables/ebtables-2.0.11-r1.ebuild b/net-firewall/ebtables/ebtables-2.0.11-r1.ebuild
new file mode 100644
index 000000000000..4090f230c800
--- /dev/null
+++ b/net-firewall/ebtables/ebtables-2.0.11-r1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs autotools
+
+MY_PV="$(ver_rs 3 '-' )"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Controls Ethernet frame filtering on a Linux bridge, MAC NAT and brouting"
+HOMEPAGE="http://ebtables.sourceforge.net/"
+SRC_URI="ftp://ftp.netfilter.org/pub/${PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+perl static"
+
+BDEPEND=">=app-eselect/eselect-iptables-20200508"
+# The ebtables-save script is written in perl.
+RDEPEND="${BDEPEND}
+ perl? ( dev-lang/perl )
+ net-misc/ethertypes"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.0.11-makefile.patch"
+
+ # Enhance ebtables-save to take table names as parameters bug #189315
+ "${FILESDIR}/${PN}-2.0.11-ebt-save.patch"
+
+ # from upstream git
+ "${FILESDIR}/ebtables-2.0.11-remove-stray-atsign.patch"
+)
+
+pkg_setup() {
+ if use static; then
+ ewarn "You've chosen static build which is useful for embedded devices."
+ ewarn "It has no init script. Make sure that's really what you want."
+ fi
+}
+
+src_prepare() {
+ default
+
+ # don't install perl scripts if USE=perl is disabled
+ if ! use perl; then
+ sed -e '/sbin_SCRIPTS/ d' -i Makefile.am || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --bindir="/bin" \
+ --sbindir="/sbin" \
+ --libdir=/$(get_libdir)/${PN} \
+ --sysconfdir="/usr/share/doc/${PF}" \
+ $(use_enable static)
+}
+
+src_compile() {
+ emake $(usex static 'static ebtables-legacy.8' '')
+}
+
+src_install() {
+ local -a DOCS=( ChangeLog THANKS )
+
+ if ! use static; then
+ emake DESTDIR="${D}" install
+ keepdir /var/lib/ebtables/
+ newinitd "${FILESDIR}"/ebtables.initd-r1 ebtables
+ newconfd "${FILESDIR}"/ebtables.confd-r1 ebtables
+
+ find "${D}" -name '*.la' -type f -delete || die
+ else
+ into /
+ newsbin static ebtables
+ insinto /etc
+ doins ethertypes
+ fi
+
+ newman ebtables-legacy.8 ebtables.8
+ einstalldocs
+}
+
+pkg_postinst() {
+ if ! eselect ebtables show &>/dev/null; then
+ elog "Current ebtables implementation is unset, setting to ebtables-legacy"
+ eselect ebtables set ebtables-legacy
+ fi
+
+ eselect ebtables show
+}
+
+pkg_prerm() {
+ if has_version 'net-firewall/iptables[nftables]'; then
+ elog "Resetting ebtables symlinks to xtables-nft-multi before removal"
+ eselect ebtables set xtables-nft-multi
+ else
+ elog "Unsetting ebtables symlinks before removal"
+ eselect ebtables unset
+ fi
+}