depmod (było Re: SPECS: slmdm.spec (HEAD) i wiele innych)

Jakub Bogusz qboosh at pld.org.pl
Sun May 18 23:53:40 CEST 2003


On Fri, May 16, 2003 at 11:00:31AM +0200, Tomasz Trojanowski wrote:
> On Fri, 16 May 2003, Jakub Bogusz wrote:
> > On Thu, May 15, 2003 at 08:20:06PM +0200, trojan wrote:
> > > Module name:	SPECS
> > > Changes by:	trojan	03/05/15 20:20:04
> > > 
> > > Modified files:
> > > 	slmdm.spec
> > > 
> > > Log message:
> > > - fixed depmod in %%post and %%postun when build with _without_dist_kernel
> > > 
> > > Index: slmdm.spec
> > > ===================================================================
> > > RCS file: /cvsroot/SPECS/slmdm.spec,v
> > > diff -d -u -r1.10 -r1.11
> > > --- slmdm.spec	10 May 2003 14:45:43 -0000	1.10
> > > +++ slmdm.spec	15 May 2003 18:20:03 -0000	1.11
> > > @@ -122,7 +122,7 @@
> > >  	echo 'alias char-major-212 slmodem' >> %modules_conf
> > >  	echo 'alias slmodem off' >> %modules_conf
> > >  fi
> > > -/sbin/depmod -a -F /boot/System.map-%{_kernel_ver} %{_kernel_ver}
> > > +/sbin/depmod -a %{!?_without_dist_kernel:-F /boot/System.map-%{_kernel_ver} }%{_kernel_ver}
> > 
> > No i też niedobrze, bo dla _without_dist_kernel użyje /proc/ksyms - więc
> > zależności mogą się wygenerować źle, jeśli pakiet jest instalowany dla
> > jądra innego niż aktualnie działające.
> 
> No nie najlepiej, wybór mniejszego zła miedzi złymi zależnościami, a 
> padaniem skryptu. Ale ....
> 
> > Tu chyba trzeba pozwolić na dostosowanie. Proponuję dodanie makra:
> > %__depmod	/sbin/depmod -a -F /boot/System.map-%{_kernel_ver} %{_kernel_ver}
> > 
> > i stosowanie w specach (+odpowiednie rpm-build w BR).
> > Jak ktoś potrzebuje czegoś innego, to sobie przedefiniuje dla używanego
> > przez siebie schematu nazewnictwa System.map (Ja np. dla jąder
> > niedystrybucyjnych używam System.map-2.4.x, co pasuje do ww. postaci).
> 
> Tak sobie właśnie myślę, że może wogóle dać sobie spokój z wydziwianiem z 
> depmod i zostawić tylko /sbin/depmod i ewentualnie
> touch /var/cosstamcostam, a w skryptach startowych jeżeli taki plik 
> istnieje to go usuwa i zrobi jeszcze raz depmoda

Samo depmod to nie, bo grzebie w zależnościach działającego kernela - co
może być wręcz szkodliwe, jeśli akurat coś majstrujemy przy modułach.

Proponuję makro i tak wprowadzić (cokolwiek by miało w nim być).
Dla _without_dist_kernel może być jedno z:
- bez -F
- z -F /boot/System.map
- z -F /boot/System.map-%{_kernel_ver}

I tak część przebudowujących będzie chciała/potrzebowała sobie
zmienić...


-- 
Jakub Bogusz    http://cyber.cs.net.pl/~qboosh/



More information about the pld-devel-pl mailing list