This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Add dependencies on libc_nonshared.a for some tests


Currently, DSOs built by the glibc testsuite are linked without using
-nostdlib.  That means they have an implicit -lc, which would pick up
libc_nonshared.a if we were using the installed libc.so - but instead we get
the newly built libc.so.  This patch adds libc_nonshared.a to the
appropriate link lines.

I needed this for an ARM TLS patch which I'm working on.  The compiler
emits calls to __aeabi_read_tp to load the TLS pointer, and this function's
calling convention means that it must not be accessed through a PLT entry.

Look sane?

-- 
Daniel Jacobowitz
CodeSourcery, LLC

2005-04-25  Daniel Jacobowitz  <dan@codesourcery.com>

	* elf/Makefile, linuxthreads/Makefile, nptl/Makefile,
	dlfcn/Makefile: Add libc_nonshared.a dependency for modules.

Index: elf/Makefile
===================================================================
RCS file: /home/cvs/Repository/glibc/elf/Makefile,v
retrieving revision 1.1.7.1
diff -u -p -r1.1.7.1 Makefile
--- elf/Makefile	20 Jan 2005 02:18:22 -0000	1.1.7.1
+++ elf/Makefile	25 Apr 2005 22:07:03 -0000
@@ -461,7 +461,8 @@ reldep8mod2.so-no-z-defs = yes
 reldep9mod1.so-no-z-defs = yes
 
 # filtmod1.so has a special rule
-$(filter-out $(objpfx)filtmod1.so, $(test-modules)): $(objpfx)%.so: $(objpfx)%.os
+$(filter-out $(objpfx)filtmod1.so, $(test-modules)): $(objpfx)%.so: $(objpfx)%.os \
+						     $(common-objpfx)libc_nonshared.a
 	$(build-module)
 
 ifeq ($(build-shared),yes)
Index: linuxthreads/Makefile
===================================================================
RCS file: /home/cvs/Repository/glibc/linuxthreads/Makefile,v
retrieving revision 1.1.7.1
diff -u -p -r1.1.7.1 Makefile
--- linuxthreads/Makefile	20 Jan 2005 02:18:30 -0000	1.1.7.1
+++ linuxthreads/Makefile	25 Apr 2005 22:07:03 -0000
@@ -142,7 +142,8 @@ tst-tls1modd.so-no-z-defs = yes
 tst-tls1mode.so-no-z-defs = yes
 tst-tls1modf.so-no-z-defs = yes
 
-$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
+$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds \
+		 $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a
 	$(build-module)
 
 ifeq ($(build-shared),yes)
Index: nptl/Makefile
===================================================================
RCS file: /home/cvs/Repository/glibc/nptl/Makefile,v
retrieving revision 1.1.7.1
diff -u -p -r1.1.7.1 Makefile
--- nptl/Makefile	20 Jan 2005 02:18:36 -0000	1.1.7.1
+++ nptl/Makefile	25 Apr 2005 22:07:04 -0000
@@ -294,7 +294,8 @@ tst-tls5modd.so-no-z-defs = yes
 tst-tls5mode.so-no-z-defs = yes
 tst-tls5modf.so-no-z-defs = yes
 
-$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
+$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds \
+		 $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a
 	$(build-module)
 
 ifeq ($(build-shared),yes)
Index: dlfcn/Makefile
===================================================================
RCS file: /home/cvs/Repository/glibc/dlfcn/Makefile,v
retrieving revision 1.1.7.1
diff -u -p -r1.1.7.1 Makefile
--- dlfcn/Makefile	20 Jan 2005 02:18:22 -0000	1.1.7.1
+++ dlfcn/Makefile	25 Apr 2005 22:15:46 -0000
@@ -68,7 +68,8 @@ include ../Rules
 LDFLAGS-dl.so = -Wl,-dynamic-linker,$(slibdir)/$(rtld-installed-name)
 
 test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names)))
-$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
+$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds \
+		 $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a
 	$(build-module)
 
 ifeq ($(build-shared),yes)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]