blob: 6cae6a0f89bda65c5b17488c46c50a4d69e73380 [file] [log] [blame] [edit]
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module linux-info systemd toolchain-funcs
DESCRIPTION="Standard networking plugins for container networking"
HOMEPAGE="https://github.com/containernetworking/plugins"
SRC_URI="https://github.com/containernetworking/plugins/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="*"
IUSE="hardened"
RDEPEND="net-firewall/iptables"
CONFIG_CHECK="~BRIDGE_VLAN_FILTERING ~NETFILTER_XT_MATCH_COMMENT
~NETFILTER_XT_MATCH_MULTIPORT"
S="${WORKDIR}/plugins-${PV}"
src_compile() {
export GO="$(tc-getGO)"
go() {
echo "${GO} $*" 1>&2
"${GO}" "$@"
}
export -f go
CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" ./build_linux.sh || die
}
src_install() {
exeinto /opt/cni/bin
doexe bin/*
dodoc README.md
local i
for i in plugins/{meta/{bandwidth,firewall,flannel,portmap,sbr,tuning},main/{bridge,host-device,ipvlan,loopback,macvlan,ptp,vlan},ipam/{dhcp,host-local,static},sample}; do
newdoc README.md ${i##*/}.README.md
done
systemd_dounit plugins/ipam/dhcp/systemd/cni-dhcp.{service,socket}
newinitd "${FILESDIR}"/cni-dhcp.initd cni-dhcp
}