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