]> git.pld-linux.org Git - packages/lm_sensors.git/blobdiff - lm_sensors.spec
- updated for 2.8.3 (much shorter now)
[packages/lm_sensors.git] / lm_sensors.spec
index ad419264db2f66b8fb6da75b8e74764c0b3408a2..68aafe2e4262304206e9e78b70b4d272cc29b1a2 100644 (file)
@@ -1,34 +1,90 @@
+#
+# Conditional build:
+%bcond_without dist_kernel     # without kernel for distributions
+%bcond_without smp             # don't build SMP modules
+%bcond_without kernel          # don't build kernel modules
+%bcond_without userspace       # don't build userspace utilities
+#
+%include       /usr/lib/rpm/macros.perl
 Summary:       Hardware health monitoring
 Summary(pl):   Monitor stanu sprzêtu
+Summary(pt_BR):        Ferramentas para monitoração do hardware
+Summary(ru):   õÔÉÌÉÔÙ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ ÁÐÐÁÒÁÔÕÒÙ
+Summary(uk):   õÔÉ̦ÔÉ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ ÁÐÁÒÁÔÕÒÉ
 Name:          lm_sensors
-Version:       2.3.4
-Release:       1
-Copyright:      GPL
-Group:          Utilities/System
-Group(pl):      Narzêdzia/System
-Source0:       http://www.netroedge.com/~lm78/archive/%{name}-%{version}.tar.gz
-Patch0:                lm_sensors-DESTDIR.patch
-Patch1:                lm_sensors-opts.patch
-Prereq:                /sbin/depmod
-Requires:       %{name}-modules = %{version}
+Version:       2.8.2
+%define _rel   2
+Release:       %{_rel}
+License:       GPL
+Group:         Applications/System
+Source0:       http://secure.netroedge.com/~lm78/archive/%{name}-%{version}.tar.gz
+# Source0-md5: e38406adca7db7e1e761269e4de8b248
+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: rpmbuild(macros) >= 1.118
+BuildRequires: rrdtool-devel
+%if %{with kernel} && %{with dist_kernel}
+BuildRequires: kernel-i2c-devel >= 2.8.2
+BuildRequires: kernel-headers >= 2.4.0
+BuildRequires: kernel-headers < 2.5.0
+%endif
+Requires:      dmidecode
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-
-%define        _sysconfdir     /etc
+Obsoletes:     liblm_sensors1
 
 %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 Linuxowych wyposa¿onych
-w sprzêt monitoruj±cy, taki jak LM78 and LM75.
+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
+Ferramentas para monitoração do hardware. Contém uma coleção de
+módulos para acesso genérico ao barramento SMBus e monitoração de
+hardware.
+
+%description -l ru
+ðÁËÅÔ lm_sensors ÓÏÄÅÒÖÉÔ ÎÁÂÏÒ ÍÏÄÕÌÅÊ ÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÁ Ë
+SMBus É ÍÏÎÉÔÏÒÉÎÇÁ. ÷îéíáîéå: ÄÌÑ ÜÔÏÇÏ ÎÅÏÂÈÏÄÉÍÁ ÓÐÅÃÉÁÌØÎÁÑ
+ÐÏÄÄÅÒÖËÁ, ÏÔÓÕÔÓÔ×ÕÀÝÁÑ × ÓÔÁÎÄÁÒÔÎÙÈ ÓÔÁÒÙÈ ÑÄÒÁÈ 2.2.XX!
+
+%description -l uk
+ðÁËÅÔ lm_sensors Í¦ÓÔÉÔØ ÎÁ¦ҠÍÏÄÕ̦נÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÕ ÄÏ
+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}
+
+%description sensord
+Sensord daemon.
+
+%description sensord -l pl
+Demon sensord.
 
 %package devel
-Summary:        Header files for lm_sensors
+Summary:       Header files for lm_sensors
 Summary(pl):   Pliki nag³ówkowe dla lm_sensors
-Group:          Development/Libraries
-Group(pl):      Programowanie/Biblioteki
-Requires:       %{name} = %{version}
+Summary(pt_BR):        Arquivos necessários ao desenvolvimento de programas que usem o lm_sensors
+Summary(ru):   æÁÊÌÙ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ lm_sensors
+Summary(uk):   æÁÊÌÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ lm_sensors
+Group:         Development/Libraries
+Requires:      %{name} = %{version}
+Obsoletes:     liblm_sensors1-devel
 
 %description devel
 Header files for lm_sensors.
@@ -36,93 +92,264 @@ Header files for lm_sensors.
 %description devel -l pl
 Pliki nag³ówkowe dla lm_sensors.
 
