From dd668784b5f8d8b81e8150be9e65812b17133cd8 Mon Sep 17 00:00:00 2001 From: Jeroen Roovers Date: Thu, 29 Apr 2010 16:51:58 +0000 Subject: [PATCH] Do not export CFLAGS/LDFLAGS to net-snmp-config (bug #303237). Package-Manager: portage-2.2_rc67/cvs/Linux i686 --- net-analyzer/net-snmp/ChangeLog | 7 +- net-analyzer/net-snmp/Manifest | 3 +- .../net-snmp/net-snmp-5.4.2.1-r4.ebuild | 201 ++++++++++++++++++ 3 files changed, 209 insertions(+), 2 deletions(-) create mode 100644 net-analyzer/net-snmp/net-snmp-5.4.2.1-r4.ebuild diff --git a/net-analyzer/net-snmp/ChangeLog b/net-analyzer/net-snmp/ChangeLog index 82f1fd8cdbf3..b2ba435e18e7 100644 --- a/net-analyzer/net-snmp/ChangeLog +++ b/net-analyzer/net-snmp/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for net-analyzer/net-snmp # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-analyzer/net-snmp/ChangeLog,v 1.202 2010/04/16 15:58:57 lxnay Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/net-snmp/ChangeLog,v 1.203 2010/04/29 16:51:58 jer Exp $ + +*net-snmp-5.4.2.1-r4 (29 Apr 2010) + + 29 Apr 2010; Jeroen Roovers +net-snmp-5.4.2.1-r4.ebuild: + Do not export CFLAGS/LDFLAGS to net-snmp-config (bug #303237). 16 Apr 2010; Fabio Erculiani net-snmp-5.4.2.1-r2.ebuild, net-snmp-5.4.2.1-r3.ebuild: diff --git a/net-analyzer/net-snmp/Manifest b/net-analyzer/net-snmp/Manifest index 0c0c7a0e2ac5..30fe5989eb94 100644 --- a/net-analyzer/net-snmp/Manifest +++ b/net-analyzer/net-snmp/Manifest @@ -10,5 +10,6 @@ DIST net-snmp-5.4.2.1.tar.gz 5185390 RMD160 2148c42d486ed88f9cfc3ca1d50c68abcd7e EBUILD net-snmp-5.4.2.1-r1.ebuild 5441 RMD160 ae8abc07b3e42b5612d657ac9946db762337062f SHA1 0b78a0437fd2bf40f5ee2556d24c71260f77947e SHA256 9257d6068ce843604358aac868dc51c8968fb10068c836744e4c443b8cdec174 EBUILD net-snmp-5.4.2.1-r2.ebuild 5544 RMD160 6d4f5c23c247ad62992d7a43685643857ff6ce52 SHA1 394bf5204ec2375169da946bdfd472c89df3e276 SHA256 5500f7aedc4e609674322ae5f5d7e1aa3b84a377a30459fad23f2e8d228b0cd3 EBUILD net-snmp-5.4.2.1-r3.ebuild 5652 RMD160 8094ad748576087b4d61a07db058f908768679dd SHA1 0b1eb584fd13c77a1fa231d20449d6c066c55af3 SHA256 57eca9917aece56c920d1bdce18fe55f3766ece354d5ba351e00889981af97d1 -MISC ChangeLog 33878 RMD160 9fdd1ed560c89736847477c93612bee449fcbe79 SHA1 20277a387af3df33665a88db15e6c1f2d0d34dfd SHA256 c18667bfff47056cc13bd2e401fe6bdf6ae64e71beda387a333e975c54829ab7 +EBUILD net-snmp-5.4.2.1-r4.ebuild 5748 RMD160 88eecacc5b48ceb63025ef0dbb56e7e150819ad7 SHA1 475d2e1fb78f793f3e71d554a14ca9b12a63b92e SHA256 610b98dbcad1cc5ef1ed5e0040f07628a88d7d2b1effb0af091102368315b891 +MISC ChangeLog 34054 RMD160 9dbf1170b99cea5062eb3e07f5c919bea0afbe13 SHA1 a5d3d19c7aa2d3dd828ccd901d106d0ae6de6929 SHA256 18d976536c4fd8af842930df7e0151565ba3350fb8fd0a7ca1e5e1b046d2f569 MISC metadata.xml 675 RMD160 3785784fde686fec578c82814a96f295e64c800b SHA1 433d32bd2e67c60324ad401a1b3eeb6b908656d2 SHA256 ed42873349256bf59c84251b140b22c5323a2d3d359fec89217ba50f8cecd9c4 diff --git a/net-analyzer/net-snmp/net-snmp-5.4.2.1-r4.ebuild b/net-analyzer/net-snmp/net-snmp-5.4.2.1-r4.ebuild new file mode 100644 index 000000000000..190954034e30 --- /dev/null +++ b/net-analyzer/net-snmp/net-snmp-5.4.2.1-r4.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/net-snmp/net-snmp-5.4.2.1-r4.ebuild,v 1.1 2010/04/29 16:51:58 jer Exp $ + +EAPI=2 + +inherit fixheadtails flag-o-matic perl-module python autotools + +DESCRIPTION="Software for generating and retrieving SNMP data" +HOMEPAGE="http://net-snmp.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="as-is BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="bzip2 diskio doc elf extensible ipv6 kernel_linux lm_sensors mfd-rewrites minimal perl python rpm selinux sendmail smux ssl tcpd X zlib" + +COMMON="ssl? ( >=dev-libs/openssl-0.9.6d ) + tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) + rpm? ( + app-arch/rpm + dev-libs/popt + app-arch/bzip2 + >=sys-libs/zlib-1.1.4 + ) + bzip2? ( app-arch/bzip2 ) + zlib? ( >=sys-libs/zlib-1.1.4 ) + elf? ( dev-libs/elfutils ) + lm_sensors? ( + kernel_linux? ( sys-apps/lm_sensors ) + ) + python? ( dev-python/setuptools )" + +RDEPEND="${COMMON} + perl? ( + X? ( dev-perl/perl-tk ) + !minimal? ( dev-perl/TermReadKey ) + ) + selinux? ( sec-policy/selinux-snmpd )" + +# Dependency on autoconf due to bug #225893 +DEPEND="${COMMON} + >=sys-devel/autoconf-2.61-r2 + >=sys-apps/sed-4 + doc? ( app-doc/doxygen )" + +src_prepare() { + # Fix CVE-2008-6123 + epatch "${FILESDIR}"/CVE-2008-6123.patch + + # lm_sensors-3 support + if use lm_sensors ; then + epatch "${FILESDIR}"/${PN}-5.4.1-sensors3.patch \ + "${FILESDIR}"/${PN}-5.4.1-sensors3-version_detect.patch + fi + + # fix access violation in make check + sed -i -e 's/\(snmpd.*\)-Lf/\1-l/' testing/eval_tools.sh || \ + die "sed eval_tools.sh failed" + # fix path in fixproc + sed -i -e 's|\(database_file =.*\)/local\(.*\)$|\1\2|' local/fixproc || \ + die "sed fixproc failed" + + if use python ; then + python_version + PYTHON_MODNAME="netsnmp" + PYTHON_DIR="/usr/$(get_libdir)/python${PYVER}/site-packages" + sed -i -e "s:\(install --basedir=\$\$dir\):\1 --root='${D}':" Makefile.in || \ + die "sed python failed" + fi + + # snmpconf generates config files with proper selinux context + use selinux && epatch "${FILESDIR}"/${PN}-5.1.2-snmpconf-selinux.patch + + # remove CFLAGS from net-snmp-config script (bug #257622): + sed -i -e 's|@CFLAGS@||g' -e 's|@LDFLAGS@||g' \ + net-snmp-config.in || die "sedding CFLAGS/LDFLAGS failed" + + # Fix version number: + sed -i -e "s:NetSnmpVersionInfo = \".*\":NetSnmpVersionInfo = \"${PV}\":" \ + snmplib/snmp_version.c || die "sedding version failed" + + eautoreconf + + ht_fix_all +} + +src_configure() { + strip-flags + + local mibs="host ucd-snmp/dlmod" + use diskio && mibs="${mibs} ucd-snmp/diskio" + use extensible && mibs="${mibs} ucd-snmp/extensible" + use lm_sensors && mibs="${mibs} ucd-snmp/lmsensorsMib" + use sendmail && mibs="${mibs} mibII/mta_sendmail" + use smux && mibs="${mibs} smux" + + local myconf="$(use_enable ipv6) \ + $(use_enable mfd-rewrites) \ + $(use_enable perl embedded-perl) \ + $(use_enable !ssl internal-md5) \ + $(use_with elf) \ + $(use_with perl perl-modules) \ + $(use_with python python-modules) \ + $(use_with ssl openssl) \ + $(use_with tcpd libwrap)" + if use rpm ; then + myconf="${myconf} \ + --with-rpm \ + --with-bzip2 \ + --with-zlib" + else + myconf="${myconf} \ + --without-rpm \ + $(use_with bzip2) \ + $(use_with zlib)" + fi + + econf \ + --with-install-prefix="${D}" \ + --with-sys-location="Unknown" \ + --with-sys-contact="root@Unknown" \ + --with-default-snmp-version="3" \ + --with-mib-modules="${mibs}" \ + --with-logfile="/var/log/net-snmpd.log" \ + --with-persistent-directory="/var/lib/net-snmp" \ + --enable-ucd-snmp-compatibility \ + --enable-shared \ + --enable-as-needed \ + ${myconf} +} + +src_compile() { + emake -j1 || die "emake failed" + + if use doc ; then + einfo "Building HTML Documentation" + make docsdox || die "failed to build docs" + fi +} + +src_test() { + cd testing + if ! make test ; then + echo + einfo "Don't be alarmed if a few tests FAIL." + einfo "This could happen for several reasons:" + einfo " - You don't already have a working configuration." + einfo " - Your ethernet interface isn't properly configured." + echo + fi +} + +src_install () { + make DESTDIR="${D}" install || die "make install failed" + + if use perl ; then + fixlocalpod + use X || rm -f "${D}"/usr/bin/tkmib + else + rm -f "${D}"/usr/bin/mib2c "${D}"/usr/bin/snmpcheck "${D}"/usr/bin/tkmib + fi + + dodoc AGENT.txt ChangeLog FAQ INSTALL NEWS PORTING README* TODO || die + newdoc EXAMPLE.conf.def EXAMPLE.conf || die + + use doc && { dohtml docs/html/* || die ; } + + keepdir /etc/snmp /var/lib/net-snmp + + newinitd "${FILESDIR}"/snmpd.init snmpd || die + newconfd "${FILESDIR}"/snmpd.conf snmpd || die + + newinitd "${FILESDIR}"/snmptrapd.init snmptrapd || die + newconfd "${FILESDIR}"/snmptrapd.conf snmptrapd || die + + # Remove everything not required for an agent. + # Keep only the snmpd, snmptrapd, MIBs, headers and libraries. + if use minimal; then + elog "USE='minimal' is set. Removing excess/non-minimal components." + rm -rf + "${D}"/usr/bin/{encode_keychange,snmp{get,getnext,set,usm,walk,bulkwalk,table,trap,bulkget,translate,status,delta,test,df,vacm,netstat,inform,snmpcheck}} + rm -rf "${D}"/usr/share/snmp/snmpconf-data "${D}"/usr/share/snmp/*.conf + rm -rf "${D}"/usr/bin/{fixproc,traptoemail} "${D}"/usr/bin/snmpc{heck,onf} + find "${D}" -name '*.pl' -exec rm -f '{}' \; + use ipv6 || rm -rf "${D}"/usr/share/snmp/mibs/IPV6* + fi + + # bug 113788, install example config + insinto /etc/snmp + newins "${S}"/EXAMPLE.conf snmpd.conf.example || die +} + +pkg_postrm() { + use python && python_mod_cleanup +} + +pkg_postinst() { + elog "An example configuration file has been installed in" + elog "/etc/snmp/snmpd.conf.example." +} -- 2.26.2