Changes in / [3f461ecf:afdcc60e] in mainline
- Location:
- uspace
- Files:
-
- 26 added
- 9 deleted
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/Makefile
r3f461ecf rafdcc60e 41 41 CONFIG_MAKEFILE = $(ROOT_PATH)/Makefile.config 42 42 43 LINKER_SCRIPTS = \44 $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld \45 $(LIBC_PREFIX)/arch/$(UARCH)/_link-loader.ld46 47 43 PRE_DEPEND = $(INCLUDE_KERNEL) $(INCLUDE_ARCH) $(INCLUDE_LIBARCH) $(COMMON_HEADER_ARCH) 48 EXTRA_OUTPUT = $(LINKER_SCRIPT S)49 EXTRA_CLEAN = $(INCLUDE_KERNEL) $(INCLUDE_ARCH) $(INCLUDE_LIBARCH) $(COMMON_HEADER_ARCH) $(LINKER_SCRIPT S)44 EXTRA_OUTPUT = $(LINKER_SCRIPT) 45 EXTRA_CLEAN = $(INCLUDE_KERNEL) $(INCLUDE_ARCH) $(INCLUDE_LIBARCH) $(COMMON_HEADER_ARCH) $(LINKER_SCRIPT) 50 46 LIBRARY = libc 51 47 … … 137 133 ln -sfn ../$< $@ 138 134 139 $(LI BC_PREFIX)/arch/$(UARCH)/_link.ld: $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld.in135 $(LINKER_SCRIPT): $(LINKER_SCRIPT).in 140 136 $(GCC) $(DEFS) $(CFLAGS) -DLIBC_PATH=$(CURDIR) -E -x c $< | grep -v "^\#" > $@ 141 142 $(LIBC_PREFIX)/arch/$(UARCH)/_link-loader.ld: $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld.in143 $(GCC) $(DEFS) $(CFLAGS) -DLIBC_PATH=$(CURDIR) -DLOADER -E -x c $< | grep -v "^\#" > $@144 137 145 138 $(COMMON_HEADER_ARCH): $(COMMON_HEADER) -
uspace/lib/c/arch/abs32le/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.c \ 31 arch/$(UARCH)/src/entryjmp.c \32 31 arch/$(UARCH)/src/thread_entry.c \ 33 32 arch/$(UARCH)/src/fibril.c \ -
uspace/lib/c/arch/abs32le/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .interp : { 17 *(.interp); 18 } :interp 10 . = 0x1000 + SIZEOF_HEADERS; 19 11 20 . = 0x70001000 + SIZEOF_HEADERS;21 #else22 . = 0x1000 + SIZEOF_HEADERS;23 #endif24 12 .text : { 25 13 *(.text .text.*); -
uspace/lib/c/arch/amd64/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.S \ -
uspace/lib/c/arch/amd64/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 debug PT_NOTE; … … 14 9 15 10 SECTIONS { 16 #ifdef LOADER 17 .interp : { 18 *(.interp); 19 } :interp 11 . = 0x1000 + SIZEOF_HEADERS; 20 12 21 . = 0x70001000 + SIZEOF_HEADERS;22 #else23 . = 0x1000 + SIZEOF_HEADERS;24 #endif25 13 .init : { 26 14 *(.init); -
uspace/lib/c/arch/arm32/Makefile.inc
r3f461ecf rafdcc60e 30 30 ARCH_SOURCES = \ 31 31 arch/$(UARCH)/src/entry.s \ 32 arch/$(UARCH)/src/entryjmp.s \33 32 arch/$(UARCH)/src/thread_entry.s \ 34 33 arch/$(UARCH)/src/syscall.c \ -
uspace/lib/c/arch/arm32/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .interp : { 17 *(.interp); 18 } :interp 10 . = 0x1000 + SIZEOF_HEADERS; 19 11 20 . = 0x70001000 + SIZEOF_HEADERS;21 #else22 . = 0x1000 + SIZEOF_HEADERS;23 #endif24 12 .init : { 25 13 *(.init); -
uspace/lib/c/arch/ia32/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.S \ -
uspace/lib/c/arch/ia32/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 debug PT_NOTE; … … 14 9 15 10 SECTIONS { 16 #ifdef LOADER17 .interp : {18 *(.interp);19 } :interp20 21 . = 0x70001000 + SIZEOF_HEADERS;22 #else23 11 . = 0x1000 + SIZEOF_HEADERS; 24 #endif 12 25 13 .init : { 26 14 *(.init); -
uspace/lib/c/arch/ia64/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.S \ -
uspace/lib/c/arch/ia64/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 5 text PT_LOAD FLAGS(5); 8 #else9 text PT_LOAD FLAGS(5);10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .interp : { 17 *(.interp); 18 } :interp 10 . = 0x4000 + SIZEOF_HEADERS; 19 11 20 . = 0x800000000 + SIZEOF_HEADERS;21 #else22 . = 0x4000 + SIZEOF_HEADERS;23 #endif24 /*25 * XXX This is just a work around. Problem: .init section does not26 * have the proper alignment.27 */28 . = ALIGN(., 16);29 30 12 .init : { 31 13 *(.init); -
uspace/lib/c/arch/mips32/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.c \ -
uspace/lib/c/arch/mips32/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .interp : { 17 *(.interp); 18 } :interp 10 . = 0x4000 + SIZEOF_HEADERS; 19 11 20 . = 0x70004000 + SIZEOF_HEADERS;21 #else22 . = 0x4000 + SIZEOF_HEADERS;23 #endif24 12 .init : { 25 13 *(.init); -
uspace/lib/c/arch/mips32eb/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.c \ -
uspace/lib/c/arch/ppc32/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/syscall.c \ -
uspace/lib/c/arch/ppc32/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .itnerp : { 17 *(.interp); 18 } :interp 10 . = 0x1000 + SIZEOF_HEADERS; 19 11 20 . = 0x70001000 + SIZEOF_HEADERS;21 #else22 . = 0x1000 + SIZEOF_HEADERS;23 #endif24 12 .init : { 25 13 *(.init); -
uspace/lib/c/arch/sparc64/Makefile.inc
r3f461ecf rafdcc60e 29 29 ARCH_SOURCES = \ 30 30 arch/$(UARCH)/src/entry.s \ 31 arch/$(UARCH)/src/entryjmp.s \32 31 arch/$(UARCH)/src/thread_entry.s \ 33 32 arch/$(UARCH)/src/fibril.S \ -
uspace/lib/c/arch/sparc64/_link.ld.in
r3f461ecf rafdcc60e 3 3 4 4 PHDRS { 5 #ifdef LOADER6 interp PT_INTERP;7 text PT_LOAD FILEHDR PHDRS FLAGS(5);8 #else9 5 text PT_LOAD FLAGS(5); 10 #endif11 6 data PT_LOAD FLAGS(6); 12 7 } 13 8 14 9 SECTIONS { 15 #ifdef LOADER 16 .interp : { 17 *(.interp); 18 } :interp 10 . = 0x4000 + SIZEOF_HEADERS; 19 11 20 . = 0x70004000 + SIZEOF_HEADERS;21 #else22 . = 0x4000 + SIZEOF_HEADERS;23 #endif24 12 .init : { 25 13 *(.init); -
uspace/srv/loader/Makefile
r3f461ecf rafdcc60e 36 36 -include $(COMMON_MAKEFILE) 37 37 -include $(CONFIG_MAKEFILE) 38 -include arch/$(UARCH)/Makefile.inc 38 39 39 LINKER_SCRIPT = $(LIBC_PREFIX)/arch/$(UARCH)/_link-loader.ld 40 LINKER_SCRIPT = arch/$(UARCH)/_link.ld 41 EXTRA_CLEAN = $(LINKER_SCRIPT) 40 42 41 43 EXTRA_CFLAGS = -Iinclude … … 53 55 54 56 include $(USPACE_PREFIX)/Makefile.common 57 58 $(LINKER_SCRIPT): $(LINKER_SCRIPT).in 59 $(GCC) $(DEFS) $(CFLAGS) -DLIBC_PREFIX=$(LIBC_PREFIX) -E -x c $< | grep -v "^\#" > $@ -
uspace/srv/loader/elf_load.c
r3f461ecf rafdcc60e 2 2 * Copyright (c) 2006 Sergey Bondari 3 3 * Copyright (c) 2006 Jakub Jermar 4 * Copyright (c) 20 11Jiri Svoboda4 * Copyright (c) 2008 Jiri Svoboda 5 5 * All rights reserved. 6 6 * … … 53 53 #include <smc.h> 54 54 #include <loader/pcb.h> 55 #include <entry_point.h>56 55 57 56 #include "elf.h" 58 57 #include "elf_load.h" 58 #include "arch.h" 59 59 60 60 #define DPRINTF(...) … … 136 136 void elf_run(elf_info_t *info, pcb_t *pcb) 137 137 { 138 entry_point_jmp(info->entry, pcb);138 program_run(info->entry, pcb); 139 139 140 140 /* not reached */
Note:
See TracChangeset
for help on using the changeset viewer.