# TODO
+# - PLDize/register init scripts, register/deregister with chkconfig
# - split based on provided spec.in: devel, fish, utils ?
# still not sure about how to split packages. move -libs to main
# and programs to -utils? or leave as it is? (but package init.d
# that .so needs to read ipckey inode), so one vote for discarding
# -libs?
# - additional split by requires/services (watchdog)
-# - wtf is this?
-# # bmc-config
-#>>--:> >>--:> >>--:> >>--:>
-#~ ~ Cat ate the fish!! ~ ~
-#>>--:> >>--:> >>--:> >>--:>
-#Fish Exception (gh_standard_handler dump):
-#tag :
-#throw args :
-#data : [/usr/share/fish/extensions/sensors.scm]
-#misc-error(#f %s %S (no such module (srfi srfi-13)) #f)No backtrace
-#available.
-# dig: http://www.google.com/search?q=srfi&ie=UTF-8&oe=UTF-8
Summary: GNU FreeIPMI - system management software
Summary(pl.UTF-8): GNU FreeIPMI - oprogramowanie do zarządzania systemem
Name: freeipmi
-Version: 1.0.1
+Version: 1.6.14
Release: 1
-License: GPL v2+
+License: GPL v3+
Group: Applications/System
-Source0: http://ftp.gnu.org/gnu/freeipmi/%{name}-%{version}.tar.gz
-# Source0-md5: 4af11fb5645f025ac157684e3f5db98e
-Patch0: %{name}-install.patch
+Source0: https://ftp.gnu.org/gnu/freeipmi/%{name}-%{version}.tar.gz
+# Source0-md5: 0008f582967a6a91681aa0222f71c0ab
URL: http://www.gnu.org/software/freeipmi/
-BuildRequires: autoconf >= 2.57
+BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.9
-BuildRequires: grep
-BuildRequires: guile-devel
BuildRequires: libgcrypt-devel
BuildRequires: libtool
-BuildRequires: readline-devel >= 4.0
+BuildRequires: pkgconfig
Requires: %{name}-libs = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Summary(pl.UTF-8): FreeIPMI - watchdog BMC
Group: Applications/System
Requires: %{name} = %{version}-%{release}
-Requires: logrotate
%description bmc-watchdog
Provides a watchdog daemon for OS monitoring and recovery.
Summary: IPMI node detection daemon
Summary(pl.UTF-8): Demon wykrywający węzły IPMI
Group: Applications/System
+Requires(post,preun): /sbin/ldconfig
Requires: %{name} = %{version}-%{release}
-Requires: logrotate
%description ipmidetectd
IPMI node detection daemon.
%description ipmidetectd -l pl.UTF-8
Demon wykrywający węzły IPMI.
+%package ipmiseld
+Summary: IPMI SEL syslog logging daemon
+Summary(pl.UTF-8): IPMI SEL - demon logujący do sysloga
+Group: Applications/System
+Requires(post,preun): /sbin/ldconfig
+Requires: %{name} = %{version}-%{release}
+
+%description ipmiseld
+IPMI SEL syslog logging daemon.
+
+%description ipmiseld -l pl.UTF-8
+IPMI SEL - demon logujący do sysloga.
+
%package libs
Summary: Shared libraries for FreeIPMI
Summary(pl.UTF-8): Biblioteki współdzielone FreeIPMI
Summary(pl.UTF-8): Pakiet programistyczny FreeIPMI
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
+Requires: libgcrypt-devel
%description devel
Development package for FreeIPMI. This package includes the FreeIPMI
%prep
%setup -q
-%patch0 -p1
%build
%{__libtoolize}
%{__autoconf}
%{__autoheader}
%{__automake}
-%configure
+%configure \
+ --with-systemdsystemunitdir=%{systemdunitdir}
%{__make}
rm -rf $RPM_BUILD_ROOT
%{__make} -j1 install \
- DESTDIR=$RPM_BUILD_ROOT
+ DESTDIR=$RPM_BUILD_ROOT \
+ INSTALL_DAEMON_SCRIPTS="install-init-scripts install-systemd-scripts"
install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
-mv $RPM_BUILD_ROOT/etc/init.d/* $RPM_BUILD_ROOT/etc/rc.d/init.d
+%{__mv} $RPM_BUILD_ROOT/etc/init.d/* $RPM_BUILD_ROOT/etc/rc.d/init.d
# TODO: patch Makefile.am instead
-%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/freeipmi
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%postun -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%attr(755,root,root) %{_sbindir}/bmc-info
%attr(755,root,root) %{_sbindir}/ipmi-chassis
%attr(755,root,root) %{_sbindir}/ipmi-chassis-config
+%attr(755,root,root) %{_sbindir}/ipmi-config
%attr(755,root,root) %{_sbindir}/ipmi-console
%attr(755,root,root) %{_sbindir}/ipmi-dcmi
%attr(755,root,root) %{_sbindir}/ipmi-detect
%attr(755,root,root) %{_sbindir}/ipmi-locate
%attr(755,root,root) %{_sbindir}/ipmi-oem
%attr(755,root,root) %{_sbindir}/ipmi-pef-config
+%attr(755,root,root) %{_sbindir}/ipmi-pet
%attr(755,root,root) %{_sbindir}/ipmi-ping
%attr(755,root,root) %{_sbindir}/ipmi-power
%attr(755,root,root) %{_sbindir}/ipmi-raw
%{_mandir}/man5/freeipmi.conf.5*
%{_mandir}/man5/freeipmi_interpret_sel.conf.5*
%{_mandir}/man5/freeipmi_interpret_sensor.conf.5*
+%{_mandir}/man5/ipmi-config.conf.5*
%{_mandir}/man5/ipmi_monitoring_sensors.conf.5*
%{_mandir}/man5/ipmiconsole.conf.5*
%{_mandir}/man5/ipmidetect.conf.5*
%{_mandir}/man8/bmc-info.8*
%{_mandir}/man8/ipmi-chassis-config.8*
%{_mandir}/man8/ipmi-chassis.8*
+%{_mandir}/man8/ipmi-config.8*
%{_mandir}/man8/ipmi-console.8*
%{_mandir}/man8/ipmi-dcmi.8*
%{_mandir}/man8/ipmi-detect.8*
%{_mandir}/man8/ipmi-locate.8*
%{_mandir}/man8/ipmi-oem.8*
%{_mandir}/man8/ipmi-pef-config.8*
+%{_mandir}/man8/ipmi-pet.8*
%{_mandir}/man8/ipmi-ping.8*
%{_mandir}/man8/ipmi-power.8*
%{_mandir}/man8/ipmi-raw.8*
%{_mandir}/man8/rmcpping.8*
#%dir %{_localstatedir}/cache/ipmimonitoringsdrcache
%{_infodir}/freeipmi-faq.info*
-%dir /var/log/freeipmi
%files bmc-watchdog
%defattr(644,root,root,755)
-%config(noreplace) /etc/rc.d/init.d/bmc-watchdog
-%config(noreplace) /etc/sysconfig/bmc-watchdog
-%config(noreplace) /etc/logrotate.d/bmc-watchdog
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bmc-watchdog
+%attr(754,root,root) %config(noreplace) /etc/rc.d/init.d/bmc-watchdog
+%{systemdunitdir}/bmc-watchdog.service
%attr(755,root,root) %{_sbindir}/bmc-watchdog
%{_mandir}/man8/bmc-watchdog.8*
-%dir /var/log/freeipmi
%files ipmidetectd
%defattr(644,root,root,755)
%attr(755,root,root) %{_sbindir}/ipmidetectd
%attr(754,root,root) /etc/rc.d/init.d/ipmidetectd
+%{systemdunitdir}/ipmidetectd.service
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/freeipmi/ipmidetectd.conf
%{_mandir}/man5/ipmidetectd.conf.5*
%{_mandir}/man8/ipmidetectd.8*
+%files ipmiseld
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_sbindir}/ipmiseld
+%attr(754,root,root) /etc/rc.d/init.d/ipmiseld
+%{systemdunitdir}/ipmiseld.service
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/freeipmi/ipmiseld.conf
+%{_mandir}/man5/ipmiseld.conf.5*
+%{_mandir}/man8/ipmiseld.8*
+
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libfreeipmi.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libfreeipmi.so.10
+%attr(755,root,root) %ghost %{_libdir}/libfreeipmi.so.17
%attr(755,root,root) %{_libdir}/libipmiconsole.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libipmiconsole.so.2
%attr(755,root,root) %{_libdir}/libipmidetect.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libipmidetect.so.0
%attr(755,root,root) %{_libdir}/libipmimonitoring.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libipmimonitoring.so.5
+%attr(755,root,root) %ghost %{_libdir}/libipmimonitoring.so.6
%dir /var/lib/freeipmi
/var/lib/freeipmi/ipckey
%{_libdir}/libipmimonitoring.la
%{_includedir}/freeipmi
%{_includedir}/ipmi*.h
+%{_pkgconfigdir}/libfreeipmi.pc
+%{_pkgconfigdir}/libipmiconsole.pc
+%{_pkgconfigdir}/libipmidetect.pc
+%{_pkgconfigdir}/libipmimonitoring.pc
%{_mandir}/man3/libfreeipmi.3*
%{_mandir}/man3/libipmiconsole.3*
%{_mandir}/man3/libipmidetect.3*