about summary refs log tree commit diff
path: root/sysdeps/powerpc/powerpc64
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-09-27 19:45:50 +0000
committerRoland McGrath <roland@gnu.org>2002-09-27 19:45:50 +0000
commitd54bcd1e22ee2d2c8924341afca99a79d5075bbf (patch)
tree2a53ce3435a0e123554404f3fd2fd9cb08130401 /sysdeps/powerpc/powerpc64
parent82c02215ce32f5f3e77ccce6d6ab8124f60c28b3 (diff)
downloadglibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.tar.gz
glibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.tar.xz
glibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.zip
* sysdeps/powerpc/powerpc64/Makefile
	[$(build-shared) = yes] (pic-ccflag): Define it.
	[$(subdir) = csu] (CFLAGS-initfini.s): Add -fpic here too.
Diffstat (limited to 'sysdeps/powerpc/powerpc64')
-rw-r--r--sysdeps/powerpc/powerpc64/Makefile16
1 files changed, 10 insertions, 6 deletions
diff --git a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
index ff6819a63f..0ecba53650 100644
--- a/sysdeps/powerpc/powerpc64/Makefile
+++ b/sysdeps/powerpc/powerpc64/Makefile
@@ -4,16 +4,20 @@
 +cflags += -Wa,-mppc64 -mpowerpc64
 asm-CPPFLAGS += -Wa,-mppc64
 
-# On PPC64, -fpic is the default so we don't need to specify it. 
-# Also early compilers would issue a warning if -fpic was specified.
-# Each TOC entry takes 8 bytes and the TOC holds up to 2^16 bytes, 
-# or 8192 entries.  If the TOC fills up try -minimal-toc.
+# Each TOC entry takes 8 bytes and the TOC holds up to 2^16 bytes,
+# or 8192 entries.
+# If -fpic is not specified, the latest gcc-3.2.1 now generates
+# different code for call stubs (without the TOC reload).
+# Shared objects need the TOC reload so specify -fpic.
+ifeq (yes,$(build-shared))
+pic-ccflag = -fpic
+endif
 
 ifeq ($(subdir),csu)
 ifneq ($(elf),no)
-# The initfini generation code doesn't work in the presence of -g1 or 
+# The initfini generation code doesn't work in the presence of -g1 or
 # higher, so we use -g0.
-CFLAGS-initfini.s = -g0 -O1
+CFLAGS-initfini.s = -g0 -fpic -O1
 endif
 endif