+%description devel -l pt_BR
+Arquivos necessários ao desenvolvimento de programas que usem o
+lm_sensors.
+
+%description devel -l ru
+ðÁËÅÔ lm_sensors-devel ×ËÌÀÞÁÅÔ ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ
+ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ ÄÁÎÎÙÅ ÓÅÎÓÏÒÏ×.
+
+%description devel -l uk
+ðÁËÅÔ lm_sensors-devel Í¦ÓÔÉÔØ ÈÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ
+ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×.
+
 %package static
 Summary:       Static libraries for lm_sensors
 Summary(pl):   Biblioteki statyczne dla lm_sensors
-Group:          Development/Libraries
-Group(pl):      Programowanie/Biblioteki
-Requires:       %{name}-devel = %{version}
+Summary(pt_BR):        Bibliotecas estáticas para desenvolvimento com lm_sensors
+Summary(ru):   óÔÁÔÉÞÅÓËÁÑ ÂÉÂÌÉÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ lm_sensors
+Summary(uk):   óÔÁÔÉÞÎÁ Â¦Â̦ÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ lm_sensors
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}
 
 %description static
-Statis libraries for lm_sensors.
+Static libraries for lm_sensors.
 
 %description static -l pl
 Biblioteki statyczne dla lm_sensors.
 
-%package modules
-Summary:       Kernel modules for various buses and monitor chips
+%description static -l pt_BR
+Bibliotecas estáticas para desenvolvimento com lm_sensors
+
+%description static -l ru
+ðÁËÅÔ lm_sensors-static ×ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ
+ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ ÄÁÎÎÙÅ ÓÅÎÓÏÒÏ×.
+
+%description static -l uk
+ðÁËÅÔ lm_sensors-static Í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ
+ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×.
+
+%package -n kernel-i2c-%{name}
+Summary:       Kernel modules for various buses and monitor chips
 Summary(pl):   Modu³y j±dra dla ró¿nego rodzaju sensorów
-Group:                 Utilities/System
-Group(pl):      Narzêdzia/System
+Group:         Applications/System
+Release:       %{_rel}@%{_kernel_ver_str}
+Requires(post,postun): /sbin/depmod
+%{?with_dist_kernel:%requires_releq_kernel_up}
+%{?with_dist_kernel:Requires:  kernel-i2c >= 2.8.2}
+Provides:      %{name}-modules = %{version}
+Obsoletes:     %{name}-modules
+Obsoletes:     kernel-misc-lm_sensors
 
-%description modules
+%description -n kernel-i2c-%{name}
 Kernel modules for various buses and monitor chips.
 
-%description -l pl
+%description -n kernel-i2c-%{name} -l pl
 Modu³y j±dra dla ró¿nego rodzaju sensorów monitoruj±cych.
 
+%package -n kernel-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:  kernel-smp-i2c >= 2.8.2}
+Provides:      %{name}-modules = %{version}
+Obsoletes:     %{name}-modules
+Obsoletes:     kernel-smp-misc-lm_sensors
+
+%description -n kernel-smp-i2c-%{name}
+Kernel SMP modules for various buses and monitor chips.
+
+%description -n kernel-smp-i2c-%{name} -l pl
+Modu³y j±dra SMP dla ró¿nego rodzaju sensorów monitoruj±cych.
+
 %prep
 %setup -q
 %patch0 -p1
-%patch1 -p0
+%patch1 -p1
 
 %build
-%{__make} OPTS="$RPM_OPT_FLAGS" 
+%if %{with kernel} && %{with smp}
+# SMP
+%{__make} all-kernel-busses all-kernel-chips \
+       CC="%{kgcc}" \
+       OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \
+       LINUX=/dev/null \
+       LINUX_HEADERS=%{_kernelsrcdir}/include \
+       I2C_HEADERS=%{_kernelsrcdir}/include \
+       SMP=1
+
+%{__make} install-kernel-busses install-kernel-chips \
+       MODPREF=kernel-smp-modules \
+       LINUX=/dev/null \
+       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=/dev/null \
+       LINUX_HEADERS=%{_kernelsrcdir}/include \
+       I2C_HEADERS=%{_kernelsrcdir}/include \
+       SMP=0
+%endif
+
+%if %{with userspace}
+%{__make} user \
+       CC="%{__cc}" \
+       OPTS="%{rpmcflags}" \
+       LINUX=/dev/null \
+       LINUX_HEADERS=%{_kernelsrcdir}/include \
+       I2C_HEADERS=/usr/include \
+       PROG_EXTRA:="sensord dump"
+
+%{__make} -C prog/eepromer \
+       CC="%{__cc}" \
+       CFLAGS="%{rpmcflags} -I../../kernel/include"
+%endif
 
 %install
