X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=lm_sensors.spec;h=68aafe2e4262304206e9e78b70b4d272cc29b1a2;hb=28361aebe6442dae0cc867c2f0fa89ef37e9024d;hp=7e647bbf64ea02d9dde83cfc65b1f19e9d19ef98;hpb=34be5856c82b6362b15aaeb0c241d2bfff6a7921;p=packages%2Flm_sensors.git diff --git a/lm_sensors.spec b/lm_sensors.spec index 7e647bb..68aafe2 100644 --- a/lm_sensors.spec +++ b/lm_sensors.spec @@ -1,20 +1,24 @@ -# conditional build -# _without_dist_kernel without kernel for distributions +# +# 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.6.5 -%define _rel 4 +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 @@ -24,14 +28,17 @@ 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 -%{!?_without_dist_kernel:BuildRequires: i2c-devel >= 2.6.0} -PreReq: /sbin/ldconfig +%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) 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. @@ -58,8 +65,9 @@ SMBus %package sensord Summary: Sensord daemon Summary(pl): Demon sensord -Group: Daemon -PreReq: /sbin/chkconfig +Group: Daemons +PreReq: rc-scripts +Requires(post,preun): /sbin/chkconfig Requires: %{name} = %{version} %description sensord @@ -122,38 +130,40 @@ Bibliotecas est ðÁËÅÔ lm_sensors-static ͦÓÔÉÔØ ÓÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×. -%package -n kernel-misc-%{name} +%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: Applications/System Release: %{_rel}@%{_kernel_ver_str} -Prereq: /sbin/depmod -%{!?_without_dist_kernel:%requires_releq_kernel_up} -%{!?_without_dist_kernel:Requires: i2c >= 2.6.0} +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 -n kernel-misc-%{name} +%description -n kernel-i2c-%{name} Kernel modules for various buses and monitor chips. -%description -n kernel-misc-%{name} -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-misc-%{name} +%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} -Prereq: /sbin/depmod -%{!?_without_dist_kernel:%requires_releq_kernel_smp} -%{!?_without_dist_kernel:Requires: i2c >= 2.6.0} +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-misc-%{name} +%description -n kernel-smp-i2c-%{name} Kernel SMP modules for various buses and monitor chips. -%description -n kernel-smp-misc-%{name} -l pl +%description -n kernel-smp-i2c-%{name} -l pl Modu³y j±dra SMP dla ró¿nego rodzaju sensorów monitoruj±cych. %prep @@ -162,65 +172,99 @@ Modu %patch1 -p1 %build -#up -%{__make} \ - CC=%{kgcc} \ - OPTS="%{rpmcflags}" \ +%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=0 + SMP=1 -%{__make} install-kernel \ - MODDIR=kernel-up-modules -%{__make} install-kernel-busses \ - MODPREF=kernel-up-modules -%{__make} install-kernel-chips \ - MODPREF=kernel-up-modules +%{__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 -#smp -%{__make} \ - CC=%{kgcc} \ - OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \ +%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 \ - PROG_EXTRA:="sensord dump" \ - SMP=1 + 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" -cd prog/eepromer -%{__make} +%{__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=/dev/null \ + 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},/lib/modules/%{_kernel_ver}/misc} + $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} -%{__make} install \ +%{__make} user_install \ DESTDIR=$RPM_BUILD_ROOT \ PREFIX=%{_prefix} \ ETCDIR=%{_sysconfdir} \ MANDIR=%{_mandir} \ PROG_EXTRA:="sensord dump" \ - MODDIR=/lib/modules/%{_kernel_ver}smp/misc \ - MODPREF=/lib/modules/%{_kernel_ver}smp + LINUX=/dev/null \ + LINUX_HEADERS=%{_kernelsrcdir}/include \ + I2C_HEADERS=/usr/include 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 +# 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 - +%post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post sensord @@ -241,31 +285,32 @@ if [ "$1" = "0" ]; then /sbin/chkconfig --del sensors fi -%post -n kernel-misc-%{name} -/sbin/depmod -a +%post -n kernel-i2c-%{name} +%depmod %{_kernel_ver} -%postun -n kernel-misc-%{name} -/sbin/depmod -a +%postun -n kernel-i2c-%{name} +%depmod %{_kernel_ver} -%post -n kernel-smp-misc-%{name} -/sbin/depmod -a +%post -n kernel-smp-i2c-%{name} +%depmod %{_kernel_ver}smp -%postun -n kernel-smp-misc-%{name} -/sbin/depmod -a +%postun -n kernel-smp-i2c-%{name} +%depmod %{_kernel_ver}smp +%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,eeprom,eepromer/README*,matorb,maxilife,xeon} +%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 -%if %{_kernel24} -%attr(755,root,root) %{_sbindir}/dmidecode -%endif %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(noreplace) %verify(not size mtime md5) %{_sysconfdir}/sensors.conf %{_mandir}/man1/* @@ -283,17 +328,28 @@ fi %doc doc/{developers,kernel} %attr(755,root,root) %{_libdir}/lib*.so %{_includedir}/sensors -%{_includedir}/linux/* +%{_includedir}/linux/sensors.h %{_mandir}/man3/* %files static %defattr(644,root,root,755) %{_libdir}/libsensors.a +%endif -%files -n kernel-misc-%{name} +%if %{with kernel} +%files -n kernel-i2c-%{name} %defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}/misc/* +%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 -n kernel-smp-misc-%{name} +%if %{with smp} +%files -n kernel-smp-i2c-%{name} %defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}smp/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