head	1.26;
access;
symbols
	RELENG_4_11_0_RELEASE:1.16.2.3
	RELENG_4_11:1.16.2.3.0.16
	RELENG_4_11_BP:1.16.2.3
	RELENG_4_10_0_RELEASE:1.16.2.3
	RELENG_4_10:1.16.2.3.0.14
	RELENG_4_10_BP:1.16.2.3
	RELENG_5_2_1_RELEASE:1.24
	RELENG_5_2_0_RELEASE:1.24
	RELENG_5_2:1.24.0.6
	RELENG_5_2_BP:1.24
	RELENG_4_9_0_RELEASE:1.16.2.3
	RELENG_4_9:1.16.2.3.0.12
	RELENG_4_9_BP:1.16.2.3
	RELENG_5_1_0_RELEASE:1.24
	RELENG_5_1:1.24.0.4
	RELENG_5_1_BP:1.24
	RELENG_4_8_0_RELEASE:1.16.2.3
	RELENG_4_8:1.16.2.3.0.10
	RELENG_4_8_BP:1.16.2.3
	RELENG_5_0_0_RELEASE:1.24
	RELENG_5_0:1.24.0.2
	RELENG_5_0_BP:1.24
	RELENG_4_7_0_RELEASE:1.16.2.3
	RELENG_4_7:1.16.2.3.0.8
	RELENG_4_7_BP:1.16.2.3
	RELENG_4_6_2_RELEASE:1.16.2.3
	RELENG_4_6_1_RELEASE:1.16.2.3
	RELENG_4_6_0_RELEASE:1.16.2.3
	RELENG_4_6:1.16.2.3.0.6
	RELENG_4_6_BP:1.16.2.3
	RELENG_4_5_0_RELEASE:1.16.2.3
	RELENG_4_5:1.16.2.3.0.4
	RELENG_4_5_BP:1.16.2.3
	WIP_GCC31:1.20.0.2
	WIP_GCC31_BP:1.20
	RELENG_4_4_0_RELEASE:1.16.2.3
	RELENG_4_4:1.16.2.3.0.2
	RELENG_4_4_BP:1.16.2.3
	RELENG_4_3_0_RELEASE:1.16.2.1
	RELENG_4_3:1.16.2.1.0.2
	RELENG_4_3_BP:1.16.2.1
	BEFORE_GCC_2_95_3:1.16
	BEFORE_GCC_2_95_3_TEST3:1.17
	RELENG_4_2_0_RELEASE:1.16
	RELENG_4_1_1_RELEASE:1.16
	PRE_SMPNG:1.16
	RELENG_4_1_0_RELEASE:1.16
	BEFORE_GCC_2_96_SNAPSHOT:1.16
	RELENG_4_0_0_RELEASE:1.16
	RELENG_4:1.16.0.2
	RELENG_4_BP:1.16
	old_BEFORE_GCC_2_95_1:1.15
	old_RELENG_3_3_0_RELEASE:1.11.2.1
	old_RELENG_3_2_PAO:1.11.0.4
	old_RELENG_3_2_PAO_BP:1.11
	old_RELENG_3_2_0_RELEASE:1.11
	old_RELENG_3_1_0_RELEASE:1.11
	old_RELENG_3:1.11.0.2
	old_RELENG_3_BP:1.11
	old_RELENG_2_2_8_RELEASE:1.7.2.1
	old_RELENG_3_0_0_RELEASE:1.11
	old_RELENG_2_2_7_RELEASE:1.7.2.1
	old_RELENG_2_2_6_RELEASE:1.7.2.1
	old_RELENG_2_2_5_RELEASE:1.7
	old_RELENG_2_2_2_RELEASE:1.7
	old_RELENG_2_2_1_RELEASE:1.7
	old_RELENG_2_2_0_RELEASE:1.7
	old_RELENG_2_1_7_RELEASE:1.4
	old_RELENG_2_1_6_1_RELEASE:1.4
	old_RELENG_2_1_6_RELEASE:1.4
	old_RELENG_2_2:1.7.0.2
	old_RELENG_2_2_BP:1.7
	old_gcc_2_6_3_final:1.4
	old_RELENG_2_1_5_RELEASE:1.4
	old_RELENG_2_1_0_RELEASE:1.4
	old_RELENG_2_1_0:1.4.0.4
	old_RELENG_2_1_0_BP:1.4
	old_RELENG_2_0_5_RELEASE:1.4
	old_RELENG_2_0_5:1.4.0.2
	old_RELENG_2_0_5_BP:1.4
	old_RELENG_2_0_5_ALPHA:1.4
	old_RELEASE_2_0:1.4
	old_BETA_2_0:1.4
	old_ALPHA_2_0:1.3.0.2
	old_gcc_2_6_0_bmake1:1.1.1.1
	old_gcc_2_6_0_bmake:1.1.1.1
	old_gnu:1.1.1;
