X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=lm_sensors.spec;h=0a84d7cc6dee26926f2143e2c92c0a0cfb154ad9;hb=ddf897c8c5dcc653790eed17fd1ce0c3e88596db;hp=d5f55539ca6d30647656dac6532f58541ecab468;hpb=c1be19b149f0648ea0b13236ea54e84f70b19516;p=packages%2Flm_sensors.git diff --git a/lm_sensors.spec b/lm_sensors.spec index d5f5553..0a84d7c 100644 --- a/lm_sensors.spec +++ b/lm_sensors.spec @@ -1,13 +1,12 @@ +# TODO +# - unpackaged: +# /usr/sbin/fancontrol.pl (isn't that the same as sh fancontrol script?) +# - a big trigger warning how to use fancontrol and to init it first # -# Conditional build: -%bcond_without dist_kernel # without kernel for distributions -%bcond_without smp # don't build SMP modules -%bcond_without kernel # build kernel 2.4 modules -%bcond_without userspace # don't build userspace utilities - -%ifarch amd64 -%undefine with_kernel -%endif +%define cmodule %{_sysconfdir}/sysconfig/sensors_modules +%define cdaemon %{_sysconfdir}/sysconfig/sensors +%define smodule %{_sysconfdir}/rc.d/init.d/sensors_modules +%define sdaemon %{_sysconfdir}/rc.d/init.d/sensors %include /usr/lib/rpm/macros.perl Summary: Hardware health monitoring @@ -16,40 +15,37 @@ Summary(pt_BR): Ferramentas para monitora Summary(ru): õÔÉÌÉÔÙ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ ÁÐÐÁÒÁÔÕÒÙ Summary(uk): õÔÉ̦ÔÉ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ ÁÐÁÒÁÔÕÒÉ Name: lm_sensors -Version: 2.9.0 -%define _rel 1 -Release: %{_rel} +Version: 2.10.1 +Release: 2 License: GPL Group: Applications/System -Source0: http://secure.netroedge.com/~lm78/archive/%{name}-%{version}.tar.gz -# Source0-md5: add1f403c619e84bec2fbdfa12eda56f +Source0: http://dl.lm-sensors.org/lm-sensors/releases/%{name}-%{version}.tar.gz +# Source0-md5: cdc857b78e813b88cbf8be92441aa299 Source1: sensors.init Source2: sensors.sysconfig +Source3: fancontrol.init +Source4: fancontrol.sysconfig +Source5: sensors.sh +Source6: sensors_modules.init +Source7: sensors_modules.sysconfig Patch0: %{name}-make.patch Patch1: %{name}-ppc.patch Patch2: %{name}-iconv-in-libc.patch -Patch3: %{name}-gcc34.patch +Patch3: %{name}-sensors-detect-PATH.patch URL: http://www.lm-sensors.nu/ -BuildRequires: rpmbuild(macros) >= 1.118 -%if %{with userspace} BuildRequires: bison BuildRequires: flex >= 2.5.1 BuildRequires: perl-modules >= 5.6 BuildRequires: rpm-perlprov >= 3.0.3-16 -BuildRequires: rrdtool-devel -%endif -%if %{with kernel} && %{with dist_kernel} -BuildRequires: kernel-i2c-devel >= 2.9.0 -BuildRequires: kernel-headers >= 2.4.0 -BuildRequires: kernel-headers < 2.5.0 -%endif +BuildRequires: rpmbuild(macros) >= 1.268 +BuildRequires: rrdtool-devel >= 1.2.10 +BuildRequires: sysfsutils-devel +Requires: %{name}-libs = %{version}-%{release} Requires: dev >= 2.9.0-13 Requires: dmidecode -Obsoletes: liblm_sensors1 +Requires: %{name}-config BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _kernelsrcdir /usr/src/linux-2.4 - %description Tools for monitoring the hardware health of Linux systems containing hardware health monitoring hardware such as the LM78 and LM75. @@ -73,19 +69,18 @@ SMBus SMBus ÔÁ ÍÏΦÔÏÒÉÎÇÕ. õ÷áçá: ÄÌÑ ÃØÏÇÏ ÐÏÔÒ¦ÂÎÁ ÓÐÅæÁÌØÎÁ ЦÄÔÒÉÍËÁ, ÑËÁ צÄÓÕÔÎÑ Õ ÓÔÁÎÄÁÒÔÎÉÈ ÓÔÁÒÉÈ ÑÄÒÁÈ 2.2.XX! -%package sensord -Summary: Sensord daemon -Summary(pl): Demon sensord -Group: Daemons -PreReq: rc-scripts -Requires(post,preun): /sbin/chkconfig -Requires: %{name} = %{version}-%{release} +%package libs +Summary: lm_sensors library +Summary(pl): Biblioteka lm_sensors +Group: Libraries +Obsoletes: liblm_sensors1 +Conflicts: lm_sensors <= 2.9.2-2 -%description sensord -Sensord daemon. +%description libs +lm_sensors library. -%description sensord -l pl -Demon sensord. +%description libs -l pl +Biblioteka lm_sensors. %package devel Summary: Header files for lm_sensors @@ -94,7 +89,7 @@ Summary(pt_BR): Arquivos necess Summary(ru): æÁÊÌÙ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ lm_sensors Summary(uk): æÁÊÌÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ lm_sensors Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}-libs = %{version}-%{release} Obsoletes: liblm_sensors1-devel %description devel @@ -141,39 +136,55 @@ Bibliotecas est ðÁËÅÔ lm_sensors-static ͦÓÔÉÔØ ÓÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×. -%package -n kernel24-i2c-%{name} -Summary: Kernel modules for various buses and monitor chips -Summary(pl): Modu³y j±dra dla ró¿nego rodzaju sensorów +%package config-default +Summary: Sensors configuration files +Summary(pl): Pliki konfiguracyjne lm_sensors Group: Applications/System -Release: %{_rel}@%{_kernel_ver_str} -Requires(post,postun): /sbin/depmod -%{?with_dist_kernel:%requires_releq_kernel_up} -%{?with_dist_kernel:Requires: i2c >= 2.8.2} -Provides: %{name}-modules = %{version}-%{release} -Obsoletes: kernel-misc-lm_sensors - -%description -n kernel24-i2c-%{name} -Kernel modules for various buses and monitor chips. - -%description -n kernel24-i2c-%{name} -l pl -Modu³y j±dra dla ró¿nego rodzaju sensorów monitoruj±cych. - -%package -n kernel24-smp-i2c-%{name} -Summary: Kernel modules for various buses and monitor chips -Summary(pl): Modu³y j±dra dla ró¿nego rodzaju sensorów -Group: Applications/System -Release: %{_rel}@%{_kernel_ver_str} -Requires(post,postun): /sbin/depmod -%{?with_dist_kernel:%requires_releq_kernel_smp} -%{?with_dist_kernel:Requires: i2c >= 2.8.2} -Provides: %{name}-modules = %{version}-%{release} -Obsoletes: kernel-smp-misc-lm_sensors +Requires: %{name} = %{version}-%{release} +Provides: %{name}-config + +%description config-default +Default configuration files for lm_sensors. + +%package sensord +Summary: Sensord daemon +Summary(pl): Demon sensord +Group: Daemons +Requires(post,preun): /sbin/chkconfig +Requires: %{name} = %{version}-%{release} +Requires: %{name}-config +Requires: rc-scripts + +%description sensord +Sensord daemon. + +%description sensord -l pl +Demon sensord. + +%package fancontrol +Summary: Fancontrol daemon +Summary(pl): Demon sterowania wiatraczkami +Group: Daemons +Requires(post,preun): /sbin/chkconfig +Requires: %{name} = %{version}-%{release} +Requires: %{name}-sensord = %{version}-%{release} +Requires: rc-scripts + +%description fancontrol +Fancontrol daemon monitors current temperature of the computer and +adjusts fans speed acordingly. + +It is crucial to correctly configure this daemon (via running service +fancontrol init) and ensuring, that the temperature levels are set not +to burn the insides of the computer! -%description -n kernel24-smp-i2c-%{name} -Kernel SMP modules for various buses and monitor chips. +%description fancontrol -l pl +Demon fancontrol monitoruje obecn± temperaturê komputera i ustawia +odpowiednio prêdko¶æ wiatraków. -%description -n kernel24-smp-i2c-%{name} -l pl -Modu³y j±dra SMP dla ró¿nego rodzaju sensorów monitoruj±cych. +Kluczowym jest, aby poprawnie skonfigurowaæ tego demona (poprzez +uruchomienie service fancontrol init) oraz upewniæ siê, ¿e progi +temperatury s± ustawione poprawnie, by nie spaliæ wnêtrza komputera! %prep %setup -q @@ -183,45 +194,6 @@ Modu %patch3 -p1 %build -%if %{with kernel} && %{with smp} -# workaround to avoid unresolved dmi* symbols in i2c-piix4.o -install -d fakelinux -:> fakelinux/.config -%ifarch %{ix86} -echo 'CONFIG_X86=y' >> fakelinux/.config -%endif - -# SMP -%{__make} all-kernel-busses all-kernel-chips \ - CC="%{kgcc}" \ - OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \ - LINUX=`pwd`/fakelinux \ - LINUX_HEADERS=%{_kernelsrcdir}/include \ - I2C_HEADERS=%{_kernelsrcdir}/include \ - SMP=1 - -%{__make} install-kernel-busses install-kernel-chips \ - MODPREF=kernel-smp-modules \ - LINUX=`pwd`/fakelinux \ - LINUX_HEADERS=%{_kernelsrcdir}/include \ - I2C_HEADERS=%{_kernelsrcdir}/include \ - SMP=1 - -%{__make} clean -%endif - -%if %{with kernel} -# UP -%{__make} all-kernel-busses all-kernel-chips \ - CC="%{kgcc}" \ - OPTS="%{rpmcflags}" \ - LINUX=`pwd`/fakelinux \ - LINUX_HEADERS=%{_kernelsrcdir}/include \ - I2C_HEADERS=%{_kernelsrcdir}/include \ - SMP=0 -%endif - -%if %{with userspace} %{__make} user \ CC="%{__cc}" \ OPTS="%{rpmcflags}" \ @@ -229,29 +201,18 @@ echo 'CONFIG_X86=y' >> fakelinux/.config LINUX=/dev/null \ LINUX_HEADERS=%{_kernelsrcdir}/include \ I2C_HEADERS=/usr/include \ - PROG_EXTRA:="sensord" + PROG_EXTRA:="sensord" \ + SYSFS_SUPPORT:=1 %{__make} -C prog/eepromer \ CC="%{__cc}" \ CFLAGS="%{rpmcflags} -I../../kernel/include" -%endif %install rm -rf $RPM_BUILD_ROOT -%if %{with kernel} -%{__make} install-kernel-busses install-kernel-chips \ - DESTDIR=$RPM_BUILD_ROOT \ - MODPREF=/lib/modules/%{_kernel_ver} \ - LINUX=`pwd`/fakelinux \ - LINUX_HEADERS=%{_kernelsrcdir}/include \ - I2C_HEADERS=%{_kernelsrcdir}/include \ - SMP=0 -%endif - -%if %{with userspace} install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man8} \ - $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} + $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} %{__make} user_install \ DESTDIR=$RPM_BUILD_ROOT \ @@ -266,89 +227,133 @@ install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man8} \ install prog/eepromer/{eeprom,eepromer} $RPM_BUILD_ROOT%{_sbindir} -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sensors -install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sensors +install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/sensors +install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/sensors +install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/fancontrol +install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/fancontrol +install %{SOURCE5} $RPM_BUILD_ROOT%{_bindir} +install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/sensors_modules +install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/sensors_modules # i2c API for userspace - included in glibc-kernel-headers rm -f $RPM_BUILD_ROOT%{_includedir}/linux/i2c-dev.h -%endif - -%if %{with kernel} && %{with smp} -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/{busses,chips} -install kernel-smp-modules/kernel/drivers/i2c/busses/*.o \ - $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses -install kernel-smp-modules/kernel/drivers/i2c/chips/*.o \ - $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips -%endif %clean rm -rf $RPM_BUILD_ROOT -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post libs -p /sbin/ldconfig +%postun libs -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 in /etc/sysconfig/sensors" - echo - echo "Run \"/etc/rc.d/init.d/sensors start\" to start sensors daemon." >&2 +%post +if [ -f "%{cmodule}" ]; then + /sbin/chkconfig --add sensors_modules + %service sensors_modules restart "sensors modules" + if [ -f "%{sdaemon}" ]; then + /sbin/chkconfig --add sensors + %service sensors restart "sensors deamon" + fi fi -%preun sensord +%preun if [ "$1" = "0" ]; then - if [ -f /var/lock/subsys/sensors ]; then - /etc/rc.d/init.d/sensors stop >&2 + if [ -f "%{sdaemon}" ]; then + %service sensors stop + /sbin/chkconfig --del sensors fi - /sbin/chkconfig --del sensors + %service sensors_modules stop + /sbin/chkconfig --del sensors_modules fi -%post -n kernel24-i2c-%{name} -%depmod %{_kernel_ver} +%post config-default +if [ "$1" = 1 ]; then +cat << EOF + ********************************************************************* + * * + * NOTE: * + * You have to configure sensors to match your motherboard sensors * + * in /etc/sensors.conf and /etc/sysconfig/sensors_modules. Use * + * sensors-detect script which can help you find proper modules. * + * * + ********************************************************************* +EOF +fi +if [ -f "%{smodule}" ]; then + /sbin/chkconfig --add sensors_modules + %service sensors_modules restart "sensors modules" +fi +if [ -f "%{sdaemon}" ]; then + /sbin/chkconfig --add sensors + %service sensors restart "sensors daemon" +fi -%postun -n kernel24-i2c-%{name} -%depmod %{_kernel_ver} +%preun config-default +if [ "$1" = "0" ]; then + if [ -f "%{sdaemon}" ]; then + %service sensors stop + /sbin/chkconfig --del sensors + fi + if [ -f "%{smodule}" ]; then + %service sensors_modules stop + /sbin/chkconfig --del sensors_modules + fi +fi -%post -n kernel24-smp-i2c-%{name} -%depmod %{_kernel_ver}smp +%post sensord +if [ -f "%{cmodule}" ]; then + /sbin/chkconfig --add sensors + %service sensors restart "sensors daemon" +fi -%postun -n kernel24-smp-i2c-%{name} -%depmod %{_kernel_ver}smp +%preun sensord +if [ "$1" = "0" ]; then + %service sensors stop + /sbin/chkconfig --del sensors +fi + +%post fancontrol +if [ "$1" = 1 ]; then + echo "You have to configure fancontrol by running service fancontrol init first." +fi +/sbin/chkconfig --add fancontrol +%service fancontrol restart "fancontrol daemon" + +%preun fancontrol +if [ "$1" = "0" ]; then + %service fancontrol stop + /sbin/chkconfig --del fancontrol +fi -%if %{with userspace} %files %defattr(644,root,root,755) %doc BACKGROUND BUGS CHANGES README README.thinkpad TODO doc/{busses,chips} %doc doc/{FAQ,donations,fan-divisors,progs,temperature-sensors,*html,vid} %doc prog/{config,daemon,eepromer/README*,matorb,maxilife} +%attr(755,root,root) %{_bindir}/ddcmon %attr(755,root,root) %{_bindir}/decode-*.pl %attr(755,root,root) %{_bindir}/sensors -%attr(755,root,root) %{_sbindir}/sensors-detect +%attr(755,root,root) %{_bindir}/sensors.sh %attr(755,root,root) %{_sbindir}/eeprom* -%attr(755,root,root) %{_sbindir}/fancontrol %attr(755,root,root) %{_sbindir}/i2c* -%ifarch %{ix86} amd64 +%attr(755,root,root) %{_sbindir}/sensors-detect +%ifarch %{ix86} %{x8664} %attr(755,root,root) %{_sbindir}/isadump %attr(755,root,root) %{_sbindir}/isaset +%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/sensors_modules %{_mandir}/man8/isadump.8* %{_mandir}/man8/isaset.8* %endif -%attr(755,root,root) %{_sbindir}/pwmconfig -%attr(755,root,root) %{_libdir}/lib*.so.*.* -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/sensors.conf %{_mandir}/man1/sensors.1* %{_mandir}/man5/sensors.conf.5* %{_mandir}/man8/i2c*.8* -%{_mandir}/man8/sensors-detect.8* -%files sensord +%files config-default %defattr(644,root,root,755) -%attr(754,root,root) %{_sbindir}/sensord -%attr(754,root,root) /etc/rc.d/init.d/sensors -%config(noreplace) %verify(not size mtime md5) /etc/sysconfig/sensors -%{_mandir}/man8/sensord.8* +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sensors.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysconfig/sensors_modules + +%files libs +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/lib*.so.*.* %files devel %defattr(644,root,root,755) @@ -361,22 +366,20 @@ fi %files static %defattr(644,root,root,755) %{_libdir}/libsensors.a -%endif -%if %{with kernel} -%files -n kernel24-i2c-%{name} +%files sensord %defattr(644,root,root,755) -%dir /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/busses -/lib/modules/%{_kernel_ver}/kernel/drivers/i2c/busses/*.o* -%dir /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/chips -/lib/modules/%{_kernel_ver}/kernel/drivers/i2c/chips/*.o* +%attr(754,root,root) %{_sbindir}/sensord +%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/sensors +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysconfig/sensors +%{_mandir}/man8/sensors-detect.8* +%{_mandir}/man8/sensord.8* -%if %{with smp} -%files -n kernel24-smp-i2c-%{name} +%files fancontrol %defattr(644,root,root,755) -%dir /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses -/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses/*.o* -%dir /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips -/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips/*.o* -%endif -%endif +%attr(755,root,root) %{_sbindir}/fancontrol +%attr(755,root,root) %{_sbindir}/pwmconfig +%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/fancontrol +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysconfig/fancontrol +%{_mandir}/man8/fancontrol.8* +%{_mandir}/man8/pwmconfig.8*