diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2017-09-25 12:38:37 +0200 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2017-11-01 23:04:47 +0100 |
commit | c2585aef6d159695ac0a5dc600245507973e82ef (patch) | |
tree | d57f37e7f34b1e21cb39b528220037bd138daf2e /net-analyzer/argus | |
parent | dev-perl/Module-Build-XSUtil: Bump to version 0.180.0 (diff) | |
download | gentoo-c2585aef6d159695ac0a5dc600245507973e82ef.tar.gz gentoo-c2585aef6d159695ac0a5dc600245507973e82ef.tar.bz2 gentoo-c2585aef6d159695ac0a5dc600245507973e82ef.zip |
net-analyzer/argus: Add option to build against libtirpc for RPC support, bug 631474
Closes: https://bugs.gentoo.org/631474
Package-Manager: Portage-2.3.10, Repoman-2.3.3
Diffstat (limited to 'net-analyzer/argus')
-rw-r--r-- | net-analyzer/argus/argus-3.0.8.2-r1.ebuild | 86 | ||||
-rw-r--r-- | net-analyzer/argus/files/argus-3.0.8.2-rpc.patch | 47 | ||||
-rw-r--r-- | net-analyzer/argus/metadata.xml | 3 |
3 files changed, 136 insertions, 0 deletions
diff --git a/net-analyzer/argus/argus-3.0.8.2-r1.ebuild b/net-analyzer/argus/argus-3.0.8.2-r1.ebuild new file mode 100644 index 000000000000..4484cf276e72 --- /dev/null +++ b/net-analyzer/argus/argus-3.0.8.2-r1.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +inherit autotools eutils user + +DESCRIPTION="network Audit Record Generation and Utilization System" +HOMEPAGE="http://www.qosient.com/argus/" +SRC_URI="${HOMEPAGE}dev/${P/_rc/.rc.}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="debug +libtirpc sasl tcpd" + +RDEPEND=" + net-libs/libpcap + sys-libs/zlib + !libtirpc? ( sys-libs/glibc[rpc(-)] ) + libtirpc? ( net-libs/libtirpc ) + sasl? ( dev-libs/cyrus-sasl ) + tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) +" + +DEPEND=" + ${RDEPEND} + >=sys-devel/bison-1.28 + >=sys-devel/flex-2.4.6 +" + +S=${WORKDIR}/${P/_rc/.rc.} + +src_prepare() { + find . -type f -execdir chmod +w {} \; #561360 + sed -e 's:/etc/argus.conf:/etc/argus/argus.conf:' \ + -i argus/argus.c \ + -i support/Config/argus.conf \ + -i man/man8/argus.8 \ + -i man/man5/argus.conf.5 || die + + sed -e 's:#\(ARGUS_SETUSER_ID=\).*:\1argus:' \ + -e 's:#\(ARGUS_SETGROUP_ID=\).*:\1argus:' \ + -e 's:\(#ARGUS_CHROOT_DIR=\).*:\1/var/lib/argus:' \ + -i support/Config/argus.conf || die + epatch \ + "${FILESDIR}"/${PN}-3.0.8.1-disable-tcp-wrappers-automagic.patch \ + "${FILESDIR}"/${PN}-3.0.5-Makefile.patch \ + "${FILESDIR}"/${PN}-3.0.7.3-DLT_IPNET.patch \ + "${FILESDIR}"/${PN}-3.0.8.2-rpc.patch + + epatch_user + eautoreconf +} + +src_configure() { + use debug && touch .debug # enable debugging + econf $(use_with libtirpc) $(use_with tcpd wrappers) $(use_with sasl) +} + +src_compile() { + emake CCOPT="${CFLAGS} ${LDFLAGS}" +} + +src_install () { + doman man/man5/*.5 man/man8/*.8 + + dosbin bin/argus{,bug} + + dodoc ChangeLog CREDITS README + + insinto /etc/argus + doins support/Config/argus.conf + + newinitd "${FILESDIR}/argus.initd" argus + keepdir /var/lib/argus +} + +pkg_preinst() { + enewgroup argus + enewuser argus -1 -1 /var/lib/argus argus +} + +pkg_postinst() { + elog "Note, if you modify ARGUS_DAEMON value in argus.conf it's quite" + elog "possible that the init script will fail to work." +} diff --git a/net-analyzer/argus/files/argus-3.0.8.2-rpc.patch b/net-analyzer/argus/files/argus-3.0.8.2-rpc.patch new file mode 100644 index 000000000000..462d465609f1 --- /dev/null +++ b/net-analyzer/argus/files/argus-3.0.8.2-rpc.patch @@ -0,0 +1,47 @@ +diff -ruN argus-3.0.8.2.orig/common/Makefile.in argus-3.0.8.2/common/Makefile.in +--- argus-3.0.8.2.orig/common/Makefile.in 2015-04-14 14:32:33.000000000 -0000 ++++ argus-3.0.8.2/common/Makefile.in 2017-09-25 10:27:16.272856331 -0000 +@@ -35,12 +35,12 @@ + + CC = @CC@ + CCOPT = @V_CCOPT@ +-INCLS = -I$(srcdir) @V_INCLS@ -I$(srcdir)/../include -I$(srcdir)/../argus ++INCLS = -I$(srcdir) @V_INCLS@ @RPC_CFLAGS@ -I$(srcdir)/../include -I$(srcdir)/../argus + DEFS = @DEFS@ + + # Standard CFLAGS + CFLAGS = $(CCOPT) $(INCLS) $(DEFS) +-LDFLAGS = @LDFLAGS@ ++LDFLAGS = @LDFLAGS@ @RPC_LIBS@ + + INSTALL = @INSTALL@ + RANLIB = @V_RANLIB@ +diff -ruN argus-3.0.8.2.orig/configure.ac argus-3.0.8.2/configure.ac +--- argus-3.0.8.2.orig/configure.ac 2017-09-25 10:20:04.155174606 -0000 ++++ argus-3.0.8.2/configure.ac 2017-09-25 10:24:39.151904377 -0000 +@@ -120,6 +120,25 @@ + AC_CHECK_FUNCS(floorf remainderf) + AC_CHECK_FUNCS(timegm) + ++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) ++ + AC_CHECK_FUNCS(xdrmem_create) + if test "$ac_cv_func_xdrmem_create" = yes ; then + AC_DEFINE([HAVE_XDR], [], [Using system XDR library]) diff --git a/net-analyzer/argus/metadata.xml b/net-analyzer/argus/metadata.xml index 90955da4b592..e7da258d5266 100644 --- a/net-analyzer/argus/metadata.xml +++ b/net-analyzer/argus/metadata.xml @@ -6,4 +6,7 @@ <name>Gentoo network monitoring and analysis project</name> </maintainer> <longdescription>network Audit Record Generation and Utilization System</longdescription> +<use> + <flag name="libtirpc">Build against <pkg>net-libs/libtirpc</pkg> for RPC support</flag> +</use> </pkgmetadata> |