Blame dist/net-snmp.spec

Packit fcad23
#
Packit fcad23
# 5.4+ enables Perl by default
Packit fcad23
#
Packit fcad23
%define netsnmp_embedded_perl 1
Packit fcad23
%define netsnmp_perl_modules 1
Packit fcad23
%define netsnmp_cflags ""
Packit fcad23
Packit fcad23
# ugly RHEL detector
Packit fcad23
# SuSE build service defines rhel_version, RHEL itself defines nothing
Packit fcad23
%if 0%{?rhel_version}
Packit fcad23
%define rhel %{?rhel_version}
Packit fcad23
%else
Packit fcad23
%define is_rhel %(grep -E "Red Hat Enterprise Linux|CentOS" /etc/redhat-release &>/dev/null && echo 1 || echo 0)
Packit fcad23
%if %{is_rhel}
Packit fcad23
%define rhel %(sed 
Packit fcad23
%endif
Packit fcad23
%endif
Packit fcad23
Packit fcad23
# because perl(Tk) is optional, automatic dependencies will never succeed:
Packit fcad23
%define _use_internal_dependency_generator 0
Packit fcad23
%define __find_requires %{_builddir}/net-snmp-%{version}/dist/find-requires
Packit fcad23
%define __find_provides /usr/lib/rpm/find-provides
Packit fcad23
Packit fcad23
#
Packit fcad23
# Check for -without embedded_perl
Packit fcad23
#
Packit fcad23
%{?_without_embedded_perl:%undefine netsnmp_embedded_perl}
Packit fcad23
#
Packit fcad23
# check for -without perl_modules
Packit fcad23
#
Packit fcad23
%{?_without_perl_modules:%undefine netsnmp_perl_modules}
Packit fcad23
#
Packit fcad23
# if embedded_perl or perl_modules specified, include some Perl stuff
Packit fcad23
#
Packit fcad23
%if 0%{?netsnmp_embedded_perl} || 0%{?netsnmp_perl_modules}
Packit fcad23
%define netsnmp_include_perl 1
Packit fcad23
%endif
Packit fcad23
Summary: Tools and servers for the SNMP protocol
Packit fcad23
Name: net-snmp
Packit fcad23
Version: 5.8
Packit fcad23
# update release for vendor release. (eg 1.fc6, 1.rh72, 1.ydl3, 1.ydl23)
Packit fcad23
Release: 1
Packit fcad23
URL: http://www.net-snmp.org/
Packit fcad23
License: BSDish
Packit fcad23
Group: System Environment/Daemons
Packit fcad23
Vendor: Net-SNMP project
Packit fcad23
Source: http://prdownloads.sourceforge.net/net-snmp/net-snmp-%{version}.tar.gz
Packit fcad23
Prereq: openssl
Packit fcad23
Obsoletes: cmu-snmp ucd-snmp ucd-snmp-utils
Packit fcad23
BuildRoot: /tmp/%{name}-root
Packit fcad23
Packager: The Net-SNMP Coders <http://sourceforge.net/projects/net-snmp/>
Packit fcad23
Requires: openssl, popt, rpm, zlib, bzip2-libs, elfutils-libelf, glibc
Packit fcad23
BuildRequires: perl, elfutils-libelf-devel, openssl-devel, bzip2-devel, rpm-devel
Packit fcad23
%if 0%{?netsnmp_embedded_perl}
Packit fcad23
BuildRequires: perl(ExtUtils::Embed)
Packit fcad23
Requires: perl
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%if 0%{?fedora}%{?rhel}
Packit fcad23
# Fedora & RHEL specific requires/provides
Packit fcad23
Provides: net-snmp-libs, net-snmp-utils
Packit fcad23
Obsoletes: net-snmp-libs, net-snmp-utils
Packit fcad23
Epoch: 2
Packit fcad23
Packit fcad23
%if 0%{?fedora} >= 9
Packit fcad23
Provides: net-snmp-gui
Packit fcad23
Obsoletes: net-snmp-gui
Packit fcad23
# newer fedoras need following macro to compile with new rpm
Packit fcad23
%define netsnmp_cflags "-D_RPM_4_4_COMPAT"
Packit fcad23
%else
Packit fcad23
BuildRequires: beecrypt-devel
Packit fcad23
%endif
Packit fcad23
%endif # RHEL or Fedora
Packit fcad23
Packit fcad23
%description
Packit fcad23
Packit fcad23
Net-SNMP provides tools and libraries relating to the Simple Network
Packit fcad23
Management Protocol including: An extensible agent, An SNMP library,
Packit fcad23
tools to request or set information from SNMP agents, tools to
Packit fcad23
generate and handle SNMP traps, etc.  Using SNMP you can check the
Packit fcad23
status of a network of computers, routers, switches, servers, ... to
Packit fcad23
evaluate the state of your network.
Packit fcad23
Packit fcad23
%if 0%{?netsnmp_embedded_perl}
Packit fcad23
This package includes embedded Perl support within the agent.
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%package devel
Packit fcad23
Group: Development/Libraries
Packit fcad23
Summary: The includes and static libraries from the Net-SNMP package.
Packit fcad23
AutoReqProv: no
Packit fcad23
Requires: net-snmp = %{epoch}:%{version}
Packit fcad23
Obsoletes: cmu-snmp-devel ucd-snmp-devel
Packit fcad23
Packit fcad23
%description devel
Packit fcad23
The net-snmp-devel package contains headers and libraries which are
Packit fcad23
useful for building SNMP applications, agents, and sub-agents.
Packit fcad23
Packit fcad23
%if 0%{?netsnmp_include_perl}
Packit fcad23
%package perlmods
Packit fcad23
Group: System Environment/Libraries
Packit fcad23
Summary: The Perl modules provided with Net-SNMP
Packit fcad23
AutoReqProv: no
Packit fcad23
Requires: net-snmp = %{epoch}:%{version}, perl
Packit fcad23
Packit fcad23
%if 0%{?fedora}%{?rhel}
Packit fcad23
Provides: net-snmp-perl
Packit fcad23
Provides: perl(SNMP) perl(NetSNMP::OID)
Packit fcad23
Provides: perl(NetSNMP::ASN)
Packit fcad23
Provides: perl(NetSNMP::AnyData::Format::SNMP) perl(NetSNMP::AnyData::Storage::SNMP)
Packit fcad23
Provides: perl(NetSNMP::agent)
Packit fcad23
Provides: perl(NetSNMP::manager) perl(NetSNMP::TrapReceiver)
Packit fcad23
Provides: perl(NetSNMP::default_store) perl(NetSNMP::agent::default_store)
Packit fcad23
Obsoletes: net-snmp-perl
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%description perlmods
Packit fcad23
Net-SNMP provides a number of Perl modules useful when using the SNMP
Packit fcad23
protocol.  Both client and agent support modules are provided.
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%prep
Packit fcad23
%if 0%{?netsnmp_embedded_perl} != 0 && 0%{?netsnmp_perl_modules} == 0
Packit fcad23
echo "'-with embedded_perl' requires '-with perl_modules'"
Packit fcad23
exit 1
Packit fcad23
%endif
Packit fcad23
%setup -q
Packit fcad23
Packit fcad23
%build
Packit fcad23
%configure --with-defaults --with-sys-contact="Unknown" \
Packit fcad23
	--with-mib-modules="smux" \
Packit fcad23
	--with-sysconfdir="/etc/net-snmp"               \
Packit fcad23
	--enable-shared \
Packit fcad23
	%{?netsnmp_perl_modules: --with-perl-modules="INSTALLDIRS=vendor"} \
Packit fcad23
	%{!?netsnmp_perl_modules: --without-perl-modules} \
Packit fcad23
	%{?netsnmp_embedded_perl: --enable-embedded-perl} \
Packit fcad23
	%{!?netsnmp_embedded_perl: --disable-embedded-perl} \
Packit fcad23
	--with-cflags="$RPM_OPT_FLAGS %{netsnmp_cflags}"
Packit fcad23
Packit fcad23
make
Packit fcad23
Packit fcad23
%install
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# 'install' sets the current directory to _topdir/BUILD/{name}-{version}
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
rm -rf $RPM_BUILD_ROOT
Packit fcad23
Packit fcad23
make DESTDIR=%{buildroot} install
Packit fcad23
Packit fcad23
# Remove 'snmpinform' from the temporary directory because it is a
Packit fcad23
# symbolic link, which cannot be handled by the rpm installation process.
Packit fcad23
%__rm -f $RPM_BUILD_ROOT%{_prefix}/bin/snmpinform
Packit fcad23
# install the init script
Packit fcad23
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
Packit fcad23
perl -i -p -e 's@/usr/local/share/snmp/@/etc/snmp/@g;s@usr/local@%{_prefix}@g' dist/snmpd-init.d
Packit fcad23
install -m 755 dist/snmpd-init.d $RPM_BUILD_ROOT/etc/rc.d/init.d/snmpd
Packit fcad23
Packit fcad23
%if 0%{?netsnmp_include_perl}
Packit fcad23
# unneeded Perl stuff
Packit fcad23
find $RPM_BUILD_ROOT/%{_libdir}/perl5/ -name Bundle -type d | xargs rm -rf
Packit fcad23
find $RPM_BUILD_ROOT/%{_libdir}/perl5/ -name perllocal.pod | xargs rm -f
Packit fcad23
Packit fcad23
# store a copy of installed Perl stuff.  It's too complex to predict
Packit fcad23
(xxdir=`pwd` && cd $RPM_BUILD_ROOT && find usr/lib*/perl5 -type f | sed 's/^/\//' > $xxdir/net-snmp-perl-files)
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%post
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# The 'post' script is executed just after the package is installed.
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# Create the symbolic link 'snmpinform' after all other files have
Packit fcad23
# been installed.
Packit fcad23
%__rm -f $RPM_INSTALL_PREFIX/bin/snmpinform
Packit fcad23
%__ln_s $RPM_INSTALL_PREFIX/bin/snmptrap $RPM_INSTALL_PREFIX/bin/snmpinform
Packit fcad23
Packit fcad23
# run ldconfig
Packit fcad23
PATH="$PATH:/sbin" ldconfig -n $RPM_INSTALL_PREFIX/lib
Packit fcad23
Packit fcad23
%preun
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# The 'preun' script is executed just before the package is erased.
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# Remove the symbolic link 'snmpinform' before anything else, in case
Packit fcad23
# it is in a directory that rpm wants to remove (at present, it isn't).
Packit fcad23
%__rm -f $RPM_INSTALL_PREFIX/bin/snmpinform
Packit fcad23
Packit fcad23
%postun
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
# The 'postun' script is executed just after the package is erased.
Packit fcad23
# ----------------------------------------------------------------------
Packit fcad23
PATH="$PATH:/sbin" ldconfig -n $RPM_INSTALL_PREFIX/lib
Packit fcad23
Packit fcad23
%clean
Packit fcad23
rm -rf $RPM_BUILD_ROOT
Packit fcad23
Packit fcad23
%files
Packit fcad23
%defattr(-,root,root)
Packit fcad23
Packit fcad23
# Install the following documentation in _defaultdocdir/{name}-{version}/
Packit fcad23
%doc AGENT.txt ChangeLog CodingStyle COPYING
Packit fcad23
%doc EXAMPLE.conf.def FAQ INSTALL NEWS PORTING TODO
Packit fcad23
%doc README README.agentx README.hpux11 README.krb5
Packit fcad23
%doc README.snmpv3 README.solaris README.thread README.win32
Packit fcad23
%doc README.aix README.osX README.tru64 README.irix README.agent-mibs
Packit fcad23
%doc README.Panasonic_AM3X.txt
Packit fcad23
	 
Packit fcad23
#%config(noreplace) /etc/net-snmp/snmpd.conf
Packit fcad23
	 
Packit fcad23
#%{_datadir}/snmp/snmpconf-data
Packit fcad23
%{_datadir}/snmp
Packit fcad23
Packit fcad23
%{_bindir}
Packit fcad23
%{_sbindir}
Packit fcad23
%{_mandir}/man1/*
Packit fcad23
# don't include Perl man pages, which start with caps
Packit fcad23
%{_mandir}/man3/[^A-Z]*
Packit fcad23
%{_mandir}/man5/*
Packit fcad23
%{_mandir}/man8/*
Packit fcad23
%{_libdir}/*.so*
Packit fcad23
/etc/rc.d/init.d/snmpd
Packit fcad23
Packit fcad23
%files devel
Packit fcad23
%defattr(-,root,root)
Packit fcad23
Packit fcad23
%{_includedir}
Packit fcad23
%{_libdir}/*.a
Packit fcad23
%{_libdir}/*.la
Packit fcad23
Packit fcad23
%if 0%{?netsnmp_include_perl}
Packit fcad23
%files -f net-snmp-perl-files perlmods
Packit fcad23
%defattr(-,root,root)
Packit fcad23
%{_mandir}/man3/*::*
Packit fcad23
%{_mandir}/man3/SNMP*
Packit fcad23
%endif
Packit fcad23
Packit fcad23
%verifyscript
Packit fcad23
echo "No additional verification is done for net-snmp"
Packit fcad23
Packit fcad23
%changelog
Packit fcad23
* Sat Dec 15 2012 Magnus Fromreide <magfr@lysator.liu.se>
Packit fcad23
- Make he -without options to rpmbuild work
Packit fcad23
Packit fcad23
* Thu Jul 26 2012 Dave Shield <D.T.Shield@liverpool.ac.uk>
Packit fcad23
- Additional "Provides:" to complete the list of perl modules
Packit fcad23
  Triggered by Bug ID #3540621
Packit fcad23
Packit fcad23
* Thu Oct  7 2010 Peter Green <peter.green@az-tek.co.uk>
Packit fcad23
- Modified RHEL detection to include CentOS.
Packit fcad23
- Added extra "Provides:" to the perlmods package definition;
Packit fcad23
  otherwise subsequent package installations that require certain
Packit fcad23
  Perl modules try to re-install RHEL/CentOS stock net-snmp
Packit fcad23
Packit fcad23
* Tue May  6 2008 Jan Safranek <jsafranek@users.sf.net>
Packit fcad23
- remove %{libcurrent}
Packit fcad23
- add openssl-devel to build requirements
Packit fcad23
- don't use Provides: unless necessary, let rpmbuild compute the provided 
Packit fcad23
  libraries
Packit fcad23
Packit fcad23
* Tue Jun 19 2007 Thomas Anders <tanders@users.sf.net>
Packit fcad23
- add "BuildRequires: perl-ExtUtils-Embed", e.g. for Fedora 7
Packit fcad23
Packit fcad23
* Wed Nov 23 2006 Thomas Anders <tanders@users.sf.net>
Packit fcad23
- fixes for 5.4 and 64-bit platforms
Packit fcad23
- enable Perl by default, but allow for --without perl_modules|embedded_perl
Packit fcad23
- add netsnmp_ prefix for local defines
Packit fcad23
Packit fcad23
* Fri Sep  1 2006 Thomas Anders <tanders@users.sf.net>
Packit fcad23
- Update to 5.4.dev
Packit fcad23
- introduce %{libcurrent}
Packit fcad23
- use new disman/event name
Packit fcad23
- add: README.aix README.osX README.tru64 README.irix README.agent-mibs
Packit fcad23
  README.Panasonic_AM3X.txt
Packit fcad23
- add new NetSNMP::agent::Support
Packit fcad23
Packit fcad23
* Fri Jan 13 2006 hardaker <hardaker@users.sf.net>
Packit fcad23
- Update to 5.3.0.1
Packit fcad23
Packit fcad23
* Wed Dec 28 2005 hardaker <hardaker@users.sf.net>
Packit fcad23
- Update to 5.3
Packit fcad23
Packit fcad23
* Tue Oct 28 2003 rs <rstory@users.sourceforge.net>
Packit fcad23
- fix conditional perl build after reading rpm docs
Packit fcad23
Packit fcad23
* Sat Oct  4 2003 rs <rstory@users.sourceforge.net> - 5.0.9-4
Packit fcad23
- fix to build without requiring arguments
Packit fcad23
- separate embedded perl and perl modules options
Packit fcad23
- fix fix for init.d script for non-/usr/local installation
Packit fcad23
Packit fcad23
* Fri Sep 26 2003 Wes Hardaker <hardaker@users.sourceforge.net>
Packit fcad23
- fix perl's UseNumeric
Packit fcad23
- fix init.d script for non-/usr/local installation
Packit fcad23
Packit fcad23
* Fri Sep 12 2003 Wes Hardaker <hardaker@users.sourceforge.net>
Packit fcad23
- fixes for 5.0.9's perl support
Packit fcad23
Packit fcad23
* Mon Sep 01 2003 Wes Hardaker <hardaker@users.sourceforge.net>
Packit fcad23
- added perl support
Packit fcad23
Packit fcad23
* Wed Oct 09 2002 Wes Hardaker <hardaker@users.sourceforge.net>
Packit fcad23
- Incorperated most of Mark Harig's better version of the rpm spec and Makefile
Packit fcad23
Packit fcad23
* Wed Oct 09 2002 Wes Hardaker <hardaker@users.sourceforge.net>
Packit fcad23
- Made it possibly almost usable.
Packit fcad23
Packit fcad23
* Mon Apr 22 2002 Robert Story <rstory@users.sourceforge.net>
Packit fcad23
- created