This shows you the differences between two versions of the page.
people:mmazur [2006-11-14 18:19] mmazur test6 |
people:mmazur [2013-01-17 11:44] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | |||
- | |||
- | <file>[mmazur@rudy(pldac) linux-libc-headers]$ export|grep -i llh | ||
- | declare -x LLHDIR="/home/users/mmazur/devel/pld/sandbox/linux-libc-headers/" | ||
- | [mmazur@rudy(pldac) linux-libc-headers]$ pwd | ||
- | /home/users/mmazur/devel/pld/sandbox/linux-libc-headers | ||
- | [mmazur@rudy(pldac) linux-libc-headers]$ ls | ||
- | 2.4 cvs linux-libc-headers skrypty tmp | ||
- | 2.6 diffy paczka sources zepsute | ||
- | </file> | ||
- | Pod 'linux-libc-headers' jest zawartość cvsu, 'scripts' to link symboliczny do 'linux-libc-headers/scripts', jest tam kilka przydatnych rzeczy. W 'sources' są trzymane źródła kerneli, natomiast pod '2.4' i '2.6' są wyciągnięte ze źródeł nagłówki. Pierwsza rzecz, to zassać najnowszy kernel, rozpakować i wyciągnąć z niego nagłówki. W tym celu pierw sprawdzimy które katalogi z nagłówkami nas interesują. | ||
- | |||
- | |||
- | |||
- | <file>[mmazur@rudy(pldac) linux-libc-headers]$ ls 2.6/2.6.12.2/include/ | ||
- | asm-alpha asm-generic asm-m68k asm-ppc64 asm-sparc64 mtd | ||
- | asm-arm asm-h8300 asm-m68knommu asm-s390 asm-um scsi | ||
- | asm-arm26 asm-i386 asm-mips asm-sh asm-v850 sound | ||
- | asm-cris asm-ia64 asm-parisc asm-sh64 asm-x86_64 | ||
- | asm-frv asm-m32r asm-ppc asm-sparc linux | ||
- | </file> | ||
- | Oto którymi nagłówkami interesowaliśmy się ostatnio. No to teraz dodajemy z obecnego kernela. | ||
- | |||
- | |||
- | |||
- | <file>[mmazur@rudy(pldac) linux-libc-headers]$ mkdir 2.6/2.6.13.2 | ||
- | [mmazur@rudy(pldac) linux-libc-headers]$ cd 2.6/2.6.13.2/include/ | ||
- | [mmazur@rudy(pldac) include]$ ls | ||
- | acpi asm-cris asm-i386 asm-m68knommu asm-ppc64 asm-sparc asm-x86_64 media rxrpc | ||
- | asm-alpha asm-frv asm-ia64 asm-mips asm-s390 asm-sparc64 asm-xtensa mtd scsi | ||
- | asm-arm asm-generic asm-m32r asm-parisc asm-sh asm-um linux net sound | ||
- | asm-arm26 asm-h8300 asm-m68k asm-ppc asm-sh64 asm-v850 math-emu pcmcia video | ||
- | [mmazur@rudy(pldac) include]$ rm -rf acpi/ math-emu/ media/ net pcmcia/ rxrpc/ video/ | ||
- | </file> | ||
- | No to pozbyliśmy się nieistotnych katalogów. Robimy diffy. | ||
- | |||
- | |||
- | |||
- | <file>[mmazur@rudy(pldac) linux-libc-headers]$ cd scripts | ||
- | [mmazur@rudy(pldac) scripts]$ ./mkdiffs.sh 2.6.12.2 2.6.13.2 | ||
- | [mmazur@rudy(pldac) scripts]$ cd ../diffy/ | ||
- | [mmazur@rudy(pldac) diffy]$ ls -lh | ||
- | total 3.9M | ||
- | -rw------- 1 mmazur users 16K Sep 28 19:56 add | ||
- | -rw------- 1 mmazur users 424 Sep 28 19:56 del | ||
- | -rw------- 1 mmazur users 3.1M Sep 28 19:55 full.diff | ||
- | -rw------- 1 mmazur users 794K Sep 28 19:56 specific.diff | ||
- | </file> | ||
- | W 'add' jest lista plików dodanych w nowej wersji kernela, w 'del' usuniętych, 'full.diff' to pełny diff (diff -urN), natomiast 'specific.diff' to diff tylko pomiędzy plikami, które istnieją w obu wersjach kernela. Lista w 'add' jest taka długa, bo doszła nowa architektura, ale dodawaniem i wywalaniem plików, to już się ja zajmę. | ||
- | |||
- | Główna zabawa jest z nałożeniem 'specific.diff' na ostatnie llh. Trzeba pamiętać o wywaleniu z diffa makr ''__user'', ''__kernel'' i ''__iomem'' (i ewentualnie jakiś innych z linux/compiler.h). Poza tym nic nie powinno includować linux/config.h, a jak coś includuje asm-generic/*, to zostawić mi, bo to jest dziwnie rozwiązane. | ||
- | |||
- | test | ||
- | |||