Re: Fwd: ROCK 2.1 linux package question

Stefan Fiedler <[email protected]>
Newsgroups gmane.linux.distributions.rock.devel
Message-ID <[email protected]>
Hi Florian,

> ----- Forwarded message from Florin Muntean <[email protected]> -----
>
> Date: Fri, 14 Oct 2005 11:06:39 -0400
> From: Florin Muntean <[email protected]>
> To: [email protected]
> Subject: ROCK 2.1 linux package question
> X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,RCVD_BY_IP
> 	autolearn=ham version=3.0.0
>
> Hi,
> I was looking into the linux package from base repository for ROCK 2.1.
> In config-500.in file I saw this:
> if [ "$ROCKCFG_PKG_LINUX_HEADERS" = linux24 ]; then
>         pkgfork linux linux26-header stages ---3-----9
> fi
> if [ "$ROCKCFG_PKG_LINUX_HEADERS" = linux26 ]; then
>         pkgfork linux linux24-header stages ---3-----9
> fi
>
> It is this the desired behavior and why?
>
> I was thinking why are you selecting to build the header for a
> diferent version of kernel in level 3 ?

The Linux headers all programs use by default are built in stages 0 and 1, 
non-default headers are built only in stage 3. Because some programs can't 
compile against 2.4/2.6 headers, both header versions are always supplied 
(in /usr/include/linux24 and /usr/include/linux26, respectively). Default 
headers have the symlink /usr/include/linux pointing at them.

>
> My next question is:
>  How I can select to build all the modules for linux kernel 2.6 I saw
> that you are using the make no2modules in linux.conf file.
>
>   # all modules needs to be first so modules can be disabled by i.e.
>   # the targets later
>   echo "Enabling all modules ..."
>   yes '' | eval $MAKE no2modconfig > /dev/null ; cp .config .config.2
>
>
> This approach will not select all the modules. I found this by trying
> to have selected the tulip driver for net.
> Do you have any ideas on how to enable that driver ?
> For now I did modify the no2modconfig to allmodconfig that selects
> everything.

During kernel configuration, several kernel configuration files are created. 
By running './scripts/Config -cfg yourconfig' you can choose which one is 
actually used. To do this, select    
	<*>    Show expert-only and experimental options 
then
	===>  Linux Kernel Options
where you can select, among other options, between
	( ) Do not perform any automatic kernel configuration
	( ) Perform normal kernel configuration without modules
	( ) Perform normal kernel configuration including modules
The configuration including modules is the default. It does not, however, 
include all modules. This is a known bug and will be fixed sooner or later.

To modify the kernel configuration file, select
	[ ]    Apply custom kernel build configuration settings
then edit the file config/yourconfig/linux.cfg. Settings made in linux.cfg 
override settings from the automatic kernel configuration to produce the 
kernel configuration that gets used.

You can either supply a completely "hand-made" file, which means running 'make 
menuconfig' inside the kernel source tree, configuring the kernel to your 
liking, then copying the file .config to linux.cfg. You should probably 
combine this linux.cfg with
	( ) Do not perform any automatic kernel configuration
so you get exactly the kernel you configured.

Alternately, you can use
	( ) Perform normal kernel configuration without modules
or
	( ) Perform normal kernel configuration including modules
and write to config/yourconfig/linux.cfg only changes to the automatically 
generated config. E.g. to additionally build the tulip driver as a module, 
you'd create the one-line linux.cfg:
	CONFIG_TULIP=m
During 'make menuconfig', when you select the Help for a certain option, you 
can see on the topmost line how the variable for this option is called 
(CONFIG_TULIP in this case).

Have fun,
	Stefan Fiedler
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.