From cd6c2db41392a5f0f454300b6241344e498be89d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Mon, 21 Mar 2005 19:11:12 +0000 Subject: [PATCH] Removed rld0.c (more or less merged its contents with rld.c). Renamed RLD_STARTUP() runtime_loader() - the new entry point of the loader. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11943 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kernel/runtime_loader/Jamfile | 2 -- src/kernel/runtime_loader/arch/ppc/rld.ld | 2 +- src/kernel/runtime_loader/arch/x86/rld.ld | 2 +- src/kernel/runtime_loader/rld.c | 22 +++++++++++++++++----- src/kernel/runtime_loader/rld0.c | 18 ------------------ src/kernel/runtime_loader/rld_priv.h | 3 +-- 6 files changed, 20 insertions(+), 29 deletions(-) delete mode 100644 src/kernel/runtime_loader/rld0.c diff --git a/src/kernel/runtime_loader/Jamfile b/src/kernel/runtime_loader/Jamfile index a5849f369e..e0d12c63d0 100644 --- a/src/kernel/runtime_loader/Jamfile +++ b/src/kernel/runtime_loader/Jamfile @@ -2,7 +2,6 @@ SubDir OBOS_TOP src kernel runtime_loader ; KernelObjects rld.c - rld0.c rldexport.c rldelf.c rldheap.c @@ -48,7 +47,6 @@ KernelStaticLibraryObjects librld.a : ; KernelLd rld.so : - <$(SOURCE_GRIST)>rld0.o <$(SOURCE_GRIST)>rld.o <$(SOURCE_GRIST)>rldelf.o <$(SOURCE_GRIST)>rldexport.o diff --git a/src/kernel/runtime_loader/arch/ppc/rld.ld b/src/kernel/runtime_loader/arch/ppc/rld.ld index 8fa2176153..55698b1053 100644 --- a/src/kernel/runtime_loader/arch/ppc/rld.ld +++ b/src/kernel/runtime_loader/arch/ppc/rld.ld @@ -1,7 +1,7 @@ OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc", "elf32-powerpc") OUTPUT_ARCH(powerpc) -ENTRY(RLD_STARTUP) +ENTRY(runtime_loader) SEARCH_DIR("libgcc"); SECTIONS { diff --git a/src/kernel/runtime_loader/arch/x86/rld.ld b/src/kernel/runtime_loader/arch/x86/rld.ld index 97119f3727..7672084655 100644 --- a/src/kernel/runtime_loader/arch/x86/rld.ld +++ b/src/kernel/runtime_loader/arch/x86/rld.ld @@ -1,7 +1,7 @@ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) -ENTRY(RLD_STARTUP) +ENTRY(runtime_loader) SEARCH_DIR("libgcc"); SECTIONS { diff --git a/src/kernel/runtime_loader/rld.c b/src/kernel/runtime_loader/rld.c index 567b7f0d7f..8f1a50e297 100644 --- a/src/kernel/runtime_loader/rld.c +++ b/src/kernel/runtime_loader/rld.c @@ -1,7 +1,10 @@ /* -** Copyright 2002, Manuel J. Petit. All rights reserved. -** Distributed under the terms of the NewOS License. -*/ + * Copyright 2005, Axel Dörfler, axeld@pinc-software.de. + * Distributed under the terms of the MIT License. + * + * Copyright 2002, Manuel J. Petit. All rights reserved. + * Distributed under the terms of the NewOS License. + */ #include @@ -10,14 +13,23 @@ #include "rld_priv.h" +/** This is the main entry point of the runtime loader as + * specified by its ld-script. + */ + int -rldmain(void *_args) +runtime_loader(void *_args) { struct uspace_program_args *args = (struct uspace_program_args *)_args; void *entry = 0; - rldheap_init(); +#if DEBUG_RLD + close(0); open("/dev/console", 0); /* stdin */ + close(1); open("/dev/console", 0); /* stdout */ + close(2); open("/dev/console", 0); /* stderr */ +#endif + rldheap_init(); rldexport_init(args); rldelf_init(args); diff --git a/src/kernel/runtime_loader/rld0.c b/src/kernel/runtime_loader/rld0.c deleted file mode 100644 index 5da01d5eab..0000000000 --- a/src/kernel/runtime_loader/rld0.c +++ /dev/null @@ -1,18 +0,0 @@ -/* -** Copyright 2002, Manuel J. Petit. All rights reserved. -** Distributed under the terms of the NewOS License. -*/ - -#include "rld_priv.h" - - -int RLD_STARTUP(void *args) -{ -#if DEBUG_RLD - close(0); open("/dev/console", 0); /* stdin */ - close(1); open("/dev/console", 0); /* stdout */ - close(2); open("/dev/console", 0); /* stderr */ -#endif - return rldmain(args); -} - diff --git a/src/kernel/runtime_loader/rld_priv.h b/src/kernel/runtime_loader/rld_priv.h index 09d10aaad3..a002a13c65 100644 --- a/src/kernel/runtime_loader/rld_priv.h +++ b/src/kernel/runtime_loader/rld_priv.h @@ -12,8 +12,7 @@ #include -int RLD_STARTUP(void *); -int rldmain(void *arg); +int runtime_loader(void *arg); status_t unload_program(image_id imageID); image_id load_program(char const *path, void **entry);