summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2017-09-24 22:16:18 +0200
committerAndreas K. Hüttel <dilfridge@gentoo.org>2017-11-01 23:06:20 +0100
commitd94fc3980f778d1d88ec93f83b0b4ebb41a3fe14 (patch)
tree87d9a6d900302a75dabe1ddcbcbbf2c257b598ad /net-firewall
parentnet-analyzer/argus: Add option to build against libtirpc for RPC support, bug... (diff)
downloadgentoo-d94fc3980f778d1d88ec93f83b0b4ebb41a3fe14.tar.gz
gentoo-d94fc3980f778d1d88ec93f83b0b4ebb41a3fe14.tar.bz2
gentoo-d94fc3980f778d1d88ec93f83b0b4ebb41a3fe14.zip
net-firewall/conntrack-tools: Add support for libtirpc, bug 631902
Closes: https://bugs.gentoo.org/631902 Package-Manager: Portage-2.3.10, Repoman-2.3.3
Diffstat (limited to 'net-firewall')
-rw-r--r--net-firewall/conntrack-tools/conntrack-tools-1.4.4-r1.ebuild94
-rw-r--r--net-firewall/conntrack-tools/files/conntrack-tools-1.4.4-rpc.patch43
-rw-r--r--net-firewall/conntrack-tools/metadata.xml3
3 files changed, 140 insertions, 0 deletions
diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.4-r1.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.4-r1.ebuild
new file mode 100644
index 000000000000..c5d0f532f96d
--- /dev/null
+++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.4-r1.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools eutils linux-info
+
+DESCRIPTION="Connection tracking userspace tools"
+HOMEPAGE="http://conntrack-tools.netfilter.org"
+SRC_URI="http://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~hppa ~x86"
+IUSE="doc +libtirpc"
+
+RDEPEND="
+ >=net-libs/libmnl-1.0.3
+ >=net-libs/libnetfilter_conntrack-1.0.6
+ >=net-libs/libnetfilter_cthelper-1.0.0
+ >=net-libs/libnetfilter_cttimeout-1.0.0
+ >=net-libs/libnetfilter_queue-1.0.2
+ >=net-libs/libnfnetlink-1.0.1
+ !libtirpc? ( sys-libs/glibc[rpc(-)] )
+ libtirpc? ( net-libs/libtirpc )
+"
+DEPEND="
+ ${RDEPEND}
+ doc? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )
+ virtual/pkgconfig
+ sys-devel/bison
+ sys-devel/flex
+"
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ if kernel_is lt 2 6 18 ; then
+ die "${PN} requires at least 2.6.18 kernel version"
+ fi
+
+ #netfilter core team has changed some option names with kernel 2.6.20
+ if kernel_is lt 2 6 20 ; then
+ CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
+ else
+ CONFIG_CHECK="~NF_CT_NETLINK"
+ fi
+ CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK
+ ~NETFILTER_NETLINK ~NF_CONNTRACK_EVENTS"
+
+ check_extra_config
+
+ linux_config_exists || \
+ linux_chkconfig_present "NF_CONNTRACK_IPV4" || \
+ linux_chkconfig_present "NF_CONNTRACK_IPV6" || \
+ ewarn "CONFIG_NF_CONNTRACK_IPV4 or CONFIG_NF_CONNTRACK_IPV6 " \
+ "are not set when one at least should be."
+}
+
+src_prepare() {
+ default
+
+ # bug #474858
+ sed -i -e 's:/var/lock:/run/lock:' doc/stats/conntrackd.conf || die
+
+ # bug #631902
+ epatch "${FILESDIR}/${P}-rpc.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with libtirpc)
+}
+
+src_compile() {
+ default
+ use doc && emake -C doc/manual
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/conntrackd.initd-r3" conntrackd
+ newconfd "${FILESDIR}/conntrackd.confd-r2" conntrackd
+
+ insinto /etc/conntrackd
+ doins doc/stats/conntrackd.conf
+
+ dodoc -r doc/sync doc/stats AUTHORS TODO
+ use doc && dodoc doc/manual/${PN}.html
+}
diff --git a/net-firewall/conntrack-tools/files/conntrack-tools-1.4.4-rpc.patch b/net-firewall/conntrack-tools/files/conntrack-tools-1.4.4-rpc.patch
new file mode 100644
index 000000000000..739857790c3d
--- /dev/null
+++ b/net-firewall/conntrack-tools/files/conntrack-tools-1.4.4-rpc.patch
@@ -0,0 +1,43 @@
+diff -ruN conntrack-tools-1.4.4.orig/configure.ac conntrack-tools-1.4.4/configure.ac
+--- conntrack-tools-1.4.4.orig/configure.ac 2016-08-22 10:43:02.954671362 -0000
++++ conntrack-tools-1.4.4/configure.ac 2017-09-24 19:50:37.225517482 -0000
+@@ -50,6 +50,25 @@
+ AS_HELP_STRING([--enable-systemd], [Build systemd support]),
+ [enable_systemd="$enableval"], [enable_systemd="no"])
+
++AC_ARG_WITH([libtirpc],
++ AS_HELP_STRING([--with-libtirpc], [Use libtirpc as RPC implementation (instead of sunrpc)]),
++ [], [ with_libtirpc=no ])
++
++AS_IF([test "x$with_libtirpc" != xno],
++ [PKG_CHECK_MODULES([TIRPC],
++ [libtirpc],
++ [RPC_CFLAGS=$TIRPC_CFLAGS; RPC_LIBS=$TIRPC_LIBS;],
++ [AC_MSG_ERROR([libtirpc requested, but library not found.])]
++ )],
++ [AC_CHECK_HEADER(rpc/rpc.h,
++ [RPC_CFLAGS=""; RPC_LIBS="";],
++ [AC_MSG_ERROR([sunrpc requested, but headers are not present.])]
++ )]
++)
++
++AC_SUBST(RPC_CFLAGS)
++AC_SUBST(RPC_LIBS)
++
+ PKG_CHECK_MODULES([LIBNFNETLINK], [libnfnetlink >= 1.0.1])
+ PKG_CHECK_MODULES([LIBMNL], [libmnl >= 1.0.3])
+ PKG_CHECK_MODULES([LIBNETFILTER_CONNTRACK], [libnetfilter_conntrack >= 1.0.6])
+diff -ruN conntrack-tools-1.4.4.orig/src/helpers/Makefile.am conntrack-tools-1.4.4/src/helpers/Makefile.am
+--- conntrack-tools-1.4.4.orig/src/helpers/Makefile.am 2015-02-11 15:36:00.650610125 -0000
++++ conntrack-tools-1.4.4/src/helpers/Makefile.am 2017-09-24 19:52:11.644990587 -0000
+@@ -22,8 +22,8 @@
+ ct_helper_ftp_la_CFLAGS = $(AM_CFLAGS) $(LIBNETFILTER_CONNTRACK_CFLAGS)
+
+ ct_helper_rpc_la_SOURCES = rpc.c
+-ct_helper_rpc_la_LDFLAGS = -avoid-version -module $(LIBNETFILTER_CONNTRACK_LIBS)
+-ct_helper_rpc_la_CFLAGS = $(AM_CFLAGS) $(LIBNETFILTER_CONNTRACK_CFLAGS)
++ct_helper_rpc_la_LDFLAGS = -avoid-version -module $(LIBNETFILTER_CONNTRACK_LIBS) $(RPC_LIBS)
++ct_helper_rpc_la_CFLAGS = $(AM_CFLAGS) $(LIBNETFILTER_CONNTRACK_CFLAGS) $(RPC_CFLAGS)
+
+ ct_helper_tftp_la_SOURCES = tftp.c
+ ct_helper_tftp_la_LDFLAGS = -avoid-version -module $(LIBNETFILTER_CONNTRACK_LIBS)
diff --git a/net-firewall/conntrack-tools/metadata.xml b/net-firewall/conntrack-tools/metadata.xml
index 10198984dfc7..cd2eeff6fa91 100644
--- a/net-firewall/conntrack-tools/metadata.xml
+++ b/net-firewall/conntrack-tools/metadata.xml
@@ -10,4 +10,7 @@
the userspace command line interface, and conntrackd, the userspace
daemon.
</longdescription>
+ <use>
+ <flag name="libtirpc">Build against <pkg>net-libs/libtirpc</pkg> for RPC support</flag>
+ </use>
</pkgmetadata>