locks; strict;
comment	@# @;


1.26
date	2004.05.29.04.02.20;	author kan;	state dead;
branches;
next	1.25;

1.25
date	2004.02.05.22.44.21;	author ru;	state Exp;
branches;
next	1.24;

1.24
date	2002.05.13.03.27.02;	author obrien;	state Exp;
branches;
next	1.23;

1.23
date	2002.05.12.12.06.19;	author obrien;	state Exp;
branches;
next	1.22;

1.22
date	2002.05.10.08.54.47;	author obrien;	state Exp;
branches;
next	1.21;

1.21
date	2002.04.08.18.48.38;	author obrien;	state Exp;
branches;
next	1.20;

1.20
date	2001.03.27.14.58.38;	author ru;	state Exp;
branches
	1.20.2.1;
next	1.19;

1.19
date	2001.02.28.10.46.50;	author obrien;	state Exp;
branches;
next	1.18;

1.18
date	2001.02.17.09.46.41;	author obrien;	state Exp;
branches;
next	1.17;

1.17
date	2001.01.04.02.16.23;	author obrien;	state Exp;
branches;
next	1.16;

1.16
date	2000.01.02.22.57.32;	author obrien;	state Exp;
branches
	1.16.2.1;
next	1.15;

1.15
date	99.11.04.04.46.03;	author obrien;	state Exp;
branches;
next	1.14;

1.14
date	99.08.27.23.35.18;	author peter;	state Exp;
branches;
next	1.13;

1.13
date	99.07.28.07.22.07;	author obrien;	state Exp;
branches;
next	1.12;

1.12
date	99.04.04.16.36.35;	author obrien;	state Exp;
branches;
next	1.11;

1.11
date	98.05.04.16.58.50;	author bde;	state Exp;
branches
	1.11.2.1;
next	1.10;

1.10
date	97.10.05.09.39.08;	author jkh;	state Exp;
branches;
next	1.9;

1.9
date	97.02.22.15.44.59;	author peter;	state Exp;
branches;
next	1.8;

1.8
date	97.01.14.05.56.56;	author jkh;	state Exp;
branches;
next	1.7;

1.7
date	96.09.23.16.12.38;	author bde;	state Exp;
branches
	1.7.2.1;
next	1.6;

1.6
date	96.09.23.04.14.30;	author peter;	state Exp;
branches;
next	1.5;

1.5
date	96.09.19.15.47.24;	author peter;	state Exp;
branches;
next	1.4;

1.4
date	94.11.15.04.52.05;	author phk;	state Exp;
branches
	1.4.4.1;
next	1.3;

1.3
date	94.09.18.22.35.55;	author wollman;	state Exp;
branches;
next	1.2;

1.2
date	94.08.28.18.48.09;	author bde;	state Exp;
branches;
next	1.1;

1.1
date	94.08.02.20.15.49;	author phk;	state Exp;
branches
	1.1.1.1;
next	;

1.20.2.1
date	2001.12.18.03.20.31;	author obrien;	state Exp;
branches;
next	1.20.2.2;

1.20.2.2
date	2002.04.06.23.15.14;	author obrien;	state Exp;
branches;
next	;

1.16.2.1
date	2001.04.10.19.23.41;	author obrien;	state Exp;
branches;
next	1.16.2.2;

1.16.2.2
date	2001.04.25.12.03.29;	author ru;	state Exp;
branches;
next	1.16.2.3;

1.16.2.3
date	2001.08.01.18.48.34;	author obrien;	state Exp;
branches;
next	1.16.2.4;

1.16.2.4
date	2012.11.17.07.23.02;	author svnexp;	state Exp;
branches;
next	;

1.11.2.1
date	99.08.29.14.32.41;	author peter;	state Exp;
branches;
next	;

