This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
The makefile in sysdeps/ia64 modifies dl-routines and rtld-routines to get dl-symaddr and dl-fptr into the dynamic linker objects. This is wrong, a sysdep makefile should never modify generic object lists, only sysdep lists. It breaks `make dist' when running on ia64. This patch adds the necessary hooks to elf/Makefile that the sysdep makefile can use. Andreas. 2000-09-04 Andreas Schwab <schwab@suse.de> * elf/Makefile (all-dl-routines): New variable. (elide-routines.os): Use it instead of $(dl-routines). (all-rtld-routines): New variable. (extra-objs): Use it instead of $(rtld-routines). ($(objpfx)dl-allobjs.os): Likewise. * sysdeps/ia64/Makefile [$(subdir) = elf]: Modify sysdep-dl-routines and sysdep_routines instead of rtld-routines and dl-routines. Index: libc/elf/Makefile =================================================================== RCS file: /cvs/glibc/libc/elf/Makefile,v retrieving revision 1.172 diff -u -a -u -r1.172 libc/elf/Makefile --- libc/elf/Makefile 2000/08/26 23:23:41 1.172 +++ libc/elf/Makefile 2000/09/04 16:47:34 @@ -29,12 +29,15 @@ dl-routines = $(addprefix dl-,load cache lookup object reloc deps \ runtime error init fini debug misc \ version profile) +all-dl-routines = $(dl-routines) $(sysdep-dl-routines) # But they are absent from the shared libc, because that code is in ld.so. -elide-routines.os = $(dl-routines) dl-support enbl-secure +elide-routines.os = $(all-dl-routines) dl-support enbl-secure # ld.so uses those routines, plus some special stuff for being the program # interpreter and operating independent of libc. rtld-routines := rtld $(dl-routines) dl-sysdep dl-environ dl-minimal +all-rtld-routines = $(rtld-routines) $(sysdep-dl-routines) + distribute := $(rtld-routines:=.c) dynamic-link.h do-rel.h dl-machine.h \ dl-cache.h dl-hash.h soinit.c sofini.c ldd.bash.in \ genrtldtbl.awk atomicity.h dl-procinfo.h ldsodefs.h \ @@ -60,7 +63,7 @@ endif ifeq (yes,$(build-shared)) -extra-objs = $(rtld-routines:=.os) soinit.os sofini.os interp.os +extra-objs = $(all-rtld-routines:%=%.os) soinit.os sofini.os interp.os generated += librtld.os dl-allobjs.os ld.so ldd install-others = $(inst_slibdir)/$(rtld-installed-name) install-bin = ldd @@ -118,7 +121,7 @@ # Command to link into a larger single relocatable object. reloc-link = $(LINK.o) -nostdlib -nostartfiles -r -o $@ -$(objpfx)dl-allobjs.os: $(rtld-routines:%=$(objpfx)%.os) +$(objpfx)dl-allobjs.os: $(all-rtld-routines:%=$(objpfx)%.os) $(reloc-link) $^ # Link together the dynamic linker into a single relocatable object. Index: sysdeps/ia64/Makefile =================================================================== RCS file: /cvs/glibc/libc/sysdeps/ia64/Makefile,v retrieving revision 1.1 diff -u -a -u -r1.1 sysdeps/ia64/Makefile --- sysdeps/ia64/Makefile 2000/05/05 16:41:36 1.1 +++ sysdeps/ia64/Makefile 2000/09/04 16:45:02 @@ -3,6 +3,6 @@ endif ifeq ($(subdir),elf) -dl-routines += dl-symaddr dl-fptr -rtld-routines += dl-symaddr dl-fptr +sysdep-dl-routines += dl-symaddr dl-fptr +sysdep_routines += $(sysdep-dl-routines) endif -- Andreas Schwab "And now for something SuSE Labs completely different." Andreas.Schwab@suse.de SuSE GmbH, Schanzäckerstr. 10, D-90443 Nürnberg
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |