1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-16 15:11:52 +00:00

Make GCC's back end be shared among all languages. cc, c++, and cpp now

no longer link against the whole library, since they don't require much
from it, but just compile the few small modules they actually need static.

This should save a measurable amount of space; compare:

-r-xr-xr-x  1 bin   bin   155648 Sep 18 18:00 cc1*
-r-xr-xr-x  1 root  bin  1048576 Sep 18 17:33 cc1.noshae*

Of course, the library takes up a bit of space, but when you add in the
savings from the C++ compiler, you more than make up the difference:

-r--r--r--  1 bin  bin  1157344 Sep 18 18:27 /usr/lib/libcc_int.so.26.0
-r-xr-xr-x  1 bin  bin  491520 Sep 18 18:27 /usr/libexec/cc1plus*
This commit is contained in:
Garrett Wollman 1994-09-18 22:35:55 +00:00
parent ac1a8b47c7
commit b4aca961be
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=2871
9 changed files with 19 additions and 25 deletions

View File

@ -1,5 +1,5 @@
#
# $FreeBSD$
# $Id$
#
PGMDIR= cc_int cpp cc1 cc cc1plus c++ libgcc

View File

@ -1,5 +1,5 @@
#
# $FreeBSD$
# $Id$
#
CFLAGS+= -I${.CURDIR} -I${.CURDIR}/../include
@ -19,4 +19,4 @@ LIBDESTDIR= ${.CURDIR}/../cc_int
# XXX LDDESTDIR isn't a directory and there is no standard name for the dir
LDDESTDIR= -L${LIBDESTDIR}
LIBCC_INT= ${LIBDESTDIR}/libcc_int.a
LIBCC_INT= ${LIBDESTDIR}/libcc_int.so.26.0

View File

@ -1,12 +1,10 @@
#
# $FreeBSD$
# $Id$
#
PROG = c++
SRCS = g++.c
BINDIR= /usr/bin
NOMAN= 1
DPADD+= ${LIBCC_INT}
LDADD+= -lcc_int
.include <bsd.prog.mk>

View File

@ -1,11 +1,10 @@
#
# $FreeBSD$
# $Id$
#
.PATH: ${.CURDIR}/../cc_int
PROG = cc
SRCS = gcc.c
SRCS = gcc.c obstack.c version.c
BINDIR= /usr/bin
DPADD+= ${LIBCC_INT}
LDADD+= -lcc_int
.include <bsd.prog.mk>

View File

@ -1,5 +1,5 @@
#
# $FreeBSD$
# $Id$
#
PROG = cc1

View File

@ -1,5 +1,5 @@
#
# $FreeBSD$
# $Id$
#
PROG = cc1plus

View File

@ -1,12 +1,11 @@
#
# $FreeBSD$
# $Id$
#
SRCS = aux-output.c bc-emit.c bc-optab.c c-common.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 final.c flow.c fold-const.c function.c getpwd.c global.c insn-attrtab.c insn-emit.c insn-extract.c insn-opinit.c insn-output.c insn-peep.c insn-recog.c integrate.c jump.c local-alloc.c loop.c obstack.c optabs.c print-rtl.c print-tree.c real.c recog.c reg-stack.c regclass.c reload.c reload1.c reorg.c rtl.c rtlanal.c sched.c sdbout.c stmt.c stor-layout.c stupid.c toplev.c tree.c unroll.c varasm.c version.c xcoffout.c
LIB = cc_int
NOPROFILE= 1
install:
@true
INTERNALLIB=
SHLIB_MAJOR=26
SHLIB_MINOR=0
.include <bsd.lib.mk>

View File

@ -1,11 +1,10 @@
#
# $FreeBSD$
# $Id$
#
.PATH: ${.CURDIR}/../cc_int
PROG = cpp
SRCS = cccp.c cexp.c
SRCS = cccp.c cexp.c obstack.c version.c
BINDIR= /usr/libexec
DPADD+= ${LIBCC_INT}
LDADD+= -lcc_int
.include <bsd.prog.mk>

View File

@ -1,11 +1,10 @@
#
# $FreeBSD$
# $Id$
#
.PATH: ${.CURDIR}/../cc_int
PROG = cpp
SRCS = cccp.c cexp.c
SRCS = cccp.c cexp.c obstack.c version.c
BINDIR= /usr/libexec
DPADD+= ${LIBCC_INT}
LDADD+= -lcc_int
.include <bsd.prog.mk>