]> git.pld-linux.org Git - packages/lm_sensors.git/blob - lm_sensors.spec
- rel 4
[packages/lm_sensors.git] / lm_sensors.spec
1 #
2 # Conditional build:
3 %bcond_without  dist_kernel     # without kernel for distributions
4 %bcond_without  smp             # don't build SMP modules
5 %bcond_without  kernel          # build kernel 2.4 modules
6 %bcond_without  userspace       # don't build userspace utilities
7
8 %ifarch %{x8664}
9 %undefine with_kernel
10 %endif
11
12 %include        /usr/lib/rpm/macros.perl
13 Summary:        Hardware health monitoring
14 Summary(pl):    Monitor stanu sprzêtu
15 Summary(pt_BR): Ferramentas para monitoração do hardware
16 Summary(ru):    õÔÉÌÉÔÙ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ ÁÐÐÁÒÁÔÕÒÙ
17 Summary(uk):    õÔÉ̦ÔÉ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ ÁÐÁÒÁÔÕÒÉ
18 Name:           lm_sensors
19 Version:        2.9.1
20 %define _rel    4
21 Release:        %{_rel}
22 License:        GPL
23 Group:          Applications/System
24 Source0:        http://secure.netroedge.com/~lm78/archive/%{name}-%{version}.tar.gz
25 # Source0-md5:  f5af615e39441d95471bdb72a3f01709
26 Source1:        sensors.init
27 Source2:        sensors.sysconfig
28 Patch0:         %{name}-make.patch
29 Patch1:         %{name}-ppc.patch
30 Patch2:         %{name}-iconv-in-libc.patch
31 Patch3:         %{name}-sensors-detect-PATH.patch
32 Patch4:         %{name}-ipmi.patch
33 Patch5:         %{name}-CAN-2005-2672.patch
34 URL:            http://www.lm-sensors.nu/
35 BuildRequires:  rpmbuild(macros) >= 1.213
36 %if %{with userspace}
37 BuildRequires:  bison
38 BuildRequires:  flex >= 2.5.1
39 BuildRequires:  perl-modules >= 5.6
40 BuildRequires:  rpm-perlprov >= 3.0.3-16
41 BuildRequires:  rrdtool-devel
42 %endif
43 %if %{with kernel} && %{with dist_kernel}
44 BuildRequires:  kernel24-i2c-devel >= 2.9.0
45 BuildRequires:  kernel24-headers >= 2.4.0
46 BuildRequires:  kernel24-headers < 2.5.0
47 %endif
48 Requires:       dev >= 2.9.0-13
49 Requires:       dmidecode
50 Obsoletes:      liblm_sensors1
51 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52
53 %define         _kernelsrcdir           /usr/src/linux-2.4
54
55 %description
56 Tools for monitoring the hardware health of Linux systems containing
57 hardware health monitoring hardware such as the LM78 and LM75.
58
59 %description -l pl
60 Narzêdzie do monitorowania sprzêtu w systemach linuksowych
61 wyposa¿onych w sprzêt monitoruj±cy, taki jak LM78 lub LM75.
62
63 %description -l pt_BR
64 Ferramentas para monitoração do hardware. Contém uma coleção de
65 módulos para acesso genérico ao barramento SMBus e monitoração de
66 hardware.
67
68 %description -l ru
69 ðÁËÅÔ lm_sensors ÓÏÄÅÒÖÉÔ ÎÁÂÏÒ ÍÏÄÕÌÅÊ ÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÁ Ë
70 SMBus É ÍÏÎÉÔÏÒÉÎÇÁ. ÷îéíáîéå: ÄÌÑ ÜÔÏÇÏ ÎÅÏÂÈÏÄÉÍÁ ÓÐÅÃÉÁÌØÎÁÑ
71 ÐÏÄÄÅÒÖËÁ, ÏÔÓÕÔÓÔ×ÕÀÝÁÑ × ÓÔÁÎÄÁÒÔÎÙÈ ÓÔÁÒÙÈ ÑÄÒÁÈ 2.2.XX!
72
73 %description -l uk
74 ðÁËÅÔ lm_sensors Í¦ÓÔÉÔØ ÎÁ¦ҠÍÏÄÕ̦נÄÌÑ ÓÔÁÎÄÁÒÔÎÏÇÏ ÄÏÓÔÕÐÕ ÄÏ
75 SMBus ÔÁ ÍÏΦÔÏÒÉÎÇÕ. õ÷áçá: ÄÌÑ ÃØÏÇÏ ÐÏÔÒ¦ÂÎÁ ÓÐÅæÁÌØÎÁ Ð¦ÄÔÒÉÍËÁ,
76 ÑËÁ ×¦ÄÓÕÔÎÑ Õ ÓÔÁÎÄÁÒÔÎÉÈ ÓÔÁÒÉÈ ÑÄÒÁÈ 2.2.XX!
77
78 %package sensord
79 Summary:        Sensord daemon
80 Summary(pl):    Demon sensord
81 Group:          Daemons
82 PreReq:         rc-scripts
83 Requires(post,preun):   /sbin/chkconfig
84 Requires:       %{name} = %{version}-%{release}
85
86 %description sensord
87 Sensord daemon.
88
89 %description sensord -l pl
90 Demon sensord.
91
92 %package devel
93 Summary:        Header files for lm_sensors
94 Summary(pl):    Pliki nag³ówkowe dla lm_sensors
95 Summary(pt_BR): Arquivos necessários ao desenvolvimento de programas que usem o lm_sensors
96 Summary(ru):    æÁÊÌÙ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ lm_sensors
97 Summary(uk):    æÁÊÌÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ lm_sensors
98 Group:          Development/Libraries
99 Requires:       %{name} = %{version}-%{release}
100 Obsoletes:      liblm_sensors1-devel
101
102 %description devel
103 Header files for lm_sensors.
104
105 %description devel -l pl
106 Pliki nag³ówkowe dla lm_sensors.
107
108 %description devel -l pt_BR
109 Arquivos necessários ao desenvolvimento de programas que usem o
110 lm_sensors.
111
112 %description devel -l ru
113 ðÁËÅÔ lm_sensors-devel ×ËÌÀÞÁÅÔ ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ
114 ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ ÄÁÎÎÙÅ ÓÅÎÓÏÒÏ×.
115
116 %description devel -l uk
117 ðÁËÅÔ lm_sensors-devel Í¦ÓÔÉÔØ ÈÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ
118 ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×.
119
120 %package static
121 Summary:        Static libraries for lm_sensors
122 Summary(pl):    Biblioteki statyczne dla lm_sensors
123 Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com lm_sensors
124 Summary(ru):    óÔÁÔÉÞÅÓËÁÑ ÂÉÂÌÉÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ lm_sensors
125 Summary(uk):    óÔÁÔÉÞÎÁ Â¦Â̦ÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ lm_sensors
126 Group:          Development/Libraries
127 Requires:       %{name}-devel = %{version}-%{release}
128
129 %description static
130 Static libraries for lm_sensors.
131
132 %description static -l pl
133 Biblioteki statyczne dla lm_sensors.
134
135 %description static -l pt_BR
136 Bibliotecas estáticas para desenvolvimento com lm_sensors
137
138 %description static -l ru
139 ðÁËÅÔ lm_sensors-static ×ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ
140 ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ ÄÁÎÎÙÅ ÓÅÎÓÏÒÏ×.
141
142 %description static -l uk
143 ðÁËÅÔ lm_sensors-static Í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ
144 ÐÏÂÕÄÏ×É ÐÒÏÇÒÁÍ, Ñ˦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÄÁΦ ÓÅÎÓÏÒ¦×.
145
146 %package -n kernel24-i2c-%{name}
147 Summary:        Kernel modules for various buses and monitor chips
148 Summary(pl):    Modu³y j±dra dla ró¿nego rodzaju sensorów
149 Group:          Applications/System
150 Release:        %{_rel}@%{_kernel_ver_str}
151 Requires(post,postun):  /sbin/depmod
152 %{?with_dist_kernel:%requires_releq_kernel_up}
153 %{?with_dist_kernel:Requires:   i2c >= 2.8.2}
154 Provides:       %{name}-modules = %{version}-%{release}
155 Obsoletes:      kernel-misc-lm_sensors
156
157 %description -n kernel24-i2c-%{name}
158 Kernel modules for various buses and monitor chips.
159
160 %description -n kernel24-i2c-%{name} -l pl
161 Modu³y j±dra dla ró¿nego rodzaju sensorów monitoruj±cych.
162
163 %package -n kernel24-smp-i2c-%{name}
164 Summary:        Kernel modules for various buses and monitor chips
165 Summary(pl):    Modu³y j±dra dla ró¿nego rodzaju sensorów
166 Group:          Applications/System
167 Release:        %{_rel}@%{_kernel_ver_str}
168 Requires(post,postun):  /sbin/depmod
169 %{?with_dist_kernel:%requires_releq_kernel_smp}
170 %{?with_dist_kernel:Requires:   i2c >= 2.8.2}
171 Provides:       %{name}-modules = %{version}-%{release}
172 Obsoletes:      kernel-smp-misc-lm_sensors
173
174 %description -n kernel24-smp-i2c-%{name}
175 Kernel SMP modules for various buses and monitor chips.
176
177 %description -n kernel24-smp-i2c-%{name} -l pl
178 Modu³y j±dra SMP dla ró¿nego rodzaju sensorów monitoruj±cych.
179
180 %prep
181 %setup -q
182 %patch0 -p1
183 %patch1 -p1
184 %patch2 -p1
185 %patch3 -p1
186 %patch4 -p1
187 %patch5 -p1
188
189 %build
190 %if %{with kernel}
191 # workaround to avoid unresolved dmi* symbols in i2c-piix4.o
192 install -d fakelinux
193 :> fakelinux/.config
194 %ifarch %{ix86}
195 echo 'CONFIG_X86=y' >> fakelinux/.config
196 %endif
197 %ifarch %{ix86} %{x8664} alpha ppc
198 echo 'CONFIG_IPMI_HANDLER=m' >> fakelinux/.config
199 %endif
200
201 %if %{with smp}
202 # SMP
203 %{__make} all-kernel-busses all-kernel-chips \
204         CC="%{kgcc}" \
205         OPTS="%{rpmcflags} -D__KERNEL_SMP=1" \
206         LINUX=`pwd`/fakelinux \
207         LINUX_HEADERS=%{_kernelsrcdir}/include \
208         I2C_HEADERS=%{_kernelsrcdir}/include \
209         SMP=1
210
211 %{__make} install-kernel-busses install-kernel-chips \
212         MODPREF=kernel-smp-modules \
213         LINUX=`pwd`/fakelinux \
214         LINUX_HEADERS=%{_kernelsrcdir}/include \
215         I2C_HEADERS=%{_kernelsrcdir}/include \
216         SMP=1
217
218 %{__make} clean
219 %endif
220
221 # UP
222 %{__make} all-kernel-busses all-kernel-chips \
223         CC="%{kgcc}" \
224         OPTS="%{rpmcflags}" \
225         LINUX=`pwd`/fakelinux \
226         LINUX_HEADERS=%{_kernelsrcdir}/include \
227         I2C_HEADERS=%{_kernelsrcdir}/include \
228         SMP=0
229 %endif
230
231 %if %{with userspace}
232 %{__make} user \
233         CC="%{__cc}" \
234         OPTS="%{rpmcflags}" \
235         LIBDIR=%{_libdir} \
236         LINUX=/dev/null \
237         LINUX_HEADERS=%{_kernelsrcdir}/include \
238         I2C_HEADERS=/usr/include \
239         PROG_EXTRA:="sensord"
240
241 %{__make} -C prog/eepromer \
242         CC="%{__cc}" \
243         CFLAGS="%{rpmcflags} -I../../kernel/include"
244 %endif
245
246 %install
247 rm -rf $RPM_BUILD_ROOT
248
249 %if %{with kernel}
250 %{__make} install-kernel-busses install-kernel-chips \
251         DESTDIR=$RPM_BUILD_ROOT \
252         MODPREF=/lib/modules/%{_kernel_ver} \
253         LINUX=`pwd`/fakelinux \
254         LINUX_HEADERS=%{_kernelsrcdir}/include \
255         I2C_HEADERS=%{_kernelsrcdir}/include \
256         SMP=0
257 %endif
258
259 %if %{with userspace}
260 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man8} \
261         $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
262
263 %{__make} user_install \
264         DESTDIR=$RPM_BUILD_ROOT \
265         PREFIX=%{_prefix} \
266         ETCDIR=%{_sysconfdir} \
267         LIBDIR=%{_libdir} \
268         MANDIR=%{_mandir} \
269         PROG_EXTRA:="sensord" \
270         LINUX=/dev/null \
271         LINUX_HEADERS=%{_kernelsrcdir}/include \
272         I2C_HEADERS=/usr/include
273
274 install prog/eepromer/{eeprom,eepromer} $RPM_BUILD_ROOT%{_sbindir}
275
276 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/sensors
277 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/sensors
278
279 # i2c API for userspace - included in glibc-kernel-headers
280 rm -f $RPM_BUILD_ROOT%{_includedir}/linux/i2c-dev.h
281 %endif
282
283 %if %{with kernel} && %{with smp}
284 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/{busses,chips}
285 install kernel-smp-modules/kernel/drivers/i2c/busses/*.o \
286         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses
287 install kernel-smp-modules/kernel/drivers/i2c/chips/*.o \
288         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips
289 %endif
290
291 %clean
292 rm -rf $RPM_BUILD_ROOT
293
294 %post   -p /sbin/ldconfig
295 %postun -p /sbin/ldconfig
296
297 %post sensord
298 /sbin/chkconfig --add sensors
299 if [ -f /var/lock/subsys/sensors ]; then
300         /etc/rc.d/init.d/sensors restart >&2
301 else
302         echo "You have to configure sensors modules in /etc/sysconfig/sensors"
303         echo
304         echo "Run \"/etc/rc.d/init.d/sensors start\" to start sensors daemon." >&2
305 fi
306
307 %preun sensord
308 if [ "$1" = "0" ]; then
309         if [ -f /var/lock/subsys/sensors ]; then
310                 /etc/rc.d/init.d/sensors stop >&2
311         fi
312         /sbin/chkconfig --del sensors
313 fi
314
315 %post   -n kernel24-i2c-%{name}
316 %depmod %{_kernel_ver}
317
318 %postun -n kernel24-i2c-%{name}
319 %depmod %{_kernel_ver}
320
321 %post   -n kernel24-smp-i2c-%{name}
322 %depmod %{_kernel_ver}smp
323
324 %postun -n kernel24-smp-i2c-%{name}
325 %depmod %{_kernel_ver}smp
326
327 %if %{with userspace}
328 %files
329 %defattr(644,root,root,755)
330 %doc BACKGROUND BUGS CHANGES README README.thinkpad TODO doc/{busses,chips}
331 %doc doc/{FAQ,donations,fan-divisors,progs,temperature-sensors,*html,vid}
332 %doc prog/{config,daemon,eepromer/README*,matorb,maxilife}
333 %attr(755,root,root) %{_bindir}/ddcmon
334 %attr(755,root,root) %{_bindir}/decode-*.pl
335 %attr(755,root,root) %{_bindir}/sensors
336 %attr(755,root,root) %{_sbindir}/sensors-detect
337 %attr(755,root,root) %{_sbindir}/eeprom*
338 %attr(755,root,root) %{_sbindir}/fancontrol
339 %attr(755,root,root) %{_sbindir}/i2c*
340 %ifarch %{ix86} %{x8664}
341 %attr(755,root,root) %{_sbindir}/isadump
342 %attr(755,root,root) %{_sbindir}/isaset
343 %{_mandir}/man8/isadump.8*
344 %{_mandir}/man8/isaset.8*
345 %endif
346 %attr(755,root,root) %{_sbindir}/pwmconfig
347 %attr(755,root,root) %{_libdir}/lib*.so.*.*
348 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sensors.conf
349 %{_mandir}/man1/sensors.1*
350 %{_mandir}/man5/sensors.conf.5*
351 %{_mandir}/man8/fancontrol.8*
352 %{_mandir}/man8/i2c*.8*
353 %{_mandir}/man8/pwmconfig.8*
354 %{_mandir}/man8/sensors-detect.8*
355
356 %files sensord
357 %defattr(644,root,root,755)
358 %attr(754,root,root) %{_sbindir}/sensord
359 %attr(754,root,root) /etc/rc.d/init.d/sensors
360 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/sensors
361 %{_mandir}/man8/sensord.8*
362
363 %files devel
364 %defattr(644,root,root,755)
365 %doc doc/{developers,kernel}
366 %attr(755,root,root) %{_libdir}/lib*.so
367 %{_includedir}/sensors
368 %{_includedir}/linux/sensors.h
369 %{_mandir}/man3/*
370
371 %files static
372 %defattr(644,root,root,755)
373 %{_libdir}/libsensors.a
374 %endif
375
376 %if %{with kernel}
377 %files -n kernel24-i2c-%{name}
378 %defattr(644,root,root,755)
379 %dir /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/busses
380 /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/busses/*.o*
381 %dir /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/chips
382 /lib/modules/%{_kernel_ver}/kernel/drivers/i2c/chips/*.o*
383
384 %if %{with smp}
385 %files -n kernel24-smp-i2c-%{name}
386 %defattr(644,root,root,755)
387 %dir /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses
388 /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/busses/*.o*
389 %dir /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips
390 /lib/modules/%{_kernel_ver}smp/kernel/drivers/i2c/chips/*.o*
391 %endif
392 %endif
This page took 0.073368 seconds and 4 git commands to generate.