1.7.2.1
date	97.10.26.22.47.43;	author jkh;	state Exp;
branches;
next	1.7.2.2;

1.7.2.2
date	99.09.05.11.06.20;	author peter;	state Exp;
branches;
next	;

1.4.4.1
date	99.09.05.11.10.52;	author peter;	state Exp;
branches;
next	;

1.1.1.1
date	94.08.02.20.15.50;	author phk;	state Exp;
branches;
next	;


desc
@@


1.26
log
@Remove componenst which are not part of GCC 3.3 and which are not likely
to get used again in the future.
@
text
@# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.25 2004/02/05 22:44:21 ru Exp $

.include "../Makefile.inc"

.PATH: ${GCCDIR}

PROG=	cpp0
SRCS=	cppmain.c c-parse+%DIKED.c c-lang.c c-decl.c

BINDIR=	/usr/libexec
NOMAN=	1
NOSHARED?=yes

DPADD=	${LIBCC_INT}
LDADD=	${LIBCC_INT}

#-----------------------------------------------------------------------
# C parser

c-parse+%DIKED.c: c-parse.c
	sed -e "s/malloc/xmalloc/g" \
	    -e "s/realloc/xrealloc/g" \
	    ${.ALLSRC} > ${.TARGET}

c-parse.y: c-parse.in
	sed -e "/^ifobjc$$/,/^end ifobjc$$/d" \
	    -e "/^ifc$$/d" \
	    -e "/^end ifc$$/d" \
	    ${.ALLSRC} > ${.TARGET}

CLEANFILES=	c-parse+%DIKED.c c-parse.c c-parse.y
CLEANFILES+=	y.tab.h # we don't use it, but the system YACC rules are naive

#-----------------------------------------------------------------------

.include <bsd.prog.mk>
@


1.25
log
@Fixed style of DPADD and LDADD assignments as per style.Makefile(5).
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.24
log
@Restore some of the implementation from the Bmake gcc 2.95 bits.
In the end, I can do things more like the previous Bmake bits than was
apparent in the middle of the gcc31 WIP.
@
text
@d14 2
a15 2
DPADD+=	${LIBCC_INT}
LDADD+=	${LIBCC_INT}
@


1.23
log
@Tidy up the cleanfiles.
@
text
@d8 1
a8 1
SRCS=	cppmain.c c-parse.c c-lang.c c-decl.c
d19 7
a25 2
.ORDER: c-parse.c
c-parse.c: c-parse.in
d29 1
a29 5
	    ${GCCDIR}/c-parse.in > c-parse.y
	${YACC} -o c-parse.c.in c-parse.y
	sed -e "s/malloc/xmalloc/g" \
	    -e "s/realloc/xrealloc/g" \
	    c-parse.c.in >c-parse.c
d31 2
a32 1
CLEANFILES=	c-parse.c c-parse.y
@


1.22
log
@Bmake bits for Gcc 3.1.

Partially made possible by:	Wilko.Bulte@@compaq.com
@
text
@d30 1
a30 1
CLEANFILES+=	c-parse.c c-parse.y		# insurance
@


1.21
log
@Fine!  I cannot freaking take the bikeshed any more.
These binaries will be static, peroid.
@
text
@d8 2
a9 2
SRCS=	cccp.c cexp.y obstack.c prefix.c version.c
YFLAGS=
d11 22
a32 3
NOSHARED=yes
MAN=	cccp.1
MLINKS=	cccp.1 cpp.1
@


1.20
log
@MAN[1-9] -> MAN.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.19 2001/02/28 10:46:50 obrien Exp $
d11 1
a11 1
NOSHARED?=yes
@


1.20.2.1
log
@Changes in order to compile GCC 3.0.2.
The for-GCC-only preprocessor is now built using cpplib.
@
text
@d1 1
a1 1
# $FreeBSD$
d8 2
a9 2
SRCS=	cppmain.c 

d11 3
a13 4
NOMAN=	1

DPADD+=	${LIBCC_INT}
LDADD+=	${LIBCC_INT}
@


1.20.2.2
log
@Bmake bits for GCC 3.1.
@
text
@d8 1
a8 1
SRCS=	cppmain.c c-parse.c c-lang.c c-decl.c
a11 1
NOSHARED?=yes
a14 17

