summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Volkov <pva@gentoo.org>2010-08-25 09:13:21 +0000
committerPeter Volkov <pva@gentoo.org>2010-08-25 09:13:21 +0000
commit1751068a17b69fa4ea0f96d89183e079e42d81f3 (patch)
treeb61f9627be54429686031c3b61d13683fc8e8dd1 /net-firewall
parentfixed manifest for ChangeLog (diff)
downloadgentoo-2-1751068a17b69fa4ea0f96d89183e079e42d81f3.tar.gz
gentoo-2-1751068a17b69fa4ea0f96d89183e079e42d81f3.tar.bz2
gentoo-2-1751068a17b69fa4ea0f96d89183e079e42d81f3.zip
Version bump, fixes 2.6.35 kernel compatibility issue, bug 332687, thank fkhp and Oleksandr Kovalenko for report.
(Portage version: 2.1.8.3/cvs/Linux x86_64)
Diffstat (limited to 'net-firewall')
-rw-r--r--net-firewall/ipset/ChangeLog8
-rw-r--r--net-firewall/ipset/ipset-4.3.ebuild101
2 files changed, 108 insertions, 1 deletions
diff --git a/net-firewall/ipset/ChangeLog b/net-firewall/ipset/ChangeLog
index e8c51eea477e..565c28260fa9 100644
--- a/net-firewall/ipset/ChangeLog
+++ b/net-firewall/ipset/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-firewall/ipset
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-firewall/ipset/ChangeLog,v 1.36 2010/05/20 10:38:35 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-firewall/ipset/ChangeLog,v 1.37 2010/08/25 09:13:21 pva Exp $
+
+*ipset-4.3 (25 Aug 2010)
+
+ 25 Aug 2010; Peter Volkov <pva@gentoo.org> +ipset-4.3.ebuild:
+ Version bump, fixes 2.6.35 kernel compatibility issue, bug 332687, thank
+ fkhp and Oleksandr Kovalenko for report.
20 May 2010; Peter Volkov <pva@gentoo.org> ipset-4.1.ebuild:
amd64 stable, bug 304037.
diff --git a/net-firewall/ipset/ipset-4.3.ebuild b/net-firewall/ipset/ipset-4.3.ebuild
new file mode 100644
index 000000000000..c7b0051c4114
--- /dev/null
+++ b/net-firewall/ipset/ipset-4.3.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-firewall/ipset/ipset-4.3.ebuild,v 1.1 2010/08/25 09:13:21 pva Exp $
+
+EAPI="2"
+
+inherit eutils versionator toolchain-funcs linux-mod
+
+DESCRIPTION="IPset tool for iptables, successor to ippool."
+HOMEPAGE="http://ipset.netfilter.org/"
+SRC_URI="http://ipset.netfilter.org/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="modules"
+
+RDEPEND=">=net-firewall/iptables-1.4.4"
+DEPEND="${RDEPEND}"
+
+# configurable from outside
+[ -z "${IP_NF_SET_MAX}" ] && IP_NF_SET_MAX=256
+[ -z "${IP_NF_SET_HASHSIZE}" ] && IP_NF_SET_HASHSIZE=1024
+BUILD_PARAMS="IP_NF_SET_MAX=$IP_NF_SET_MAX IP_NF_SET_HASHSIZE=${IP_NF_SET_HASHSIZE}"
+# module fun
+BUILD_TARGETS="all"
+MODULE_NAMES_ARG="kernel/net/ipv4/netfilter:${S}/kernel"
+MODULE_NAMES=""
+for i in ip_set{,_{setlist,{ip,port,macip}map,{ip,net,ipport,ipportip,ipportnet}hash,iptree{,map}}} \
+ ipt_{SET,set}; do
+ MODULE_NAMES="${MODULE_NAMES} ${i}(${MODULE_NAMES_ARG})"
+done
+# sanity
+CONFIG_CHECK="NETFILTER"
+ERROR_CFG="ipset requires netfilter support in your kernel."
+
+pkg_setup() {
+ get_version
+
+ build_modules=0
+ if use modules; then
+ if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then
+ if linux_chkconfig_builtin "IP_NF_SET"; then #274577
+ einfo "Modular kernel detected but IP_NF_SET=y, will not build kernel modules"
+ else
+ build_modules=1
+ einfo "Modular kernel detected, will build kernel modules"
+ fi
+ else
+ einfo "Nonmodular kernel detected, will not build kernel modules"
+ fi
+ fi
+
+ [[ ${build_modules} -eq 1 ]] && linux-mod_pkg_setup
+ myconf="${myconf} PREFIX="
+ myconf="${myconf} LIBDIR=/$(get_libdir)"
+ myconf="${myconf} BINDIR=/sbin"
+ myconf="${myconf} MANDIR=/usr/share/man"
+ myconf="${myconf} INCDIR=/usr/include"
+ myconf="${myconf} NO_EXTRA_WARN_FLAGS=yes"
+ export myconf
+}
+
+src_prepare() {
+ sed -i \
+ -e 's/KERNELDIR/(KERNELDIR)/g' \
+ -e 's/^(\?KERNEL_\?DIR.*/KERNELDIR ?= /' \
+ -e '/^all::/iV ?= 0' \
+ -e '/^all::/iKBUILD_OUTPUT ?=' \
+ -e '/$(MAKE)/{s/$@/ V=$(V) KBUILD_OUTPUT=$(KBUILD_OUTPUT) modules/}' \
+ "${S}"/kernel/Makefile
+}
+
+src_compile() {
+ einfo "Building userspace"
+ emake \
+ CC="$(tc-getCC)" \
+ COPT_FLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ ${myconf} \
+ binaries || die "failed to build"
+
+ if [[ ${build_modules} -eq 1 ]]; then
+ einfo "Building kernel modules"
+ cd "${S}/kernel"
+ export KERNELDIR="${KERNEL_DIR}"
+ linux-mod_src_compile || die "failed to build modules"
+ fi
+}
+
+src_install() {
+ einfo "Installing userspace"
+ emake DESTDIR="${D}" ${myconf} binaries_install || die "failed to package"
+
+ if [[ ${build_modules} -eq 1 ]]; then
+ einfo "Installing kernel modules"
+ cd "${S}/kernel"
+ export KERNELDIR="${KERNEL_DIR}"
+ linux-mod_src_install
+ fi
+}