From c29c176131a7843981f55b33776f97ee69edc716 Mon Sep 17 00:00:00 2001 From: obrien Date: Wed, 24 May 2000 20:02:21 +0000 Subject: [PATCH] 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. --- gnu/usr.bin/cc/cc1/Makefile | 3 ++- gnu/usr.bin/cc/cc1obj/Makefile | 2 +- gnu/usr.bin/cc/cc_int/Makefile | 2 +- 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 \