#-----------------------------------------------------------------------
# C parser
.ORDER: c-parse.c
c-parse.c: c-parse.in
	sed -e "/^ifobjc$$/,/^end ifobjc$$/d" \
	    -e "/^ifc$$/d" \
	    -e "/^end ifc$$/d" \
	    ${GCCDIR}/c-parse.in > c-parse.y
	${YACC} -o c-parse.c.in c-parse.y
	sed -e "s/malloc/xmalloc/g" \
	    -e "s/realloc/xrealloc/g" \
	    c-parse.c.in >c-parse.c

CLEANFILES+=	c-parse.c c-parse.y		# insurance

#-----------------------------------------------------------------------
@


1.19
log
@Allow "NOSHARED" to be overridden.

Submitted by:	bde
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.18 2001/02/17 09:46:41 obrien Exp $
d12 1
a12 1
MAN1=	cccp.1
@


1.18
log
@Make `cc' and `cpp0' staticly linked binaries in this development version
of the OS.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.17 2001/01/04 02:16:23 obrien Exp $
d11 1
a11 1
NOSHARED=yes
@


1.17
log
@The preprocessor used by the `cc' driver is now named `ccp0' to make it
clear this is the 1st pass of compilation and to make clear this particular
cpp is for `cc's use only.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.16 2000/01/02 22:57:32 obrien Exp $
d11 1
@


1.16
log
@Didn't get these PREFIX specifiers removed with Makefile.inc rev 1.48.

Submitted by:	marcel
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.15 1999/11/04 04:46:03 obrien Exp $
d7 1
a7 1
PROG=	cpp
@


1.16.2.1
log
@MFC:  bring in GCC 2.95.3 + official sjlj exception fixes.

Approved by:	jkh

The the setjump/longjump exception handling fixes are from GCC 2.95.3.test3
and were removed from GCC 2.95.3.test4 and the subsequent release due
to bootstrap problems on HP-UX.  However, they were very well tested and
fixed major problems on all other platforms.  Including all the all the BSD's.
OpenBSD and FreeBSD 5-current both use these official sjlj patches.

W/o this upgrade the following program segmentation faults if compiled
with -O2 (but not -Os or -O or -O0) on 4.2FreeBSD.
There are some large C++ libraries where segfaults also occur, even at -O.

#include <stdio.h>

class A {
public:
  A() { printf("c'tor A\n"); }
  ~A(){ printf("d'tor A\n"); }
};

class foo : public A {
public:
  foo()  { printf("C'tor foo\n"); throw 8; }
  ~foo() { printf("D'tor foo\n"); }
};

int main(){
  try { foo fii; }
  catch (int){ printf("catch ...\n"); }
  return 0;
}
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.16 2000/01/02 22:57:32 obrien Exp $
a11 1
LINKS=	${BINDIR}/cpp ${BINDIR}/cpp0
@


1.16.2.2
log
@MFC: MAN[1-9] -> MAN.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.16.2.1 2001/04/10 19:23:41 obrien Exp $
d11 1
a11 1
MAN=	cccp.1
@


1.16.2.3
log
@Sync with -current.
The primary name of the C preprocessor for use by GCC itself (and no other
consumers) is now known by `cpp0'.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cccp/Makefile,v 1.16.2.2 2001/04/25 12:03:29 ru Exp $
d7 1
a7 1
PROG=	cpp0
a10 1
NOSHARED?=yes
d12 1
a12 1
LINKS=	${BINDIR}/cpp0 ${BINDIR}/cpp
@


1.16.2.4
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: stable/4/gnu/usr.bin/cc/cccp/Makefile 80931 2001-08-01 18:48:35Z obrien $
@


1.15
log
@Minor cosmetic changes in an attempt to improve consistancy.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/cc/cpp/Makefile,v 1.14 1999/08/27 23:35:18 peter Exp $
a12 2

CFLAGS+= -DPREFIX=\"/usr\"
@


1.14
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
a8 1
CFLAGS+= -DPREFIX=\"/usr\"
d13 2
@


1.13
log
@Use Yacc rather than Bison.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.12 1999/04/04 16:36:35 obrien Exp $
@


1.12
log
@Minimum set of changes to switch from Gcc 2.7.2 (in contrib/gcc) to Egcs 1.1.2
(in contrib/egcs)
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.13 1999/03/05 04:55:03 obrien Exp $
a9 1
YACC=	${BISON}
@


