summaryrefslogtreecommitdiff
path: root/csu
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-01-16 22:37:27 +0000
committerRoland McGrath <roland@gnu.org>1996-01-16 22:37:27 +0000
commit294897f4a6c1ef2fe408e37670e2bfbb0bf8a77d (patch)
treed67879021aecbb4a4c042b9460a65acafdb852d2 /csu
parentd008bcf32c5af4dc80a37cd6cc0bd29982a69e53 (diff)
[have-initfini=yes] (CPPFLAGS): Append -DHAVE_INITFINI. (initfini): Compile initfini.c with -fPIC.
Diffstat (limited to 'csu')
-rw-r--r--csu/Makefile8
1 files changed, 5 insertions, 3 deletions
diff --git a/csu/Makefile b/csu/Makefile
index 4fddba2f3a..144a82653a 100644
--- a/csu/Makefile
+++ b/csu/Makefile
@@ -1,6 +1,6 @@
# Makefile for csu code for GNU C library.
-# Copyright (C) 1995 Free Software Foundation, Inc.
+# Copyright (C) 1995, 1996 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
@@ -48,7 +48,7 @@ start-installed-name = crt0.o
else
-# In the ELF universe, crt0.o is called crt1.o, and there are
+# In the ELF universe, crt0.o is called crt1.o, and there are
# some additional bizarre files.
start-installed-name = crt1.o
have-initfini = yes
@@ -57,6 +57,8 @@ endif
ifeq (yes,$(have-initfini))
+CPPFLAGS += -DHAVE_INITFINI
+
# These are the special initializer/finalizer files. They are always the
# first and last file in the link. crti.o ... crtn.o define the global
# "functions" _init and _fini to run the .init and .fini sections.
@@ -77,7 +79,7 @@ define initfini
-rm -f $(objpfx)crtcommon.tmp
(echo 'cat > crtcommon.tmp <<\EOF_common'; \
$(CC) $< $(CPPFLAGS) $(CFLAGS) \
- -finhibit-size-directive -g0 -S -o -; \
+ -fPIC -finhibit-size-directive -g0 -S -o -; \
echo 'EOF_common') | (cd $(@D); $(SHELL))
cat $(objpfx)crtcommon.tmp >> $(objpfx)crti.s-new
cat $(objpfx)crtcommon.tmp >> $(objpfx)crtn.s-new