grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] New object format


From: Bean
Subject: [PATCH] New object format
Date: Tue, 14 Jul 2009 23:49:37 +0800

Hi,

This patch implement a new object format, the advantages are:

Reduce size dramatically, some result:

Size of all modules:

original: 645575
new: 519093

Dynamic loader:

original
   text    data     bss     dec     hex filename
    412       0       0     412     19c kernel_img-kern___target_cpu__dl.o
   3052       0    2064    5116    13fc kernel_img-kern_dl.o

new:
   text    data     bss     dec     hex filename
   2272       0    2064    4336    10f0 kernel_img-kern_dl.o

Greatly simplify the build process:

1, compile *.c, *.S to *.o
2, use grub-mkmod to merge *.o file to mod
3, use grub-symdb to maintain module dependence

so there is no pre-* mod-* def-* und-* anymore.

grub-mkmod support both pe and elf format, no need to convert with grub-pe2elf.

BTW, this patch breaks other platform. And it seems there is some bug
in elf->mod converter. But the pe->mod works quite nice, I can load
graphic menu and even run osdetect script with lua.

-- 
Bean

Attachment: obj.diff
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]