]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blob - net-snmp/net-snmp.nm
tzdata: Update to 2014j
[people/ms/ipfire-3.x.git] / net-snmp / net-snmp.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = net-snmp
7 version = 5.7.2
8 release = 2
9
10 groups = Networking/Daemons
11 url = http://net-snmp.sourceforge.net
12 license = BSD
13 summary = Simple Network Management Protocol Daemon.
14
15 description
16 Simple Network Management Protocol (SNMP) is a widely used protocol
17 for monitoring the health and welfare of network equipment (eg. routers),
18 computer equipment and even devices like UPSs.
19 end
20
21 source_dl = https://sourceforge.net/projects/net-snmp/files/net-snmp/%{version}/
22
23 build
24 requires
25 autoconf
26 automake
27 bzip2-devel
28 chrpath
29 elfutils-devel
30 libselinux-devel
31 lm-sensors-devel >= 3
32 openssl-devel
33 perl(ExtUtils::Embed)
34 procps
35 python-setuptools
36 python-devel
37 systemd-devel
38 systemd-units
39 end
40
41 PARALLELISMFLAGS = # No parallel build
42
43 prepare_cmds
44 autoreconf -vfi
45 end
46
47 MIBS = host agentx smux \
48 ucd-snmp/diskio tcp-mib udp-mib mibII/mta_sendmail \
49 ip-mib/ipv4InterfaceTable ip-mib/ipv6InterfaceTable \
50 ip-mib/ipAddressPrefixTable/ipAddressPrefixTable \
51 ip-mib/ipDefaultRouterTable/ipDefaultRouterTable \
52 ip-mib/ipv6ScopeZoneIndexTable ip-mib/ipIfStatsTable \
53 sctp-mib rmon-mib etherlike-mib ucd-snmp/lmsensorsMib
54
55 configure_options += \
56 --with-cflags="%{CFLAGS}" \
57 --with-ldflags="%{LDFLAGS}" \
58 --with-sys-contact="root@localhost" \
59 --with-sys-location="Unknown" \
60 --with-logfile=/var/log/snmpd.log \
61 --with-persistent-directory=/var/lib/net-snmp \
62 --with-mib-modules="%{MIBS}" \
63 --sysconfdir=%{sysconfdir} \
64 --enable-ipv6 \
65 --enable-ucd-snmp-compatibility \
66 --with-openssl \
67 --with-pic \
68 --enable-embedded-perl \
69 --enable-as-needed \
70 --with-perl-modules="INSTALLDIRS=vendor" \
71 --enable-mfd-rewrites \
72 --enable-local-smux \
73 --with-temp-file-pattern=/var/run/net-snmp/snmp-tmp-XXXXXX \
74 --with-transports="DTLSUDP TLSTCP" \
75 --with-security-modules=tsm \
76 --with-systemd
77
78 build_cmds
79 # Remove rpath from compiled perl libs
80 find perl/blib -type f -name "*.so" -print -exec chrpath --delete {} \;
81
82 # Compile python module
83 pushd python
84 %{python} setup.py --basedir=".." build
85 popd
86 end
87
88 install_cmds
89 # Remove stuff we don't want to distribute.
90 rm -vf %{BUILDROOT}%{bindir}/snmpinform
91 ln -svf snmptrap %{BUILDROOT}%{bindir}/snmpinform
92 rm -vf %{BUILDROOT}%{bindir}/snmpcheck
93 rm -vf %{BUILDROOT}{%{bindir}/fixproc,%{mandir}/man1/fixproc*}
94 rm -vf %{BUILDROOT}%{bindir}/ipf-mod.pl
95
96 # Copy missing mib2c.conf files.
97 install -v -m 644 local/mib2c.*.conf %{BUILDROOT}%{datadir}/snmp
98
99 # Install python module.
100 pushd python
101 %{python} setup.py --basedir=".." install -O1 --skip-build --root %{BUILDROOT}
102 popd
103
104 # Make libs executable.
105 find %{BUILDROOT} -name "*.so" | xargs chmod -v 755
106
107 # Install configuration files.
108 mkdir -pv %{BUILDROOT}%{sysconfdir}/snmp
109 install -v -m644 %{DIR_SOURCE}/snmpd.conf \
110 %{BUILDROOT}%{sysconfdir}/snmp/snmpd.conf
111 install -v -m644 %{DIR_SOURCE}/snmptrapd.conf \
112 %{BUILDROOT}%{sysconfdir}/snmp/snmptrapd.conf
113
114 # Prepare runtime directories.
115 mkdir -pv %{BUILDROOT}%{localstatedir}/{lib,run}/net-snmp
116
117 # Remove more RPATHs.
118 find %{BUILDROOT}%{bindir} -type f -print \
119 -exec chrpath --delete {} \;
120 end
121 end
122
123 packages
124 package %{name}
125 configfiles
126 %{sysconfdir}/snmp
127 end
128
129 datafiles
130 %{localstatedir}/lib/net-snmp
131 end
132
133 script postin
134 systemctl daemon-reload >/dev/null 2>&1 || :
135 end
136
137 script preun
138 systemctl --no-reload disable snmpd.service > /dev/null 2>&1 || :
139 systemctl stop snmpd.service > /dev/null 2>&1 || :
140
141 systemctl --no-reload disable snmptrapd.service > /dev/null 2>&1 || :
142 systemctl stop snmptrapd.service > /dev/null 2>&1 || :
143 end
144
145 script postun
146 systemctl daemon-reload >/dev/null 2>&1 || :
147 end
148
149 script postup
150 systemctl daemon-reload 2>&1 || :
151 systemctl reload-or-try-restart snmpd.service >/dev/null 2>&1 || :
152 systemctl reload-or-try-restart snmptrapd.service >/dev/null 2>&1 || :
153 end
154 end
155
156 package %{name}-libs
157 template LIBS
158 end
159
160 package %{name}-python
161 template PYTHON
162 end
163
164 package %{name}-devel
165 template DEVEL
166
167 requires
168 lm-sensors-devel
169 end
170 end
171
172 package %{name}-debuginfo
173 template DEBUGINFO
174 end
175 end