View Raw Ebuild
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit linux-mod-r1 toolchain-funcs
COMMIT="22aed905e20d428d18556cc9bc0073706ba81e34"
DESCRIPTION="Ratelimit iptables module"
HOMEPAGE="https://github.com/aabc/ipt-ratelimit"
SRC_URI="https://github.com/aabc/ipt-ratelimit/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ipt-ratelimit-${COMMIT}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
RDEPEND="net-firewall/iptables:0="
BDEPEND="virtual/linux-sources
virtual/pkgconfig"
DOCS=( NEWS README )
src_prepare() {
default
# replace make and gcc, add flags
sed -i \
-e 's:make -C:$(MAKE) -C:g' \
-e 's:gcc -O2:$(CC) $(LDFLAGS):' \
-e 's:gcc:$(CC) $(CFLAGS) $(LDFLAGS):' \
Makefile || die "sed in Makefile failed"
if ! use debug; then
sed 's/CFLAGS_xt_ratelimit.o := -DDEBUG//' \
-i Makefile || die "sed for debug failed"
fi
}
src_compile() {
local modlist=( xt_ratelimit=ipt_ratelimit )
local modargs=( KVER="${KV_FULL}" KDIR="${KV_OUT_DIR}" )
emake CC="$(tc-getCC)" libxt_ratelimit.so
linux-mod-r1_src_compile
}
src_install() {
linux-mod-r1_src_install
exeinto /usr/"$(get_libdir)"/xtables
doexe libxt_ratelimit.so
doheader xt_ratelimit.h
}