summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
1cfb826)
Adopt Makeconf.local for our purposes.
data PT_LOAD;
#ifdef IMAGE_MODE
mods PT_LOAD;
#endif
data PT_LOAD;
#ifdef IMAGE_MODE
mods PT_LOAD;
#endif
-#define JH
-#define ENTRY_OFFSET (0x0)
-#ifdef JH
- #define ENTRY_OFFSET (0xf0000)
+#define LOAD_OFFSET (0x0)
+#ifdef JAILHOUSE
+ #define LOAD_OFFSET (0xf0000)
. = 0;
/* 16-bit sections */
. = 0;
/* 16-bit sections */
- .jh-startup : { *(.jh.startup) }
+ .jh-startup : { *(.jh.startup) }
- . = LINKADDR + SIZEOF_HEADERS + ENTRY_OFFSET;
+ . = LINKADDR + SIZEOF_HEADERS;
#endif
PROVIDE (ImageBase = LINKADDR);
#endif
PROVIDE (ImageBase = LINKADDR);
- .hash : AT (ADDR(.hash) - ENTRY_OFFSET) { *(.hash) } : data /* this MUST come first! */
+ /*.hash : AT (ADDR(.hash) - LOAD_OFFSET) { *(.hash) } : data */ /* this MUST come first! */
/* Merge .text, .rodata, and .data in one segment to save space */
/* provide at least 1K space for PE header in case of EFI */
/* Merge .text, .rodata, and .data in one segment to save space */
/* provide at least 1K space for PE header in case of EFI */
* this as free space for PE too
*/
/* FXIME: should make this depending on EFI */
* this as free space for PE too
*/
/* FXIME: should make this depending on EFI */
- . = (. < (0x400 + LINKADDR)) ? (LINKADDR + 0x400) : .;
+ /*. = (. < (0x400 + LINKADDR)) ? (LINKADDR + 0x400) : .;*/
- .text : AT (ADDR(.text) - ENTRY_OFFSET)
+ .text : AT (ADDR(.text) - LOAD_OFFSET)
{
*(.init)
*(.text .text.* .gnu.linkonce.t*)
*(.rodata*)
{
*(.init)
*(.text .text.* .gnu.linkonce.t*)
*(.rodata*)
- .dynsym : AT (ADDR(.dynsym) - ENTRY_OFFSET) { *(.dynsym) } : data
- .dynstr : AT (ADDR(.dynstr) - ENTRY_OFFSET) { *(.dynstr) } : data
- .reloc : AT (ADDR(.reloc) - ENTRY_OFFSET) { *(.reloc) } : data
- .rel.dyn : AT (ADDR(.rel.dyn) - ENTRY_OFFSET)
+ .dynsym : AT (ADDR(.dynsym) - LOAD_OFFSET) { *(.dynsym) } /*: data*/
+ .dynstr : AT (ADDR(.dynstr) - LOAD_OFFSET) { *(.dynstr) } /*: data*/
+ .reloc : AT (ADDR(.reloc) - LOAD_OFFSET) { *(.reloc) } /*: data*/
+ .rel.dyn : AT (ADDR(.rel.dyn) - LOAD_OFFSET)
{
*(.rel.*) *(.rel.module_info)
{
*(.rel.*) *(.rel.module_info)
- .data : AT (ADDR(.data) - ENTRY_OFFSET)
+ .data : AT (ADDR(.data) - LOAD_OFFSET)
- .data.module_info : AT (ADDR(.data.module_info) - ENTRY_OFFSET)
+
+ .data.module_info : AT (ADDR(.data.module_info) - LOAD_OFFSET)
{
. = ALIGN(16);
_module_info_start = .;
*(.module_info .module_info.*)
_module_info_end = .;
{
. = ALIGN(16);
_module_info_start = .;
*(.module_info .module_info.*)
_module_info_end = .;
- .dynamic : AT (ADDR(.dynamic) - ENTRY_OFFSET) { *(.dynamic) } : data
- .rela.dyn : AT (ADDR(.rela.dyn) - ENTRY_OFFSET)
+ .dynamic : AT (ADDR(.dynamic) - LOAD_OFFSET) { *(.dynamic) } /*: data*/
+ .rela.dyn : AT (ADDR(.rela.dyn) - LOAD_OFFSET)
{
*(.rela.init)
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
{
*(.rela.init)
*(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
*(.rela.ifunc)
*(.rela.module*)
*(.rela.init_array)
*(.rela.ifunc)
*(.rela.module*)
*(.rela.init_array)
- } : data
- .rela.plt : AT (ADDR(.rela.plt) - ENTRY_OFFSET)
+ } /*: data*/
+
+ .rela.plt : AT (ADDR(.rela.plt) - LOAD_OFFSET)
{
*(.rela.plt)
*(.rela.iplt)
{
*(.rela.plt)
*(.rela.iplt)
_edata = .;
PROVIDE (edata = .);
. = ALIGN(4096);
__bss_start = .;
_edata = .;
PROVIDE (edata = .);
. = ALIGN(4096);
__bss_start = .;
- .bss : AT (ADDR(.bss) - ENTRY_OFFSET)
+ .bss : AT (ADDR(.bss) - LOAD_OFFSET)
{
*(.bss)
*(.bss.*)
*(COMMON)
*(.dynbss)
*(.bss_memmap)
{
*(.bss)
*(.bss.*)
*(COMMON)
*(.dynbss)
*(.bss_memmap)
_end = . ;
PROVIDE (end = .);
. = ALIGN(4096);
_end = . ;
PROVIDE (end = .);
. = ALIGN(4096);
. = RAM_BASE + MODADDR;
#endif
_module_data_start = .;
. = RAM_BASE + MODADDR;
#endif
_module_data_start = .;
- .module_data : AT (ADDR(.module_data) - ENTRY_OFFSET) {
+ .module_data : AT (ADDR(.module_data) - LOAD_OFFSET) {
*(EXCLUDE_FILE (*mod00.bin *mod01.bin *mod02.bin) .module_data)
*(.module_data)
*(EXCLUDE_FILE (*mod00.bin *mod01.bin *mod02.bin) .module_data)
*(.module_data)
_module_data_end = .;
#endif
_module_data_end = .;
#endif
INTERNAL_CRT0 := y # the defualt is to use our internal crt0
DEFAULT_RELOC_arm := 0x01000000
INTERNAL_CRT0 := y # the defualt is to use our internal crt0
DEFAULT_RELOC_arm := 0x01000000
-DEFAULT_RELOC_x86 := 0x002d0000
+DEFAULT_RELOC_x86 := 0x00100000 #edited
DEFAULT_RELOC_amd64 := 0x002d0000
DEFAULT_RELOC_ppc32 := 0x002d0000
DEFAULT_RELOC_sparc := 0x00800000
DEFAULT_RELOC_amd64 := 0x002d0000
DEFAULT_RELOC_ppc32 := 0x002d0000
DEFAULT_RELOC_sparc := 0x00800000
-#edited by coon 10 apr
-#REALMODE_LOADING=1
-#JAILHOUSE
-#IMAGE_MODE
\ No newline at end of file
+#our jailhouse-specific build config
+DEFINES += -DJAILHOUSE
+#DEFINES += -DIMAGE_MODE
+#DEFINES += -DREALMODE_LOADING