[ipmiutil] update to upstream ipmiutil-2.8.2, includes bug fixes for 789702, 804723
arcress
arcress at fedoraproject.org
Tue Mar 20 21:30:53 UTC 2012
commit b9803768a15197601af1f860dd264aed755e7ca2
Author: Andy Cress <arcress at users.sourceforge.net>
Date: Tue Mar 20 17:28:42 2012 -0400
update to upstream ipmiutil-2.8.2, includes bug fixes for 789702, 804723
.gitignore | 1 +
fix-checksel-without-ipmi.patch | 135 ----------------------------------
ipmiutil.spec | 152 ++++++++++++++++++++++++++-------------
isensor-negative-margin.patch | 12 ---
sources | 2 +-
5 files changed, 104 insertions(+), 198 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 086f6a0..e94bc9f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ ipmiutil-2.6.8.tar.gz
/ipmiutil-2.7.7.tar.gz
/ipmiutil-2.7.8.tar.gz
/ipmiutil-2.7.9.tar.gz
+/ipmiutil-2.8.2.tar.gz
diff --git a/ipmiutil.spec b/ipmiutil.spec
index ca47d5a..dda084d 100644
--- a/ipmiutil.spec
+++ b/ipmiutil.spec
@@ -1,16 +1,19 @@
Name: ipmiutil
-Version: 2.7.9
-Release: 4%{?dist}
-Summary: A package that provides easy-to-use IPMI server management utilities
+Version: 2.8.2
+Release: 1%{?dist}
+Summary: Easy-to-use IPMI server management utilities
License: BSD
Group: System/Management
Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
URL: http://ipmiutil.sourceforge.net
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
-BuildRequires: openssl-devel gcc gcc-c++
-Patch0: isensor-negative-margin.patch
-Patch1: fix-checksel-without-ipmi.patch
+BuildRequires: openssl-devel gcc gcc-c++ libtool
+%if 0%{?fedora} >= 15
+Requires: systemd-units
+%endif
# Suggests: cron or vixie-cron or cronie or similar
+%define systemd_fls %{_datadir}/%{name}
+%define init_dir %{_initrddir}
%description
The ipmiutil package provides easy-to-use utilities to view the SEL,
@@ -24,10 +27,17 @@ An IPMI driver can be provided by either the OpenIPMI driver (/dev/ipmi0)
or the Intel IPMI driver (/dev/imb), etc. If used locally and no driver is
detected, ipmiutil will use user-space direct I/Os instead.
+%package devel
+Group: Development/Libraries
+Summary: The includes and static libraries from the ipmiutil package
+Requires: ipmiutil
+
+%description devel
+The ipmiutil-devel package contains headers and libraries which are
+useful for building custom IPMI applications.
+
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
%build
%configure
@@ -37,13 +47,16 @@ make
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
+%clean
+rm -rf %{buildroot}
+
%files
%defattr(-, root, root, -)
%dir %{_datadir}/%{name}
%dir %{_var}/lib/%{name}
-%{_sbindir}/ipmiutil
-%{_sbindir}/idiscover
-%{_sbindir}/ievents
+%{_bindir}/ipmiutil
+%{_bindir}/idiscover
+%{_bindir}/ievents
%{_sbindir}/ipmi_port
%{_sbindir}/ialarms
%{_sbindir}/iconfig
@@ -62,15 +75,15 @@ make install DESTDIR=%{buildroot}
%{_sbindir}/ifirewall
%{_sbindir}/ifwum
%{_sbindir}/ihpm
-%{_initrddir}/ipmiutil_wdt
-%{_initrddir}/ipmiutil_asy
-%{_initrddir}/ipmiutil_evt
-%{_initrddir}/ipmi_port
+%{_datadir}/%{name}/ipmiutil_evt
+%{_datadir}/%{name}/ipmiutil_asy
+%{_datadir}/%{name}/ipmiutil_wdt
+%{_datadir}/%{name}/ipmi_port
%{_datadir}/%{name}/checksel
-%{_datadir}/%{name}/ipmiutil_evt.service
-%{_datadir}/%{name}/ipmiutil_asy.service
-%{_datadir}/%{name}/ipmiutil_wdt.service
-%{_datadir}/%{name}/ipmi_port.service
+%{systemd_fls}/ipmiutil_evt.service
+%{systemd_fls}/ipmiutil_asy.service
+%{systemd_fls}/ipmiutil_wdt.service
+%{systemd_fls}/ipmi_port.service
%{_datadir}/%{name}/ipmiutil.env
%{_datadir}/%{name}/ipmiutil.pre
%{_datadir}/%{name}/ipmiutil.setup
@@ -101,11 +114,22 @@ make install DESTDIR=%{buildroot}
%{_mandir}/man8/isunoem.8*
%{_mandir}/man8/idelloem.8*
%{_mandir}/man8/iekanalyzer.8*
+%{_mandir}/man8/itsol.8*
+%{_mandir}/man8/idcmi.8*
%doc AUTHORS ChangeLog COPYING NEWS README TODO
%doc doc/UserGuide
-%clean
-rm -rf %{buildroot}
+%files devel
+%defattr(-,root,root)
+%{_datadir}/%{name}/ipmicmd.h
+%{_datadir}/%{name}/ipmi_sample.c
+%{_datadir}/%{name}/Makefile
+%{_libdir}/libipmiutil.a
+
+%post devel
+/sbin/ldconfig
+
+%pre
%post
# POST_INSTALL, $1 = 1 if rpm -i, $1 = 2 if rpm -U
@@ -114,20 +138,25 @@ if [ "$1" = "1" ]
then
# doing rpm -i, first time
vardir=%{_var}/lib/%{name}
- init_dir=%{_datadir}/%{name}
+ scr_dir=%{_datadir}/%{name}
if [ -x /bin/systemctl ]; then
systemd_dir=%{_unitdir}
- echo "IINITDIR=%{_initrddir}" >>%{_datadir}/%{name}/ipmiutil.env
- # cp -f ${init_dir}/ipmiutil_evt.service ${systemd_dir}
- # cp -f ${init_dir}/ipmiutil_asy.service ${systemd_dir}
- # cp -f ${init_dir}/ipmiutil_wdt.service ${systemd_dir}
- # cp -f ${init_dir}/ipmi_port.service ${systemd_dir}
- # systemctl enable ipmi_port.service
+ echo "IINITDIR=%{init_dir}" >>%{_datadir}/%{name}/ipmiutil.env
+ cp -f ${scr_dir}/ipmiutil_evt.service ${systemd_dir}
+ cp -f ${scr_dir}/ipmiutil_asy.service ${systemd_dir}
+ cp -f ${scr_dir}/ipmiutil_wdt.service ${systemd_dir}
+ cp -f ${scr_dir}/ipmi_port.service ${systemd_dir}
+ # systemctl enable ipmi_port.service >/dev/null 2>&1 || :
+ else
+ cp -f ${scr_dir}/ipmiutil_wdt %{init_dir}
+ cp -f ${scr_dir}/ipmiutil_asy %{init_dir}
+ cp -f ${scr_dir}/ipmiutil_evt %{init_dir}
+ cp -f ${scr_dir}/ipmi_port %{init_dir}
fi
# Run some ipmiutil command to see if any IPMI interface works.
- %{_sbindir}/ipmiutil sel -v >/dev/null 2>&1
+ %{_bindir}/ipmiutil sel -v >/dev/null 2>&1
IPMIret=$?
# If IPMIret==0, the IPMI cmd was successful, and IPMI is enabled locally.
@@ -138,7 +167,9 @@ then
fi
# IPMI_IS_ENABLED, so enable services, but only if Red Hat
if [ -f /etc/redhat-release ]; then
- if [ -x /sbin/chkconfig ]; then
+ if [ -x /bin/systemctl ]; then
+ touch ${scr_dir}/ipmi_port.service
+ elif [ -x /sbin/chkconfig ]; then
/sbin/chkconfig --add ipmi_port
/sbin/chkconfig --add ipmiutil_wdt
/sbin/chkconfig --add ipmiutil_asy
@@ -149,7 +180,7 @@ then
# Capture a snapshot of IPMI sensor data once now for later reuse.
sensorout=$vardir/sensor_out.txt
if [ ! -f $sensorout ]; then
- %{_sbindir}/ipmiutil sensor -q >$sensorout
+ %{_bindir}/ipmiutil sensor -q >$sensorout
fi
fi
fi
@@ -158,42 +189,63 @@ fi
# before uninstall, $1 = 1 if rpm -U, $1 = 0 if rpm -e
if [ "$1" = "0" ]
then
- if [ -x /sbin/service ]; then
- /sbin/service ipmi_port stop >/dev/null 2>&1
- /sbin/service ipmiutil_wdt stop >/dev/null 2>&1
- /sbin/service ipmiutil_asy stop >/dev/null 2>&1
- /sbin/service ipmiutil_evt stop >/dev/null 2>&1
- fi
- if [ -x /sbin/chkconfig ]; then
- /sbin/chkconfig --del ipmi_port >/dev/null 2>&1
- /sbin/chkconfig --del ipmiutil_wdt >/dev/null 2>&1
- /sbin/chkconfig --del ipmiutil_asy >/dev/null 2>&1
- /sbin/chkconfig --del ipmiutil_evt >/dev/null 2>&1
- fi
if [ -x /bin/systemctl ]; then
systemd_dir=%{_unitdir}
if [ -f ${systemd_dir}/ipmiutil_evt.service ]; then
- # systemctl disable ipmiutil_evt.service
- systemctl stop ipmiutil_evt.service
- systemctl stop ipmiutil_asy.service
- systemctl stop ipmiutil_wdt.service
- systemctl stop ipmi_port.service
+ systemctl disable ipmi_port.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_evt.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_asy.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_wdt.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_evt.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_asy.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_wdt.service >/dev/null 2>&1 || :
+ systemctl stop ipmi_port.service >/dev/null 2>&1 || :
rm -f ${systemd_dir}/ipmiutil_evt.service
rm -f ${systemd_dir}/ipmiutil_asy.service
rm -f ${systemd_dir}/ipmiutil_wdt.service
rm -f ${systemd_dir}/ipmi_port.service
fi
- if [ -f %{_sysconfdir}/cron.daily/checksel ]; then
- rm -f %{_sysconfdir}/cron.daily/checksel
+ else
+ if [ -x /sbin/service ]; then
+ /sbin/service ipmi_port stop >/dev/null 2>&1
+ /sbin/service ipmiutil_wdt stop >/dev/null 2>&1
+ /sbin/service ipmiutil_asy stop >/dev/null 2>&1
+ /sbin/service ipmiutil_evt stop >/dev/null 2>&1
+ fi
+ if [ -x /sbin/chkconfig ]; then
+ /sbin/chkconfig --del ipmi_port >/dev/null 2>&1
+ /sbin/chkconfig --del ipmiutil_wdt >/dev/null 2>&1
+ /sbin/chkconfig --del ipmiutil_asy >/dev/null 2>&1
+ /sbin/chkconfig --del ipmiutil_evt >/dev/null 2>&1
fi
+ rm -f %{init_dir}/ipmiutil_wdt 2>/dev/null
+ rm -f %{init_dir}/ipmiutil_asy 2>/dev/null
+ rm -f %{init_dir}/ipmiutil_evt 2>/dev/null
+ rm -f %{init_dir}/ipmi_port 2>/dev/null
+ fi
+ if [ -f %{_sysconfdir}/cron.daily/checksel ]; then
+ rm -f %{_sysconfdir}/cron.daily/checksel
fi
fi
+%postun
+if [ -x /bin/systemctl ]; then
+ systemctl daemon-reload || :
+ if [ $1 -ge 1 ] ; then
+ # Package upgrade, not uninstall
+ systemctl try-restart ipmi_port.service || :
+ fi
+fi
%changelog
+* Thu Mar 08 2012 Andrew Cress <arcress at users.sourceforge.net> 2.8.2-1
+- reworked systemd logic/macros, moved ipmiutil from sbindir to bindir,
+ added devel package files
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.7.9-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+* Fri Nov 11 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.9-3
+ fix RH bug #752319 to not copy checksel to cron.daily if IPMI not enabled
* Tue Sep 13 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.8-1
added systemd scripts, added idelloem.8
* Mon Jun 06 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.7-1
diff --git a/sources b/sources
index f5f7e3f..ef96e1d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-3e6bc1effe4aaeeb614de19538c343ec ipmiutil-2.7.9.tar.gz
+fc8e5070b1fddca06c9e66d00da71934 ipmiutil-2.8.2.tar.gz
More information about the scm-commits
mailing list