make modules_install a locale
Michal Svec
rebel na atrey.karlin.mff.cuni.cz
Pondělí Listopad 1 18:53:19 CET 1999
> > > po instalaci 2.2.13 (na RH6.1) jsem si vsiml, ze
> > > v /lib/modules/2.2.13/misc mam podezrele mnoho modulu (tj. i ty,
> > > ktere se nainstalovaly do jinych adresaru) Dival jsem se do
> > > Makefile a zjistil, ze problem je v tomto:
> > > v prubehu instalace se jiz instalovene moduly ukladaji do $MODULES;
> > > okolo radku 340 se pomoci 'for f in *.o' zjisti existujici moduly,
> > > a pouzitim
> > >
> > > echo $$MODULES | tr ' ' '\n' | sort | comm -23 $$MODLIB/.allmods - \
> > > > $$MODLIB/.misc; \
> > >
> > > se zisti, ktere moduly se jeste nikam nenainstalovaly. Problem
> > > nastane v situaci, kdy je locale jine nez C a sort to setridi
> > > jinak nez 'for f in *.o', coz zmate comm. (konkretne modul 8390.o,
> > > protoze podle ceskeho trideni se zaradi cislo za alfabeticke
> > > znaky)
> >
> > Po letmem nahlednuti do Makefile u verze 2.2.12 a 2.2.13 to vypada, ze u
> > toho find-u vypadnul sort, ktery tam u 2.2.12 jeste byl. Zpetne pridani by
> > tento problem podle me vyresilo.
>
> O to nejde, ten sort tam je porad, problem je ze pri ceskem locale
> to tridi jinak, nez se v Makefile predpoklada. (problem je s cisly
> a s pismenem 'ch', mozna i s nekterymi nealfanumerickymi znaky)
O to samozrejme jde. Prikaz com porovnava dva vystupy, jeden z prikazu
find a druhy ze seznamu nainstalovanych modulu. Ve verzi 2.2.12 jdou oba
dva vystupy pres sort, v 2.2.13 pouze ten druhy.
> (Driv se to neprojevovalo, protoze sort v RH do 6.0 vcetne stejne
> netridil cesky)
Pokud bude comm porovnavat dva (stejne) utridene vstupy, nezalezi (nemelo
by) na lokales.
Michal
PS. pro uplnost oba zminene kusy Makefile:
linux-2.2.12/Makefile:
for f in *.o; do [ -r $$f ] && echo $$f; done | sort > $$MODLIB/.allmods
echo $$MODULES | tr ' ' '\n' | sort | comm -23 $$MODLIB/.allmods - > $$MA
linux-2.2.13/Makefile:
for f in *.o; do [ -r $$f ] && echo $$f; done > $$MODLIB/.allmods; \
echo $$MODULES | tr ' ' '\n' | sort | comm -23 $$MODLIB/.allmods - > $$M
Další informace o konferenci Linux