From 066d0837ffd09cca2eabbe7208497df11c577276 Mon Sep 17 00:00:00 2001 From: Joakim Tjernlund Date: Fri, 12 Aug 2005 23:10:22 +0000 Subject: Remove hardcoded ld-uClibc.so.0 name in ldso. --- ldso/Makefile | 4 +--- ldso/include/ldso.h | 1 - ldso/ldso/Makefile | 2 +- ldso/ldso/ldso.c | 5 ++--- 4 files changed, 4 insertions(+), 8 deletions(-) (limited to 'ldso') diff --git a/ldso/Makefile b/ldso/Makefile index b7ce3625a..dd7ff2052 100644 --- a/ldso/Makefile +++ b/ldso/Makefile @@ -44,10 +44,8 @@ $(LN_HEADERS): $(LN_ARCH_HEADERS): $(LN) -fs ../ldso/$(TARGET_ARCH)/$(patsubst include/%,%,$@) $@ include/dl-progname.h: - echo 'const char *_dl_progname="$(UCLIBC_LDSO)";' \ - > include/dl-progname.h echo '#include "$(TARGET_ARCH)/elfinterp.c"' \ - >> include/dl-progname.h + > include/dl-progname.h clean: set -e ; for d in $(DIRS) ; do $(MAKE) -C $$d $@ ; done diff --git a/ldso/include/ldso.h b/ldso/include/ldso.h index db3fe054c..ceb8aaeb1 100644 --- a/ldso/include/ldso.h +++ b/ldso/include/ldso.h @@ -44,7 +44,6 @@ extern char *_dl_ldsopath; /* Where the shared lib loader was found extern const char *_dl_progname; /* The name of the executable being run */ extern int _dl_secure; /* Are we dealing with setuid stuff? */ extern size_t _dl_pagesize; /* Store the page size for use later */ -extern const char *_dl_progname; /* The name of the shared library loader */ #ifdef __SUPPORT_LD_DEBUG__ extern char *_dl_debug; diff --git a/ldso/ldso/Makefile b/ldso/ldso/Makefile index fff4809ad..cb105af2d 100644 --- a/ldso/ldso/Makefile +++ b/ldso/ldso/Makefile @@ -40,7 +40,7 @@ XXFLAGS+=-Os -g else XXFLAGS+=$(OPTIMIZATION) endif -XXFLAGS+= $(XARCH_CFLAGS) $(CPU_CFLAGS) $(PICFLAG) \ +XXFLAGS+= -DUCLIBC_LDSO=\"$(UCLIBC_LDSO)\" $(XARCH_CFLAGS) $(CPU_CFLAGS) $(PICFLAG) \ -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" \ -fno-builtin -nostdinc -D_LIBC -I$(TOPDIR)ldso/include -I. -I$(TOPDIR)include diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c index 709d58d25..db250f0be 100644 --- a/ldso/ldso/ldso.c +++ b/ldso/ldso/ldso.c @@ -64,7 +64,7 @@ int _dl_debug_file = 2; /* Needed for standalone execution. */ unsigned long attribute_hidden _dl_skip_args = 0; - +const char *_dl_progname = UCLIBC_LDSO; /* The name of the executable being run */ #include "dl-startup.c" /* Forward function declarations */ static int _dl_suid_ok(void); @@ -83,7 +83,6 @@ static unsigned char *_dl_mmap_zero = 0; /* Also used by _dl_malloc */ static struct elf_resolve **init_fini_list; static int nlist; /* # items in init_fini_list */ - extern void _start(void); static void __attribute__ ((destructor)) __attribute_used__ _dl_fini(void) @@ -539,7 +538,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, unsigned long load_addr, lpntstr = (char*) (tcurr->dynamic_info[DT_STRTAB] + dpnt->d_un.d_val); name = _dl_get_last_path_component(lpntstr); - if (_dl_strcmp(name, "ld-uClibc.so.0") == 0) + if (_dl_strcmp(name, UCLIBC_LDSO) == 0) continue; _dl_if_debug_dprint("\tfile='%s'; needed by '%s'\n", lpntstr, _dl_progname); -- cgit v1.2.3