-rm -fr $RPM_BUILD_ROOT
+rm -rf $RPM_BUILD_ROOT
 
-REL=`grep UTS_RELEASE /usr/src/linux/include/linux/version.h 2>/dev/null | cut -d\" -f2`
+%if %{with kernel}
+%{__make} install-kernel-busses install-kernel-chips \
+       DESTDIR=$RPM_BUILD_ROOT \
+       MODPREF=/lib/modules/%{_kernel_ver} \
+       LINUX=/dev/null \
+       LINUX_HEADERS=%{_kernelsrcdir}/include \
+       I2C_HEADERS=%{_kernelsrcdir}/include \
+       SMP=0
+%endif
 
-make   install \
+%if %{with userspace}
+install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man8} \
+       $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
+
+%{__make} user_install \
        DESTDIR=$RPM_BUILD_ROOT \
        PREFIX=%{_prefix} \
        ETCDIR=%{_sysconfdir} \
        MANDIR=%{_mandir} \
-       MODDIR=/lib/modules/$REL/misc
-
-strip $RPM_BUILD_ROOT%{_bindir}/*
-strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*
+       PROG_EXTRA:="sensord dump" \
+       LINUX=/dev/null \
+       LINUX_HEADERS=%{_kernelsrcdir}/include \
+       I2C_HEADERS=/usr/include
 
-gzip -9nf $RPM_BUILD_ROOT%{_mandir}/man[135]/* \
-       CHANGES README* BUGS CONTRIBUTORS TODO BACKGROUND
-gzip -9nrf doc/*
+install prog/eepromer/{eeprom,eepromer}        $RPM_BUILD_ROOT%{_sbindir}
 
-%post   -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sensors
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sensors
 
-%post modules
-/sbin/depmod -a
+# i2c API for userspace - included in glibc-kernel-headers
+rm -f $RPM_BUILD_ROOT%{_includedir}/linux/i2c-dev.h
+%endif
 
-%postun modules
-/sbin/depmod -a
+%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 -fr $RPM_BUILD_ROOT
+rm -rf $RPM_BUILD_ROOT
+
+%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 in /etc/sysconfig/sensors"
+       echo
+       echo "Run \"/etc/rc.d/init.d/sensors start\" to start sensors daemon." >&2
+fi
 
-%files 
+%preun sensord
+if [ "$1" = "0" ]; then
+       if [ -f /var/lock/subsys/sensors ]; then
+               /etc/rc.d/init.d/sensors stop >&2
+       fi
+       /sbin/chkconfig --del sensors
+fi
+
+%post  -n kernel-i2c-%{name}
+%depmod %{_kernel_ver}
+
+%postun -n kernel-i2c-%{name}
+%depmod %{_kernel_ver}
+
+%post  -n kernel-smp-i2c-%{name}
+%depmod %{_kernel_ver}smp
+
+%postun -n kernel-smp-i2c-%{name}
+%depmod %{_kernel_ver}smp
+
+%if %{with userspace}
+%files
 %defattr(644,root,root,755)
-%doc {CHANGES,README*,BUGS,CONTRIBUTORS,TODO,BACKGROUND}.gz 
-%doc doc/*.gz doc/busses doc/chips
+%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}/decode-*.pl
 %attr(755,root,root) %{_bindir}/sensors
+%attr(755,root,root) %{_sbindir}/sensors-detect
+%attr(755,root,root) %{_sbindir}/eeprom*
+%attr(755,root,root) %{_sbindir}/fancontrol
+%attr(755,root,root) %{_sbindir}/i2c*
+%attr(755,root,root) %{_sbindir}/isadump
+%attr(755,root,root) %{_sbindir}/pwmconfig
 %attr(755,root,root) %{_libdir}/lib*.so.*.*
-%config %{_sysconfdir}/sensors.conf
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/sensors.conf
 %{_mandir}/man1/*
 %{_mandir}/man5/*
 
+%files sensord
+%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/*
+
 %files devel
-%doc doc/developers doc/kernel
 %defattr(644,root,root,755)
+%doc doc/{developers,kernel}
 %attr(755,root,root) %{_libdir}/lib*.so
-%attr(755,root,root) %{_libdir}/lib*.so.0
 %{_includedir}/sensors
-%{_includedir}/linux/*
+%{_includedir}/linux/sensors.h
 %{_mandir}/man3/*
 
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libsensors.a
+%endif
+
+%if %{with kernel}
+%files -n kernel-i2c-%{name}
+%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*
 
-%files modules
+%if %{with smp}
+%files -n kernel-smp-i2c-%{name}
 %defattr(644,root,root,755)
-/lib/modules/*/misc/*
+%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
This page took 0.127036 seconds and 4 git commands to generate.