This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
people:mmazur [2005-11-04 09:56] mmazur Brought back from the dead. |
people:mmazur [2007-01-29 21:13] mmazur test |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | + | test | |
- | + | ||
- | <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. | + | |