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