-# conditional build
+#
+# Conditional build:
# _without_dist_kernel without kernel for distributions
-%include /usr/lib/rpm/macros.perl
-%define _rel 0.8
+# _without_smp without build smp package
+#
+%include /usr/lib/rpm/macros.perl
Summary: Hardware health monitoring
Summary(pl): Monitor stanu sprzêtu
Summary(ru): õÔÉÌÉÔÙ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ ÁÐÐÁÒÁÔÕÒÙ
Summary(uk): õÔÉ̦ÔÉ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ ÁÐÁÒÁÔÕÒÉ
Name: lm_sensors
-Version: 2.6.4
+Version: 2.7.0
+%define _rel 1
Release: %{_rel}
License: GPL
Group: Applications/System
Source1: sensors.init
Source2: sensors.sysconfig
Patch0: %{name}-make.patch
+Patch1: %{name}-ppc.patch
URL: http://www.lm-sensors.nu/
BuildRequires: bison
BuildRequires: flex >= 2.5.1
BuildRequires: perl-modules >= 5.6
BuildRequires: rpm-perlprov >= 3.0.3-16
BuildRequires: rrdtool-devel
-%{!?_without_dist_kernel:BuildRequires: i2c-devel >= 2.6.0}
-PreReq: /sbin/chkconfig
-PreReq: /sbin/ldconfig
+%{!?_without_dist_kernel:BuildRequires: i2c-devel >= 2.7.0}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Obsoletes: liblm_sensors1
+%define _kernel24 %(echo %{_kernel_ver} | grep -q '2\.[012]\.' ; echo $?)
+
%description
Tools for monitoring the hardware health of Linux systems containing
hardware health monitoring hardware such as the LM78 and LM75.
%description -l pl
-Narzêdzie do monitorowania sprzêtu w systemach Linuksowych
+Narzêdzie do monitorowania sprzêtu w systemach linuksowych
wyposa¿onych w sprzêt monitoruj±cy, taki jak LM78 lub LM75.
%description -l pt_BR
%description -l ru
ðÁËÅÔ lm_sensors ÓÏÄÅÒÖÉÔ ÎÁÂÏÒ ÍÏÄÕÌÅÊ ÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÁ Ë
SMBus É ÍÏÎÉÔÏÒÉÎÇÁ. ÷îéíáîéå: ÄÌÑ ÜÔÏÇÏ ÎÅÏÂÈÏÄÉÍÁ ÓÐÅÃÉÁÌØÎÁÑ
-ÐÏÄÄÅÒÖËÁ, ÏÔÓÕÔÓÔ×ÕÀÝÁÑ × ÓÔÁÎÄÁÒÔÎÙÈ ÓÔÁÒÙÈ ÑÄÒÁÈ 2.2.XX !
+ÐÏÄÄÅÒÖËÁ, ÏÔÓÕÔÓÔ×ÕÀÝÁÑ × ÓÔÁÎÄÁÒÔÎÙÈ ÓÔÁÒÙÈ ÑÄÒÁÈ 2.2.XX!
%description -l uk
ðÁËÅÔ lm_sensors ͦÓÔÉÔØ ÎÁÂ¦Ò ÍÏÄÕÌ¦× ÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÕ ÄÏ
SMBus ÔÁ ÍÏΦÔÏÒÉÎÇÕ. õ÷áçá: ÄÌÑ ÃØÏÇÏ ÐÏÔÒ¦ÂÎÁ ÓÐÅæÁÌØÎÁ ЦÄÔÒÉÍËÁ,
-ÑËÁ צÄÓÕÔÎÑ Õ ÓÔÁÎÄÁÒÔÎÉÈ ÓÔÁÒÉÈ ÑÄÒÁÈ 2.2.XX !
+ÑËÁ צÄÓÕÔÎÑ Õ ÓÔÁÎÄÁÒÔÎÉÈ ÓÔÁÒÉÈ ÑÄÒÁÈ 2.2.XX!
%package sensord
Summary: Sensord daemon
Summary(pl): Demon sensord
-Group: Daemon
+Group: Daemons
+Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}
%description sensord
Summary(pl): Modu³y j±dra dla ró¿nego rodzaju sensorów
Group: Applications/System
Release: %{_rel}@%{_kernel_ver_str}
-Prereq: /sbin/depmod
+Requires(post,postun): /sbin/depmod
%{!?_without_dist_kernel:%requires_releq_kernel_up}
-%{!?_without_dist_kernel:Requires: i2c >= 2.6.0}
+%{!?_without_dist_kernel:Requires: i2c >= 2.7.0}
Provides: %{name}-modules = %{version}
Obsoletes: %{name}-modules
Summary(pl): Modu³y j±dra dla ró¿nego rodzaju sensorów
Group: Applications/System
Release: %{_rel}@%{_kernel_ver_str}
-Prereq: /sbin/depmod
+Requires(post,postun): /sbin/depmod
%{!?_without_dist_kernel:%requires_releq_kernel_smp}
-%{!?_without_dist_kernel:Requires: i2c >= 2.6.0}
+%{!?_without_dist_kernel:Requires: i2c >= 2.7.0}
Provides: %{name}-modules = %{version}
Obsoletes: %{name}-modules
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
-#up
+
+%if %{?_without_smp:0}%{!?_without_smp:1}
+
+#smp
%{__make} \
- OPTS="%{rpmcflags}" \
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \
LINUX=/dev/null \
LINUX_HEADERS=%{_kernelsrcdir}/include \
I2C_HEADERS=%{_kernelsrcdir}/include \
- SMP=0
+ SMP=1
+
%{__make} install-kernel \
- MODDIR=kernel-up-modules
+ MODDIR=kernel-smp-modules \
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags}" \
+ LINUX=/dev/null \
+ LINUX_HEADERS=%{_kernelsrcdir}/include \
+ I2C_HEADERS=%{_kernelsrcdir}/include \
+ SMP=1
%{__make} install-kernel-busses \
- MODPREF=kernel-up-modules
+ MODPREF=kernel-smp-modules
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags}" \
+ LINUX=/dev/null \
+ LINUX_HEADERS=%{_kernelsrcdir}/include \
+ I2C_HEADERS=%{_kernelsrcdir}/include \
+ SMP=1
%{__make} install-kernel-chips \
- MODPREF=kernel-up-modules
+ MODPREF=kernel-smp-modules
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags}" \
+ LINUX=/dev/null \
+ LINUX_HEADERS=%{_kernelsrcdir}/include \
+ I2C_HEADERS=%{_kernelsrcdir}/include \
+ SMP=1
%{__make} clean
-#smp
+%endif
+
+#up
%{__make} \
- OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags}" \
LINUX=/dev/null \
LINUX_HEADERS=%{_kernelsrcdir}/include \
I2C_HEADERS=%{_kernelsrcdir}/include \
PROG_EXTRA:="sensord dump" \
- SMP=1
+ SMP=0
cd prog/eepromer
%{__make}
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man8} \
- $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig},/lib/modules/%{_kernel_ver}/misc}
+ $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig},/lib/modules/%{_kernel_ver}smp/misc}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
ETCDIR=%{_sysconfdir} \
MANDIR=%{_mandir} \
PROG_EXTRA:="sensord dump" \
- MODDIR=/lib/modules/%{_kernel_ver}smp/misc \
- MODPREF=/lib/modules/%{_kernel_ver}smp
+ MODDIR=/lib/modules/%{_kernel_ver}/misc \
+ MODPREF=/lib/modules/%{_kernel_ver}
+ CC="%{kgcc}" \
+ OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \
+ LINUX=/dev/null \
+ LINUX_HEADERS=%{_kernelsrcdir}/include \
+ I2C_HEADERS=%{_kernelsrcdir}/include \
+ SMP=0
-install prog/eepromer/{eeprom,eepromer} $RPM_BUILD_ROOT%{_sbindir}
+install prog/eepromer/{eeprom,eepromer} $RPM_BUILD_ROOT%{_sbindir}
+install prog/dump/{i2c{dump,set},isadump} $RPM_BUILD_ROOT%{_sbindir}
+install prog/detect/i2cdetect $RPM_BUILD_ROOT%{_sbindir}
install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sensors
install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sensors
-install kernel-up-modules/misc/* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
+%if %{?_without_smp:0}%{!?_without_smp:1}
+install kernel-smp-modules/misc/* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-/sbin/ldconfig
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%post sensord
/sbin/chkconfig --add sensors
if [ -f /var/lock/subsys/sensors ]; then
/etc/rc.d/init.d/sensors restart >&2
else
- echo "You have to configure sensors modules."
- echo "Please edit /etc/sysconfig/sensors file according to your hardware."
+ echo "You have to configure sensors modules in /etc/sysconfig/sensors"
echo
echo "Run \"/etc/rc.d/init.d/sensors start\" to start sensors daemon." >&2
fi
-%preun
+%preun sensord
if [ "$1" = "0" ]; then
if [ -f /var/lock/subsys/sensors ]; then
/etc/rc.d/init.d/sensors stop >&2
/sbin/chkconfig --del sensors
fi
-%postun -p /sbin/ldconfig
-
-%post -n kernel-misc-%{name}
-/sbin/depmod -a
-
-%post -n kernel-smp-misc-%{name}
-/sbin/depmod -a
+%post -n kernel-misc-%{name}
+/sbin/depmod -a -F /boot/System.map-%{_kernel_ver} %{_kernel_ver}
%postun -n kernel-misc-%{name}
-/sbin/depmod -a
+/sbin/depmod -a -F /boot/System.map-%{_kernel_ver} %{_kernel_ver}
+
+%post -n kernel-smp-misc-%{name}
+/sbin/depmod -a -F /boot/System.map-%{_kernel_ver}smp %{_kernel_ver}smp
%postun -n kernel-smp-misc-%{name}
-/sbin/depmod -a
+/sbin/depmod -a -F /boot/System.map-%{_kernel_ver}smp %{_kernel_ver}smp
%files
%defattr(644,root,root,755)
%doc prog/{config,daemon,eeprom,eepromer/README*,matorb,maxilife,xeon}
%attr(755,root,root) %{_bindir}/sensors
%attr(755,root,root) %{_sbindir}/sensors-detect
+%if %{_kernel24}
+%attr(755,root,root) %{_sbindir}/dmidecode
+%endif
%attr(755,root,root) %{_sbindir}/eeprom*
+%attr(755,root,root) %{_sbindir}/i2c*
+%attr(755,root,root) %{_sbindir}/isadump
%attr(755,root,root) %{_libdir}/lib*.so.*.*
%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/sensors.conf
%{_mandir}/man1/*
%{_mandir}/man5/*
-%files sensord
+%files sensord
%defattr(644,root,root,755)
%attr(754,root,root) %{_sbindir}/sensord
%attr(754,root,root) /etc/rc.d/init.d/sensors
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/*
+%if %{?_without_smp:0}%{!?_without_smp:1}
%files -n kernel-smp-misc-%{name}
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}smp/misc/*
+%endif