aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-05-24 20:02:21 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-05-24 20:02:21 +0000
commit8e5f64732be4669c810b37417247fdeaa8cc739f (patch)
tree8beb46aedbe7221aef26cb5684941b347108a694 /gnu
parenta4f66d8f4c24b056027ea7a725cbfa292490f0fc (diff)
downloadsrc-8e5f64732be4669c810b37417247fdeaa8cc739f.tar.gz
src-8e5f64732be4669c810b37417247fdeaa8cc739f.zip
Move c-decl.c out of the common libcc_int.a into the binary Makefiles
where it is used. c-decl has symbols that conflict with several of the cc1plus sources. GNU `ld' was changed in Dec 1999 to be more be compatable with the way that other linkers work (specifically in the Solaris linker). The 2.9.1 `ld', did the Wrong Thing in that if a library contained a common symbol that matched a definition of that symbol in another (already linked in object) it would also be linked in, even if there was no other reason to do so. This is wrong. The library should only be linked in if it contains non-common, non-weak symbols which are needed by previously linked in objects.
Notes
Notes: svn path=/head/; revision=60884
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/cc/cc1/Makefile3
-rw-r--r--gnu/usr.bin/cc/cc1obj/Makefile2
-rw-r--r--gnu/usr.bin/cc/cc_int/Makefile2
3 files changed, 4 insertions, 3 deletions
diff --git a/gnu/usr.bin/cc/cc1/Makefile b/gnu/usr.bin/cc/cc1/Makefile
index 3b2a63de937a..573fc52af374 100644
--- a/gnu/usr.bin/cc/cc1/Makefile
+++ b/gnu/usr.bin/cc/cc1/Makefile
@@ -6,7 +6,8 @@
PROG= cc1
SRCS= c-parse.c c-parse.h c-lang.c
-SRCS+= c-lex.c
+# Ugh, compiled twice...
+SRCS+= c-decl.c c-lex.c
BINDIR= /usr/libexec
NOMAN= 1
NOSHARED=yes
diff --git a/gnu/usr.bin/cc/cc1obj/Makefile b/gnu/usr.bin/cc/cc1obj/Makefile
index 7bd4984fdf46..c0fd806dbbd3 100644
--- a/gnu/usr.bin/cc/cc1obj/Makefile
+++ b/gnu/usr.bin/cc/cc1obj/Makefile
@@ -7,7 +7,7 @@
PROG= cc1obj
SRCS= objc-parse.c objc-parse.h objc-parse.h objc-act.c
# Ugh, compiled twice...
-SRCS+= c-lex.c
+SRCS+= c-decl.c c-lex.c
BINDIR= /usr/libexec
NOMAN= 1
NOSHARED=yes
diff --git a/gnu/usr.bin/cc/cc_int/Makefile b/gnu/usr.bin/cc/cc_int/Makefile
index afb37867cc99..aa15d23e0d1c 100644
--- a/gnu/usr.bin/cc/cc_int/Makefile
+++ b/gnu/usr.bin/cc/cc_int/Makefile
@@ -8,7 +8,7 @@ LIB= cc_int
NOPROFILE= YES
NOPIC= YES
-SRCS= c-aux-info.c c-common.c c-convert.c c-decl.c c-iterate.c \
+SRCS= c-aux-info.c c-common.c c-convert.c c-iterate.c \
c-pragma.c c-typeck.c \
caller-save.c calls.c combine.c convert.c cse.c \
dbxout.c dwarfout.c emit-rtl.c explow.c expmed.c expr.c \