aboutsummaryrefslogtreecommitdiff
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
parent82c02215ce32f5f3e77ccce6d6ab8124f60c28b3 (diff)
downloadglibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.zip
glibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.tar.gz
glibc-d54bcd1e22ee2d2c8924341afca99a79d5075bbf.tar.bz2
* sysdeps/powerpc/powerpc64/Makefile
[$(build-shared) = yes] (pic-ccflag): Define it. [$(subdir) = csu] (CFLAGS-initfini.s): Add -fpic here too.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/powerpc/powerpc64/Makefile16
2 files changed, 16 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 16e3fc3..445a27b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2002-09-27 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/Makefile
+ [$(build-shared) = yes] (pic-ccflag): Define it.
+ [$(subdir) = csu] (CFLAGS-initfini.s): Add -fpic here too.
+
2002-09-27 Roland McGrath <roland@redhat.com>
* sysdeps/x86_64/dl-machine.h (elf_machine_type_class): Remove
diff --git a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
index ff6819a..0ecba53 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