Dans la section %prep du .spec du paquet-source «kernel» est donné l'ordre d'application des patches : ceux-ci sont déclarés en préambule :
Patch1: patch-2.6.16-rc6.bz2
Patch2: patch-2.6.16-rc6-git3.bz2
Patch100: linux-2.6-bzimage.patch
Patch200: linux-2.6-x86-tune-p4.patch
Patch201: linux-2.6-x86-apic-off-by-default.patch
Patch202: linux-2.6-x86-vga-vidfail.patch
Patch203: linux-2.6-intel-cache-build.patch
Patch204: linux-2.6-x86_64-silence-up-apic-errors.patch
...
Section %prep : on applique les patches avant de compiler :
%patch1 -p1 # on applique le patch Patch1
%patch2 -p1 # idem
%patch200 -p1 # itou
...
Peut-être qu'avec un petit script en Perl, on peut extraire les bonnes parties du .spec de façon à appliquer les patches conformément à l'ordre décrit dans le .spec, et surtout sans s'embêter à tout faire à la main (et en plus c'est stimulant pour l'esprit 😉). Après tout ça, on peut alors appliquer en dernier le(s) patch(es) nécessaires pour AX-25-iser (désolé, je ne suis qu'un béotien inculte en radio-amateurisme).
Est-ce j'ai écrit une c***rie ?
ÉDIT : pour le script en Perl, en fait c'est trop facile :
- on récupère toutes lignes commençant par Patch[0-9]+ ;
- on splite la ligne et on garde le deuxième champ...
- ...qui sera injecté à patch : patch -p1 < <où est caché mon patch correspondant au deuxième champ>...
- à condition qu'elle soit un patch «valide» (i.e. sa ligne d'application dans la section %prep est présente et non commentée).
Deux c***ries pour le prix d'une.