From d04645198d648a17ccb83e70aa5e6d60a06121aa Mon Sep 17 00:00:00 2001 From: Alexis211 Date: Fri, 18 Dec 2009 16:22:58 +0100 Subject: [nonworking commit] Started porting newlib --- Unix/i686-elf/lib/cygmon.ld | 101 ++++++++++++++++++++++++++++++++++++++++++ Unix/i686-elf/lib/libc.a | Bin 0 -> 2497228 bytes Unix/i686-elf/lib/libcygmon.a | Bin 0 -> 21698 bytes Unix/i686-elf/lib/libg.a | Bin 0 -> 2497228 bytes Unix/i686-elf/lib/libm.a | Bin 0 -> 876322 bytes Unix/i686-elf/lib/libnosys.a | Bin 0 -> 70616 bytes 6 files changed, 101 insertions(+) create mode 100644 Unix/i686-elf/lib/cygmon.ld create mode 100644 Unix/i686-elf/lib/libc.a create mode 100755 Unix/i686-elf/lib/libcygmon.a create mode 100644 Unix/i686-elf/lib/libg.a create mode 100644 Unix/i686-elf/lib/libm.a create mode 100755 Unix/i686-elf/lib/libnosys.a (limited to 'Unix/i686-elf/lib') diff --git a/Unix/i686-elf/lib/cygmon.ld b/Unix/i686-elf/lib/cygmon.ld new file mode 100644 index 0000000..ae0d908 --- /dev/null +++ b/Unix/i686-elf/lib/cygmon.ld @@ -0,0 +1,101 @@ +STARTUP(cygmon-crt0.o) +ENTRY(__start) +GROUP(-lcygmon -lc -lcygmon -lgcc) +SEARCH_DIR(.) +__DYNAMIC = 0; + +/* + * Allocate the stack to be at the top of memory, since the stack + * grows down + */ +PROVIDE (__stack = 0x500000); + +/* + * Initalize some symbols to be zero so we can reference them in the + * crt0 without core dumping. These functions are all optional, but + * we do this so we can have our crt0 always use them if they exist. + * This is so BSPs work better when using the crt0 installed with gcc. + * We have to initalize them twice, so we multiple object file + * formats, as some prepend an underscore. + */ +PROVIDE (hardware_init_hook = 0); +PROVIDE (software_init_hook = 0); +PROVIDE (__mem_start = 0x100000); +PROVIDE (___mem_start = 0x100000); +SECTIONS +{ + . = 0x100000; + .text : { + _ftext = . ; + *(.init) + eprol = .; + *(.text) + PROVIDE (__runtime_reloc_start = .); + *(.rel.sdata) + PROVIDE (__runtime_reloc_stop = .); + *(.fini) + . = ALIGN(4); + __CTOR_LIST__ = .; + CONSTRUCTORS + LONG(-1) + *(.ctors) + LONG(0) + __CTOR_END__ = .; + __DTOR_LIST__ = .; + LONG(-1) + *(.dtors) + LONG(0) + __DTOR_END__ = .; + PROVIDE(_etext = .); + PROVIDE(__etext = .); + } + . = .; + .rdata : { + *(.rdata) + } + .rodata : { + *(.rodata) + *(.rodata.*) + } + .eh_frame : + { + PROVIDE (__EH_FRAME_BEGIN__ = .); + *(.eh_frame) + PROVIDE (__EH_FRAME_END__ = .); + } + _fdata = ALIGN(16); + .data : { + *(.data) + *(.gcc_except_table) + *(.gcc_exc) + } + . = ALIGN(8); + _gp = . + 0x8000; + __global = . + 0x8000; + .lit8 : { + *(.lit8) + } + .lit4 : { + *(.lit4) + } + .sdata : { + *(.sdata) + } + . = ALIGN(4); + PROVIDE(_edata = .); + PROVIDE(__edata = .); + fbss = .; + _fbss = .; + .sbss : { + PROVIDE(__bss_start = .); + *(.sbss) + *(.scommon) + } + .bss : { + *(.bss) + *(COMMON) + PROVIDE(__bss_end = .); + } + PROVIDE(_end = .); + PROVIDE(__end = .); +} diff --git a/Unix/i686-elf/lib/libc.a b/Unix/i686-elf/lib/libc.a new file mode 100644 index 0000000..c49a874 Binary files /dev/null and b/Unix/i686-elf/lib/libc.a differ diff --git a/Unix/i686-elf/lib/libcygmon.a b/Unix/i686-elf/lib/libcygmon.a new file mode 100755 index 0000000..a33cb42 Binary files /dev/null and b/Unix/i686-elf/lib/libcygmon.a differ diff --git a/Unix/i686-elf/lib/libg.a b/Unix/i686-elf/lib/libg.a new file mode 100644 index 0000000..c49a874 Binary files /dev/null and b/Unix/i686-elf/lib/libg.a differ diff --git a/Unix/i686-elf/lib/libm.a b/Unix/i686-elf/lib/libm.a new file mode 100644 index 0000000..1f6e357 Binary files /dev/null and b/Unix/i686-elf/lib/libm.a differ diff --git a/Unix/i686-elf/lib/libnosys.a b/Unix/i686-elf/lib/libnosys.a new file mode 100755 index 0000000..ba78734 Binary files /dev/null and b/Unix/i686-elf/lib/libnosys.a differ -- cgit v1.2.3