Auteur: Yves Martin Date: À: guilde Sujet: Re: Compilation de noyau
Selon Christian Marillat <marillat@???>:
> Tu es vraiment sur ? Avec tous les #ifdef qu'il y a dans le source je
> suis pratiquemment sur que si tu ajoutes un module (c'est sur ça ne
> concerne pas tous les modules) il va avoir besoin d'une fonction dans un
> autre module, et comme les Makefile ne vont pas voir le changement (donc
> le module ne sera pas recompilé) et il manquera quelque chose à la fin.
Pour info, le kernel 2.6 a une innovation au niveau de la configuration.
Le fichier de configuration classique est découpé au début du make (voir SPLIT)
en une miriade de fichiers d'entête .h dans include/config.
Lorsqu'un .c utilise une option de la configuration par un #ifdef, il déclare
l'include du .h correspondant dans include/config...
Si un .h avec une option change de timestamp (uniquement si on change ou enlève
une option), les .o dépends de cette options seront regénérés - grace aux
dépendances entre .o / .c et .h de gcc.
J'ai testé pour avoir passé les options ACPI de "module" à "compilés dans le
kernel" et cela fonctionne très bien. On gagne franchement sur le temps
de compilation (il me faut 45 minutes pour compiler le 2.6...)