Subversion Repositories HelenOS

Compare Revisions

No changes between revisions

Ignore whitespace Rev 3690 → Rev 3691

/branches/dynload/uspace/lib/libtest/_link.ld.in
File deleted
/branches/dynload/uspace/lib/libtest/Makefile
75,14 → 75,14
-include Makefile.depend
 
clean:
-rm -f $(OUTPUT) $(OUTPUT).map $(OUTPUT).disasm $(OUTPUT).sections Makefile.depend *.o arch/$(ARCH)/_link.ld include/arch _link.ld
-rm -f $(OUTPUT) $(OUTPUT).map $(OUTPUT).disasm $(OUTPUT).sections Makefile.depend *.o arch/$(ARCH)/_link.ld
find arch/$(ARCH)/ -name '*.o' -follow -exec rm \{\} \;
 
depend:
$(CC) $(DEFS) $(CFLAGS) -M $(ARCH_SOURCES) $(GENERIC_SOURCES)> Makefile.depend
 
$(OUTPUT): $(ARCH_OBJECTS) $(GENERIC_OBJECTS) $(LIBS) _link.ld
$(LD) -T _link.ld $(ARCH_OBJECTS) $(GENERIC_OBJECTS) $(LIBS) $(LFLAGS) -o $@ -Map $(OUTPUT).map
$(OUTPUT): $(ARCH_OBJECTS) $(GENERIC_OBJECTS) $(LIBS) arch/$(ARCH)/_link.ld
$(LD) -T arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENERIC_OBJECTS) $(LIBS) $(LFLAGS) -o $@ -Map $(OUTPUT).map
 
disasm:
$(OBJDUMP) -d -S -s $(OUTPUT) >$(OUTPUT).disasm
90,7 → 90,7
sections:
$(OBJDUMP) -h $(OUTPUT) >$(OUTPUT).sections
 
_link.ld: _link.ld.in
arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in
$(CC) $(DEFS) $(CFLAGS) -DLIBC_PREFIX=$(LIBC_PREFIX) -E -x c $< | grep -v "^\#" > $@
 
%.o: %.S
/branches/dynload/uspace/lib/libtest/arch/ppc32/_link.ld.in
0,0 → 1,85
ENTRY(__entry)
 
PHDRS {
text PT_LOAD FLAGS(5);
data PT_LOAD FLAGS(6);
dynamic PT_DYNAMIC;
}
 
SECTIONS {
. = 0x1000 + SIZEOF_HEADERS;
 
.init : {
*(.init);
} :text
.text : {
*(.text);
*(.text.*);
*(.rodata*);
} :text
 
.rel.plt : {
*(.rel.plt);
}
/*
*.rel.dyn MUST FOLLOW IMMEDIATELY after .rel.plt
* without alignment gap or DT_REL will be broken
*/
.rel.dyn : {
*(.rel.*);
} :text
 
.dynsym : {
*(.dynsym);
} :text
 
.dynstr : {
*(.dynstr);
} :text
 
. = . + 0x1000;
 
.dynamic : {
*(.dynamic);
} :data :dynamic
 
.data : {
*(.data);
*(.sdata);
} :data
 
.data.rel : {
*(.data.rel);
} :data
 
.got : {
*(.got);
} :data
.got.plt : {
*(.got.plt);
} :data
/*
.tdata : {
_tdata_start = .;
*(.tdata);
_tdata_end = .;
} :data
.tbss : {
_tbss_start = .;
*(.tbss);
_tbss_end = .;
} :data
_tls_alignment = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss));
.bss : {
*(.sbss);
*(COMMON);
*(.bss);
} :data
*/
.plt : {
*(.plt);
} :data
 
. = ALIGN(0x1000);
_heap = .;
}
/branches/dynload/uspace/lib/libtest/arch/ia32/_link.ld.in
0,0 → 1,85
ENTRY(__entry)
 
PHDRS {
text PT_LOAD FLAGS(5);
interp PT_INTERP;
data PT_LOAD FLAGS(6);
dynamic PT_DYNAMIC;
}
 
SECTIONS {
. = 0x1000 + SIZEOF_HEADERS;
 
.init : {
*(.init);
} :text
.text : {
*(.text);
*(.text.*);
*(.rodata*);
} :text
 
.rel.plt : {
*(.rel.plt);
}
/*
*.rel.dyn MUST FOLLOW IMMEDIATELY after .rel.plt
* without alignment gap or DT_REL will be broken
*/
.rel.dyn : {
*(.rel.*);
} :text
 
.plt : {
*(.plt);
} :text
 
.dynamic : {
*(.dynamic);
} :text :dynamic
 
.dynsym : {
*(.dynsym);
} :text
 
.dynstr : {
*(.dynstr);
} :text
 
. = . + 0x1000;
 
.data : {
*(.data);
} :data
 
.data.rel : {
*(.data.rel);
} :data
 
.got : {
*(.got);
} :data
.got.plt : {
*(.got.plt);
} :data
 
.bss : {
*(COMMON);
*(.bss);
} :data
/*
.tdata : {
_tdata_start = .;
*(.tdata);
_tdata_end = .;
} :data
.tbss : {
_tbss_start = .;
*(.tbss);
_tbss_end = .;
} :data
_tls_alignment = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss));
*/
. = ALIGN(0x1000);
_heap = .;
}
Property changes:
Added: svn:mergeinfo
/branches/dynload/uspace/lib/libc/shared/arch/ppc32/_link.ld.in
5,6 → 5,7
interp PT_INTERP;
text PT_LOAD FLAGS(5);
data PT_LOAD FLAGS(6);
dynamic PT_DYNAMIC;
}
 
SECTIONS {
37,10 → 38,6
*(.rel.*);
} :text
 
.dynamic : {
*(.dynamic);
} :text
 
.dynsym : {
*(.dynsym);
} :text
51,6 → 48,10
 
. = . + 0x1000;
 
.dynamic : {
*(.dynamic);
} :data :dynamic
 
.data : {
*(.data);
*(.sdata);
/branches/dynload/uspace/lib/libc/shared/arch/ppc32/_lib.ld.in
3,6 → 3,7
PHDRS {
text PT_LOAD FLAGS(5);
data PT_LOAD FLAGS(6);
dynamic PT_DYNAMIC;
}
 
SECTIONS {
28,10 → 29,6
*(.rel.*);
} :text
 
.dynamic : {
*(.dynamic);
} :text
 
.dynsym : {
*(.dynsym);
} :text
42,6 → 39,10
 
. = . + 0x1000;
 
.dynamic : {
*(.dynamic);
} :data :dynamic
 
.data : {
*(.data);
*(.sdata);
/branches/dynload/uspace/lib/libc/shared/arch/ia32/_lib.ld.in
2,7 → 2,6
 
PHDRS {
text PT_LOAD FLAGS(5);
interp PT_INTERP;
data PT_LOAD FLAGS(6);
dynamic PT_DYNAMIC;
}
34,10 → 33,6
*(.plt);
} :text
 
.dynamic : {
*(.dynamic);
} :text :dynamic
 
.dynsym : {
*(.dynsym);
} :text
48,6 → 43,10
 
. = . + 0x1000;
 
.dynamic : {
*(.dynamic);
} :data :dynamic
 
.data : {
*(.data);
} :data