Modules building (2.6), smarter way...

Arkadiusz Miskiewicz arekm at pld-linux.org
Sun Jan 29 14:14:04 CET 2006


The procedure we build external modules is crap, yeah but it seems that there 
is a way to make it nicer.

Previously:

        rm -rf include
        install -d include/{linux,config}
        ln -sf %{_kernelsrcdir}/config-$cfg .config
        ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h 
include/linux/autoconf.h
%ifarch ppc ppc64
        install -d include/asm
        [ ! -d %{_kernelsrcdir}/include/asm-powerpc ] || ln -sf 
%{_kernelsrcdir}/include/asm-powerpc/* include/asm
        [ ! -d %{_kernelsrcdir}/include/asm-%{_target_base_arch} ] || ln -snf 
%{_kernelsrcdir}/include/asm-%{_target_base_a
rch}/* include/asm
%else
        ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
%endif

        ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
        touch include/config/MARKER

        %{__make} -C %{_kernelsrcdir} clean \
	M=$PWD O=$PWD \
         [...]

Now:
        install -d o/include/linux
        ln -sf %{_kernelsrcdir}/config-$cfg o/.config
        ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
        ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h 
o/include/linux/autoconf.h
        %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts

        %{__make} -C %{_kernelsrcdir} clean \
	M=$PWD O=$PWD/o \
        [...]

This will be tested on wider number of modules when 2.6.14.7 comes out so for 
now  - does anyone see anything bad in new method, potential problems etc?

ah! and linux-kbuild-extmod.patch is no longer needed
-- 
Arkadiusz Miśkiewicz                    PLD/Linux Team
http://www.t17.ds.pwr.wroc.pl/~misiek/  http://ftp.pld-linux.org/


More information about the pld-devel-en mailing list