diff options
Diffstat (limited to 'net-analyzer/symon/symon-2.79-r4.ebuild')
-rw-r--r-- | net-analyzer/symon/symon-2.79-r4.ebuild | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/net-analyzer/symon/symon-2.79-r4.ebuild b/net-analyzer/symon/symon-2.79-r4.ebuild new file mode 100644 index 000000000000..029e8107b023 --- /dev/null +++ b/net-analyzer/symon/symon-2.79-r4.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/symon/symon-2.79-r4.ebuild,v 1.1 2008/08/27 06:18:34 pva Exp $ + +EAPI=1 + +inherit eutils perl-module toolchain-funcs + +DESCRIPTION="Performance and information monitoring tool" +HOMEPAGE="http://www.xs4all.nl/~wpd/symon/" +SRC_URI="http://www.xs4all.nl/~wpd/symon/philes/${P}.tar.gz" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~sparc ~x86" +IUSE="perl +symon symux" + +RDEPEND="perl? ( dev-lang/perl ) + symux? ( net-analyzer/rrdtool )" +DEPEND="${RDEPEND} + virtual/pmake" + +S=${WORKDIR}/${PN} + +build_symon() { + [[ -n "${BUILD_SYMON}" ]] && return 0 || return 1 +} + +zap_subdir() { + sed -i "/SUBDIR/s/$1//" "${S}"/Makefile || die "sed $1 failed" +} + +pkg_setup() { + if ! use perl && ! use symon && ! use symux ; then + ewarn "You have perl, symon, and symux USE flags disabled." + ewarn "That means I have nothing to install but, I'll emerge the" + ewarn "system monitor as default. Please, enable at least one USE" + ewarn "flag to avoid this message." + BUILD_SYMON=YES + fi + use symon && BUILD_SYMON=YES +} + +src_unpack() { + unpack ${A} + + build_symon && epatch "${FILESDIR}"/${PN}-symon.conf.patch + use symux && epatch "${FILESDIR}"/${PN}-symux.conf.patch + + sed -i '/${CC}.*${LIBS}/s/${CC}/& ${LDFLAGS}/' \ + "${S}"/sym{on,ux}/Makefile || die "sed ldflags failed" + + use perl && ! use symon && ! use symux && zap_subdir lib + ! use perl && zap_subdir client + ! use symux && zap_subdir symux + build_symon || zap_subdir symon +} + +src_compile() { + MAKE=pmake MAKEOPTS= emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + CFLAGS+="${CFLAGS}" \ + RANLIB="$(tc-getRANLIB)" \ + STRIP=true || die "emake failed" +} + +src_install() { + if use perl ; then + dobin client/getsymonitem.pl || die "dobin getsymonitem.pl failed" + + perlinfo + insinto ${SITE_LIB} + doins client/SymuxClient.pm || die "doins SymuxClient.pm failed" + fi + + if build_symon ; then + insinto /etc + doins symon/symon.conf || die "doins symon.conf failed" + + newinitd "${FILESDIR}"/${PN}-init.d ${PN} || die "newinitd symon failed" + + dodoc CHANGELOG HACKERS TODO || die "dodoc failed" + + doman symon/symon.8 || die "doman symon failed" + dosbin symon/symon || die "dosbin symon failed" + + dodir /usr/share/symon + insinto /usr/share/symon + doins symon/c_config.sh || die "doins c_config.sh failed" + fperms a+x,u-w /usr/share/symon/c_config.sh + fi + + if use symux ; then + insinto /etc + doins symux/symux.conf || die "doins symux.conf failed" + + newinitd "${FILESDIR}"/symux-init.d symux || die "newinitd symux failed" + + doman symux/symux.8 || die "doman symux failed" + dosbin symux/symux || die "dosbin symux failed" + + insinto /usr/share/symon + doins symux/c_smrrds.sh || die "doins c_smrrds.sh failed" + fperms u-w,u+x /usr/share/symon/c_smrrds.sh + + dodir /var/lib/symon/rrds/localhost + fi +} + +pkg_postinst() { + use perl && perl-module_pkg_postinst + + if build_symon ; then + elog "Before running the monitor, edit /etc/symon.conf. To test your" + elog "configuration file, run symon -t." + elog "NOTE that symon won't chroot by default." + fi + + if use symux ; then + elog "Before running the data collector, edit /etc/symux.conf." + elog "To create the RRDs run /usr/share/symon/c_smrrds.sh all. Then," + elog "to test your configuration file, run symux -t." + elog "For information about migrating RRDs from a previous symux" + elog "version read the LEGACY FORMATS section of symux(8)." + elog "To view the rrdtool pictures of the stored data, emerge syweb." + fi +} |