1.11
log
@Simplified using new yacc rules.  This is cosmetic - the old rules worked
with `make -jN' because they did the right things to generate cexp.h
without clobbering cexp.c, and there were no missing dependencies on
cexp.h because cexp.h isn't actually used.

Fixed style bugs.
@
text
@d1 5
a5 1
#	$Id$
d8 2
a9 1
SRCS=	cccp.c cexp.y obstack.c version.c
@


1.11.2.1
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.10
log
@Changes to support full make parallelism (-j<n>) in the world
target.
Reviewed by:	<many different folks>
Submitted by:	Nickolay N. Dudorov" <nnd@@nnd.itfs.nsk.su>
@
text
@d1 1
a1 3
#
# $Id: Makefile,v 1.9 1997/02/22 15:44:59 peter Exp $
#
d3 4
a6 2
PROG =	cpp
SRCS =	cccp.c cexp.c
a7 1
SRCS+=	obstack.c version.c
a9 6

.ORDER: cexp.c cexp.h
cexp.c cexp.h: cexp.y
	${BISON} -d ${GCCDIR}/cexp.y -o cexp.c

CLEANFILES+= cexp.c cexp.h
@


1.9
log
@Revert $FreeBSD$ to $Id$
@
text
@d2 1
a2 1
# $Id$
d12 1
@


1.8
log
@Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
@
text
@d2 1
a2 1
# $FreeBSD$
@


1.7
log
@cpp was named ccp.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.6 1996/09/23 04:14:30 peter Exp $
@


1.7.2.1
log
@MFC: parallelize
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.7 1996/09/23 16:12:38 bde Exp $
a11 1
.ORDER: cexp.c cexp.h
@


1.7.2.2
log
@$Id$ -> $FreeBSD$
@
text
@d2 1
a2 1
# $FreeBSD$
@


1.6
log
@Crude hack to work around cpp.1 doing a .so man1/cccp.1

Pointed out by: Warner Losh <imp@@village.org>, PR#1667
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.5 1996/09/19 15:47:24 peter Exp $
d10 1
a10 1
MLINKS=	cccp.1 ccp.1
@


1.5
log
@Man the lifeboats!  Tie down the hatches!  Red alert! Activate gcc-2.7.2.1!

(the old cc has been tagged with "gcc_2_6_3_final" so we have a reference
 point in case of unforseen disasters...)

This has the objc backend active, and I think I've managed to get the
f77 f2c support through in one piece, but I don't know fortran to test it.

A 'make world' change and libobjc commit will follow.

If you normally do 'make -DNOCLEAN world', do not do so this time, I know
it can fail with groff.

This version of gcc makes a **LOT** more warnings on our kernel.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.4 1994/11/15 04:52:05 phk Exp $
d9 2
@


1.4
log
@Integrated GCC-2.6.1 -> GCC-2.6.2 changes.

Notice that the libgcc DOESN'T change number, because there are no
changes.

Also now the gnu2bmake stuff is synchronized again.

I commit this so that others can test too.

You might want to postpone any "make worlds" until tomorrow, to
avoid any problems I didn't see in the first pass.

Thanks to Bruce for rounding up our changes to gcc.
@
text
@d2 1
a2 1
# $Id$
a7 1
.PATH:	${.CURDIR}/../cc_int
d9 5
@


1.4.4.1
log
@$Id$ -> $FreeBSD$
@
text
@d2 1
a2 1
# $FreeBSD$
@


1.3
log
@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*
@
text
@a4 1
.PATH:	${.CURDIR}/../cc_int
d6 1
a6 1
SRCS =	cccp.c cexp.c obstack.c version.c
d8 2
@


1.2
log
@Add dependencies on libraries to DPADD.  Someday this should be done
automagically.  -lfoo has to be right to work, but ${LIBFO0} is too
easy to forget or misspell; nothing checks it and it should be
different for shared libraries.
@
text
@d2 1
a2 1
# $FreeBSD$
d5 1
d7 1
a7 1
SRCS =	cccp.c cexp.c
a8 2
DPADD+=	${LIBCC_INT}
LDADD+=	-lcc_int
@


1.1
log
@Initial revision
@
text
@d8 1
a8 2
LDDESTDIR+=	-L${.CURDIR}/../cc_int/obj
LDDESTDIR+=	-L${.CURDIR}/../cc_int
@


1.1.1.1
log
@Here comes the right import of gcc-2.6.0.
@
text
@@
