head	1.25;
access;
symbols
	perseant-exfatfs-base-20250801:1.25
	perseant-exfatfs-base-20240630:1.25
	cjep_sun2x:1.25.0.44
	cjep_sun2x-base:1.25
	cjep_staticlib_x-base1:1.25
	cjep_staticlib_x:1.25.0.42
	cjep_staticlib_x-base:1.25
	phil-wifi-20200421:1.25
	phil-wifi-20200411:1.25
	phil-wifi-20200406:1.25
	pgoyette-compat-merge-20190127:1.25
	pgoyette-compat-20190127:1.25
	pgoyette-compat-20190118:1.25
	pgoyette-compat-1226:1.25
	pgoyette-compat-1126:1.25
	pgoyette-compat-1020:1.25
	pgoyette-compat-0930:1.25
	pgoyette-compat-0906:1.25
	pgoyette-compat-0728:1.25
	pgoyette-compat-0625:1.25
	pgoyette-compat-0521:1.25
	pgoyette-compat-0502:1.25
	pgoyette-compat-0422:1.25
	pgoyette-compat-0415:1.25
	pgoyette-compat-0407:1.25
	pgoyette-compat-0330:1.25
	pgoyette-compat-0322:1.25
	pgoyette-compat-0315:1.25
	pgoyette-compat:1.25.0.40
	pgoyette-compat-base:1.25
	perseant-stdc-iso10646:1.25.0.38
	perseant-stdc-iso10646-base:1.25
	prg-localcount2-base3:1.25
	prg-localcount2-base2:1.25
	prg-localcount2-base1:1.25
	prg-localcount2:1.25.0.36
	prg-localcount2-base:1.25
	pgoyette-localcount-20170426:1.25
	bouyer-socketcan-base1:1.25
	pgoyette-localcount-20170320:1.25
	bouyer-socketcan:1.25.0.34
	bouyer-socketcan-base:1.25
	pgoyette-localcount-20170107:1.25
	pgoyette-localcount-20161104:1.25
	localcount-20160914:1.25
	pgoyette-localcount-20160806:1.25
	pgoyette-localcount-20160726:1.25
	pgoyette-localcount:1.25.0.32
	pgoyette-localcount-base:1.25
	netbsd-5-2-3-RELEASE:1.25
	netbsd-5-1-5-RELEASE:1.25
	yamt-pagecache-base9:1.25
	yamt-pagecache-tag8:1.25
	tls-earlyentropy:1.25.0.28
	tls-earlyentropy-base:1.25
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.25
	riastradh-drm2-base3:1.25
	netbsd-5-2-2-RELEASE:1.25
	netbsd-5-1-4-RELEASE:1.25
	netbsd-5-2-1-RELEASE:1.25
	netbsd-5-1-3-RELEASE:1.25
	agc-symver:1.25.0.30
	agc-symver-base:1.25
	tls-maxphys-base:1.25
	yamt-pagecache-base8:1.25
	netbsd-5-2:1.25.0.26
	yamt-pagecache-base7:1.25
	netbsd-5-2-RELEASE:1.25
	netbsd-5-2-RC1:1.25
	yamt-pagecache-base6:1.25
	yamt-pagecache-base5:1.25
	yamt-pagecache-base4:1.25
	netbsd-5-1-2-RELEASE:1.25
	netbsd-5-1-1-RELEASE:1.25
	yamt-pagecache-base3:1.25
	yamt-pagecache-base2:1.25
	yamt-pagecache:1.25.0.24
	yamt-pagecache-base:1.25
	bouyer-quota2-nbase:1.25
	bouyer-quota2:1.25.0.22
	bouyer-quota2-base:1.25
	matt-nb5-pq3:1.25.0.20
	matt-nb5-pq3-base:1.25
	netbsd-5-1:1.25.0.18
	netbsd-5-1-RELEASE:1.25
	netbsd-5-1-RC4:1.25
	netbsd-5-1-RC3:1.25
	netbsd-5-1-RC2:1.25
	netbsd-5-1-RC1:1.25
	netbsd-5-0-2-RELEASE:1.25
	netbsd-5-0-1-RELEASE:1.25
	jym-xensuspend-nbase:1.25
	netbsd-5-0:1.25.0.16
	netbsd-5-0-RELEASE:1.25
	netbsd-5-0-RC4:1.25
	netbsd-5-0-RC3:1.25
	netbsd-5-0-RC2:1.25
	jym-xensuspend:1.25.0.14
	jym-xensuspend-base:1.25
	netbsd-5-0-RC1:1.25
	netbsd-5:1.25.0.12
	netbsd-5-base:1.25
	mjf-devfs2:1.25.0.10
	mjf-devfs2-base:1.25
	yamt-pf42-base4:1.25
	yamt-pf42-base3:1.25
	hpcarm-cleanup-nbase:1.25
	yamt-pf42-base2:1.25
	yamt-pf42:1.25.0.8
	yamt-pf42-base:1.25
	keiichi-mipv6:1.25.0.6
	keiichi-mipv6-base:1.25
	cube-autoconf:1.25.0.4
	cube-autoconf-base:1.25
	hpcarm-cleanup:1.25.0.2
	hpcarm-cleanup-base:1.25
	netbsd-3-1-1-RELEASE:1.23
	netbsd-3-0-3-RELEASE:1.23
	netbsd-3-1:1.23.0.12
	netbsd-3-1-RELEASE:1.23
	netbsd-3-0-2-RELEASE:1.23
	netbsd-3-1-RC4:1.23
	netbsd-3-1-RC3:1.23
	netbsd-3-1-RC2:1.23
	netbsd-3-1-RC1:1.23
	netbsd-3-0-1-RELEASE:1.23
	netbsd-3-0:1.23.0.10
	netbsd-3-0-RELEASE:1.23
	netbsd-3-0-RC6:1.23
	netbsd-3-0-RC5:1.23
	netbsd-3-0-RC4:1.23
	netbsd-3-0-RC3:1.23
	netbsd-3-0-RC2:1.23
	netbsd-3-0-RC1:1.23
	netbsd-2-0-3-RELEASE:1.23
	netbsd-2-1:1.23.0.8
	netbsd-2-1-RELEASE:1.23
	netbsd-2-1-RC6:1.23
	netbsd-2-1-RC5:1.23
	netbsd-2-1-RC4:1.23
	netbsd-2-1-RC3:1.23
	netbsd-2-1-RC2:1.23
	netbsd-2-1-RC1:1.23
	netbsd-2-0-2-RELEASE:1.23
	netbsd-3:1.23.0.6
	netbsd-3-base:1.23
	netbsd-2-0-1-RELEASE:1.23
	netbsd-2:1.23.0.4
	netbsd-2-base:1.23
	netbsd-2-0-RELEASE:1.23
	netbsd-2-0-RC5:1.23
	netbsd-2-0-RC4:1.23
	netbsd-2-0-RC3:1.23
	netbsd-2-0-RC2:1.23
	netbsd-2-0-RC1:1.23
	netbsd-2-0:1.23.0.2
	netbsd-2-0-base:1.23
	netbsd-1-6-PATCH002-RELEASE:1.18
	netbsd-1-6-PATCH002:1.18
	netbsd-1-6-PATCH002-RC4:1.18
	netbsd-1-6-PATCH002-RC3:1.18
	netbsd-1-6-PATCH002-RC2:1.18
	netbsd-1-6-PATCH002-RC1:1.18
	netbsd-1-6-PATCH001:1.18
	netbsd-1-6-PATCH001-RELEASE:1.18
	netbsd-1-6-PATCH001-RC3:1.18
	netbsd-1-6-PATCH001-RC2:1.18
	netbsd-1-6-PATCH001-RC1:1.18
	fvdl_fs64_base:1.20
	netbsd-1-6-RELEASE:1.18
	netbsd-1-6-RC3:1.18
	netbsd-1-6-RC2:1.18
	netbsd-1-6-RC1:1.18
	netbsd-1-6:1.18.0.2
	netbsd-1-6-base:1.18
	netbsd-1-5-PATCH003:1.9
	netbsd-1-5-PATCH002:1.9
	netbsd-1-5-PATCH001:1.9
	netbsd-1-5-RELEASE:1.9
	netbsd-1-5-BETA2:1.9
	netbsd-1-5-BETA:1.9
	netbsd-1-4-PATCH003:1.9.2.1
	netbsd-1-5-ALPHA2:1.9
	netbsd-1-5:1.9.0.8
	netbsd-1-5-base:1.9
	netbsd-1-4-PATCH002:1.9
	wrstuden-devbsize-19991221:1.9
	wrstuden-devbsize:1.9.0.6
	wrstuden-devbsize-base:1.9
	comdex-fall-1999:1.9.0.4
	comdex-fall-1999-base:1.9
	netbsd-1-4-PATCH001:1.9
	netbsd-1-4-RELEASE:1.9
	netbsd-1-4:1.9.0.2
	netbsd-1-4-base:1.9
	mrg-980329:1.1.1.1
	mrg:1.1.1;
locks; strict;
comment	@# @;


1.25
date	2006.06.02.22.16.19;	author mrg;	state dead;
branches;
next	1.24;

1.24
date	2006.02.16.10.36.24;	author he;	state Exp;
branches;
next	1.23;

1.23
date	2003.09.02.05.26.43;	author mrg;	state Exp;
branches;
next	1.22;

1.22
date	2003.06.01.02.08.08;	author thorpej;	state Exp;
branches;
next	1.21;

1.21
date	2003.03.01.13.08.56;	author mrg;	state Exp;
branches;
next	1.20;

1.20
date	2002.09.17.23.18.36;	author thorpej;	state Exp;
branches;
next	1.19;

1.19
date	2002.08.19.09.46.41;	author lukem;	state Exp;
branches;
next	1.18;

1.18
date	2002.02.28.02.13.34;	author tv;	state Exp;
branches;
next	1.17;

1.17
date	2002.02.11.21.36.36;	author tv;	state Exp;
branches;
next	1.16;

1.16
date	2001.12.12.23.11.00;	author lukem;	state Exp;
branches;
next	1.15;

1.15
date	2001.12.12.01.48.59;	author tv;	state Exp;
branches;
next	1.14;

1.14
date	2001.10.31.16.27.32;	author tv;	state Exp;
branches;
next	1.13;

1.13
date	2001.09.21.15.38.16;	author tv;	state Exp;
branches;
next	1.12;

1.12
date	2001.08.19.14.19.38;	author mrg;	state Exp;
branches;
next	1.11;

1.11
date	2001.08.10.11.57.48;	author mrg;	state Exp;
branches;
next	1.10;

1.10
date	2001.07.24.19.44.49;	author tv;	state Exp;
branches;
next	1.9;

1.9
date	99.02.13.02.54.23;	author lukem;	state Exp;
branches
	1.9.2.1;
next	1.8;

1.8
date	99.02.11.17.30.46;	author tv;	state Exp;
branches;
next	1.7;

1.7
date	98.08.28.15.31.29;	author tv;	state Exp;
branches;
next	1.6;

1.6
date	98.05.06.11.59.09;	author mycroft;	state Exp;
branches;
next	1.5;

1.5
date	98.04.12.14.18.41;	author tv;	state Exp;
branches;
next	1.4;

1.4
date	98.04.09.01.32.08;	author tv;	state Exp;
branches;
next	1.3;

1.3
date	98.04.09.00.06.09;	author tv;	state Exp;
branches;
next	1.2;

1.2
date	98.04.08.23.39.05;	author tv;	state Exp;
branches;
next	1.1;

1.1
date	98.03.29.11.40.13;	author mrg;	state Exp;
branches
	1.1.1.1;
next	;

1.9.2.1
date	2000.08.26.18.32.12;	author he;	state Exp;
branches;
next	;

1.1.1.1
date	98.03.29.11.40.13;	author mrg;	state Exp;
branches;
next	;


desc
@@


1.25
log
@remove support for building (with) GCC 2.95.  also:
- always install <stdbool.h>
- don't generate a fake one for vax / gettext.
@
text
@#	$NetBSD: Makefile,v 1.24 2006/02/16 10:36:24 he Exp $

REQUIRETOOLS=	yes
NOLINT=		# defined

.include <bsd.own.mk>

LIB=		stdc++

.if exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk) && ${MKGCC} != "no"
.include "${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk"

SHLIB_MAJOR=	4
SHLIB_MINOR=	0

SUBDIR=		include io config

DIST=		${NETBSDSRCDIR}/gnu/dist/toolchain
GNUHOSTDIST=	${DIST}

SRCS=		${G_OBJS:.o=.cc} ${G_LIBIBERTY_OBJS:.o=.c}
INCS=		_G_config.h
INCSDIR=	/usr/include/g++

# Ugly, but they aren't identified individually in libio/Makefile:
.for f in ${G_LIBIOSTREAM_USE}
.if exists(${DIST}/libio/${f:.o=.c})
SRCS+=		${f:.o=.c}
.else
SRCS+=		${f:.o=.cc}
.endif
.endfor

GCPPFLAGS=	${G_XCFLAGS} ${G_CINCLUDES} ${G_MT_CFLAGS} ${G_CXXINCLUDES}
CPPFLAGS+=	-nostdinc++ -I${.CURDIR}/arch/${MACHINE_ARCH} \
		${GCPPFLAGS:M-D*} ${GCPPFLAGS:M-I*:N-I.*} \
		-I${DIST}/gcc/cp/inc \
		-I${NETBSDSRCDIR}/gnu/lib/libiberty -I${DIST}/include \
		-I${NETBSDSRCDIR}/gnu/lib/libiberty/arch/${MACHINE_ARCH}

CXXFLAGS+=	${G_XCXXFLAGS:M-f*}

# GCC3 doesn't have this, so lets just not install it anymore...
#TEXINFO=	iostream.texi

.PATH: ${DIST}/libstdc++ ${DIST}/libstdc++/stl ${DIST}/libio ${DIST}/libiberty

.for t in C
.for v in STRFUNCS STRIO
CLEANFILES+=	${t}${v}.cc
SRCS+=		${t}${v}.cc

${t}${v}.cc: Makefile ${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk sinst.cc
	echo '#define ${t}' >$@@
.for f in ${G_${v}}
	echo '#define ${f}' >>$@@
.endfor
	cat ${>:M*.cc} >>$@@
.endfor
.endfor

.for t in F D LD
.for v in COMFUNCS COMIO
CLEANFILES+=	${t}${v}.cc
SRCS+=		${t}${v}.cc

${t}${v}.cc: Makefile ${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk cinst.cc
	echo '#define ${t}' >$@@
.for f in ${G_${v}}
	echo '#define ${f}' >>$@@
.endfor
	cat ${>:M*.cc} >>$@@
.endfor
.endfor

.include <bsd.lib.mk>
.include <bsd.subdir.mk>
.include <bsd.info.mk>

${OBJS}: ${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk
.else
.include <bsd.prog.mk> # do nothing
.endif

.if (${OBJECT_FMT} == "a.out")
LDADD=	${DESTDIR}/usr/lib/c++rt0.o
DPADD=	${DESTDIR}/usr/lib/c++rt0.o
.endif
@


1.24
log
@Now that the libiberty config.h was made MD again, we need to instruct
the build of this (only done for old gcc, i.e. vax) to pick up the
config.h file from the new place.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.23 2003/09/02 05:26:43 mrg Exp $
@


1.23
log
@don't install iostream.info anymore - it goes away with GCC3.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.22 2003/06/01 02:08:08 thorpej Exp $
d38 2
a39 1
		-I${NETBSDSRCDIR}/gnu/lib/libiberty -I${DIST}/include
@


1.22
log
@If MKGCC == no, don't build these libraries (which are bundled with
the compiler).
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.21 2003/03/01 13:08:56 mrg Exp $
d42 2
a43 1
TEXINFO=	iostream.texi
@


1.21
log
@update / regenerate for binutils 2.13.2.1
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2002/09/17 23:18:36 thorpej Exp $
d10 1
a10 1
.if exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk)
@


1.20
log
@* Eliminate the USE_NEW_TOOLCHAIN variable.  Instead, split it into
  two variables:

  TOOLCHAIN_MISSING -- set to "yes" on platforms for which there is
  no working in-tree toolchain (hppa, ns32k, sh5, x86_64).

  EXTERNAL_TOOLCHAIN -- if defined by the user, points to the root of
  an external toolchain (e.g. /usr/local/gnu).  This enables the cross-build
  framework even for TOOLCHAIN_MISSING platforms.

  If TOOLCHAIN_MISSING is set to "yes", MKGDB, MKBFD, and MKGCC are all
  unconditionally set to "no", since the bits are not there to build.

  If EXTERNAL_TOOLCHAIN is set, MKGCC is unconditionally set to "no",
  since the external toolchain's compiler is not in-sync with the
  in-tree compiler support components (e.g. libgcc).

* Set MACHINE_CPU much earlier in bsd.own.mk, so that more tests in
  that file can use it.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.19 2002/08/19 09:46:41 lukem Exp $
d19 1
@


1.19
log
@Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../../some/path (etc).
(Reduces make output by ~ 20%)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.18 2002/02/28 02:13:34 tv Exp $
a9 2
.if defined(USE_NEW_TOOLCHAIN)

a79 81
.endif

.else
#
# XXX - BEGIN - Old toolchain build goop - delete when everything migrated - XXX
#

SHLIB_MAJOR=	2
SHLIB_MINOR=	0

INCS=		cassert cctype cerrno cfloat ciso646 climits clocale cmath \
		complex csetjmp csignal cstdarg cstddef cstdio cstdlib \
		cstring ctime cwchar cwctype fstream iomanip iosfwd iostream \
		stdexcept string strstream complex.h stl.h _G_config.h
INCSDIR=	/usr/include/g++

SUBDIR=		config std stl io

SRCS=	PlotFile.cc SFile.cc builtinbuf.cc editbuf.cc filebuf.cc fstream.cc \
	indstream.cc ioassign.cc ioextend.cc iomanip.cc iostream.cc \
	isgetline.cc isgetsb.cc isscan.cc osform.cc parsestream.cc \
	pfstream.cc procbuf.cc sbform.cc sbgetline.cc sbscan.cc \
	stdiostream.cc stdstrbufs.cc stdstreams.cc stream.cc streambuf.cc \
	strstream.cc \
	cleanup.c filedoalloc.c fileops.c floatconv.c genops.c iofclose.c \
	iofdopen.c iofeof.c ioferror.c iofflush.c iofflush_u.c iofgetpos.c \
	iofgets.c iofopen.c iofprintf.c iofputs.c iofread.c iofscanf.c \
	iofsetpos.c ioftell.c iofwrite.c iogetc.c iogetdelim.c iogetline.c \
	iogets.c ioignore.c iopadn.c ioperror.c iopopen.c ioprims.c \
	ioprintf.c ioputc.c ioputs.c ioscanf.c ioseekoff.c ioseekpos.c \
	iosetbuffer.c iosetvbuf.c iosprintf.c iosscanf.c iostrerror.c \
	ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c \
	outfloat.c peekc.c strops.c \
	cmathi.cc cstdlibi.cc cstringi.cc stdexcepti.cc stlinst.cc

DIST=		${NETBSDSRCDIR}/gnu/dist
CPPFLAGS+=	-I${DESTDIR}/usr/include/g++ -I${DIST}/libstdc++

TEXINFO=	iostream.texi

.PATH:	${DIST}/libstdc++ ${DIST}/libstdc++/stl ${DIST}/libio

# W not yet supported
.for _TYPE_ in C
SRCS+=		${_TYPE_}inst.cc
CLEANFILES+=	${_TYPE_}inst.cc
${_TYPE_}inst.cc: sinst.cc
	echo '#define ${_TYPE_}' >$@@
	@@for func in \
		REP MAIN TRAITS ADDSS ADDPS ADDCS ADDSP ADDSC EQSS EQPS EQSP \
		NESS NEPS NESP LTSS LTPS LTSP GTSS GTPS GTSP LESS LEPS LESP \
		GESS GEPS GESP EXTRACT INSERT GETLINE; do \
			echo "#define $$func" >>$@@; \
	done
	cat $> >>$@@
.endfor

.for _TYPE_ in F D LD
SRCS+=		${_TYPE_}inst.cc
CLEANFILES+=	${_TYPE_}inst.cc
${_TYPE_}inst.cc: cinst.cc
	echo '#define ${_TYPE_}' >$@@
	@@for func in \
		MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC \
		DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC \
		ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI \
		POWFC SIN SINH SQRT EXTRACT INSERT; do \
			echo "#define $$func" >>$@@; \
	done
	cat $> >>$@@
.endfor

.cc:
	@@true

.include <bsd.info.mk>
.include <bsd.lib.mk>
.include <bsd.subdir.mk>
#
# XXX - END - Old toolchain build goop - delete when everything migrated - XXX
#
@


1.18
log
@Fix fallout from collapsing libiberty to MI config.h:  libstdc++ includes
little bits of libiberty, so -I the non-arch specific directory now.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.17 2002/02/11 21:36:36 tv Exp $
d20 1
a20 2
TOP=		${.CURDIR}/../..
DIST=		${TOP}/dist/toolchain
d39 1
a39 1
		-I${.CURDIR}/../libiberty -I${DIST}/include
d117 1
a117 1
DIST=		${.CURDIR}/../../dist
@


1.17
log
@Skip building anything if the target's .mk files are missing.  (Allows the
toolchain to be built in segments, or not at all if the in-tree toolchain
is inappropriate for the target.)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16 2001/12/12 23:11:00 lukem Exp $
d40 1
a40 1
		-I${.CURDIR}/../libiberty/arch/${MACHINE_ARCH} -I${DIST}/include
@


1.16
log
@move NOxxx=
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.15 2001/12/12 01:48:59 tv Exp $
d12 1
d81 3
@


1.15
log
@MKfoo=no -> NOfoo
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.14 2001/10/31 16:27:32 tv Exp $
d4 1
a8 1
NOLINT=		# defined
@


1.14
log
@Add REQUIRETOOLS to make version-specific new toolchain compiler libs fail
to build if USETOOLS is set to "no" by the builder.  (Sanity check; as an
override, USETOOLS may be set to "never", but see warnings in BUILDING.)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.13 2001/09/21 15:38:16 tv Exp $
d8 1
a8 1
MKLINT=		no
@


1.13
log
@Set SHLIB_{MAJOR,MINOR} explicitly instead of using shlib_version files.
(This currently means that checkver doesn't work with these libs, but that
will be fixed.)
@
text
@d1 3
a3 1
#	$NetBSD: Makefile,v 1.12 2001/08/19 14:19:38 mrg Exp $
@


1.12
log
@build & install info documentation.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.11 2001/08/10 11:57:48 mrg Exp $
d12 3
d83 3
a85 1
MKPIC=no	# XXX hack; shlib_version mismatch
@


1.11
log
@with USE_NEW_TOOLCHAIN, install all required libstdc++ headers.  this needs
toolchain2netbsd to be re-run for each platform.  (sparc, sparc64 and i386
updates coming shortly.)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.10 2001/07/24 19:44:49 tv Exp $
d38 2
d72 1
@


1.10
log
@Add new toolchain build structure for libg2c, libobjc, and libstdc++.
Note that old build system still exists under .if conditionals; this
will be removed once all platforms are using the new toolchain.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.9 1999/02/13 02:54:23 lukem Exp $
d12 1
a12 1
SUBDIR=		include
d18 2
@


1.9
log
@convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
@
text
@d1 3
a3 1
#	$NetBSD: Makefile,v 1.8 1999/02/11 17:30:46 tv Exp $
d6 70
a104 3
MKMAN=	no
MKLINT=	no

d145 4
@


1.9.2.1
log
@Apply patch (requested by dmacmahill):
  Compile c++rt0.o with -fPIC on sparc.  This means that C++ shared
  libraries with global constructors (which must link c++rt0.o on
  sparc/a.out) must also be compiled -fPIC.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.9 1999/02/13 02:54:23 lukem Exp $
a71 4

.if (${MACHINE_ARCH} == "sparc")
CPICFLAGS= -fPIC -DPIC
.endif
@


1.8
log
@Nuke gcc 2.8 tests now that the tree requires egcs/gcc 2.8, and add
Texinfo doc for iostream.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.7 1998/08/28 15:31:29 tv Exp $
d33 2
a34 2
NOMAN=
NOLINT=		nolint (c++)
@


1.7
log
@Update to egcs 1.1-snap's libstdc++.  Now shlib version 2.0.  Now requires
"make includes" before "make" like other libraries.
@
text
@d1 1
a1 5
#	$NetBSD: Makefile,v 1.6 1998/05/06 11:59:09 mycroft Exp $

HAVE_GCC28!= ${CXX} --version | egrep "^(2\.8|egcs)" ; echo

.if (${HAVE_GCC28} != "")
d36 2
d73 1
a79 8
.endif

.else

# XXX Temporary: during an egcs bootstrap, don't try to build with gcc 2.7
.include <bsd.own.mk>
${TARGETS}:

@


1.6
log
@Run gen-params to build _G_config.h at build time.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.5 1998/04/12 14:18:41 tv Exp $
a5 5
INCS=	cassert cctype cerrno cfloat ciso646 climits clocale cmath complex \
	csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar \
	cwctype fstream iomanip iosfwd iostream stdexcept string strstream
INCS+=	complex.h stl.h _G_config.h
INCSDIR=/usr/include/g++
d7 1
a7 1
SUBDIR=std stl io
d9 5
a13 1
LIB=	stdc++
d15 3
a17 2
SRCS=	_G_config.h \
	PlotFile.cc SFile.cc builtinbuf.cc editbuf.cc filebuf.cc fstream.cc \
d32 6
a37 9
	cmathi.cc cstdlibi.cc cstringi.cc stdexcepti.cc stlinst.cc \
	cstrmain.cc cstrio.cc fcomplex.cc fcomio.cc dcomplex.cc dcomio.cc \
	ldcomplex.cc ldcomio.cc 

DIST=		$(.CURDIR)/../../dist
CXXFLAGS+=	-nostdinc++ 
CPPFLAGS+=	-I. -I$(DIST)/libstdc++ -I$(DIST)/libio \
		-I$(DIST)/libstdc++/stl -I$(DIST)/gcc/cp/inc
NOMAN=		noman
d40 1
a40 1
.PATH:	$(DIST)/libstdc++ $(DIST)/libstdc++/stl $(DIST)/libio
d42 29
a70 4
.if (${MACHINE} != "alpha")
LDADD=	${DESTDIR}/usr/lib/c++rt0.o
DPADD=	${DESTDIR}/usr/lib/c++rt0.o
.endif
a71 1
# XXX Workaround the .cc -> (NULL) extension rule
d78 4
a81 80
SINSTCC=	$(DIST)/libstdc++/sinst.cc
CINSTCC=	$(DIST)/libstdc++/cinst.cc

_G_config.h: Makefile
	rootme=${.OBJDIR} CC="${CC}" CXX="${CXX}" CONFIG_NM="${NM}" \
	    /bin/sh ${DIST}/libio/gen-params LIB_VERSION=2.8.0 >tmp-params.h
	mv -f tmp-params.h _G_config.h
CLEANFILES+=dummy.h tmp-params.h _G_config.h

cstrmain.cc: Makefile
	@@echo Creating cstrmain.cc
	@@(for i in REP MAIN TRAITS ADDSS ADDPS ADDCS ADDSP ADDSC EQSS EQPS EQSP NESS NEPS NESP LTSS LTPS LTSP GTSS GTPS GTSP LESS LEPS LESP GESS GEPS GESP ; do \
		echo "#define $$i"; \
		done;\
	echo '#define C';\
	cat $(SINSTCC)) > $(.TARGET)
CLEANFILES+=cstrmain.cc

cstrio.cc: Makefile
	@@echo Creating cstrio.cc
	@@(for i in EXTRACT INSERT GETLINE ; do \
		echo "#define $$i"; \
		done;\
	echo '#define C';\
	cat $(SINSTCC)) > $(.TARGET)
CLEANFILES+=cstrio.cc

fcomplex.cc: Makefile
	@@echo Creating fcomplex.cc
	@@(for i in MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN SINH SQRT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define F';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=fcomplex.cc

fcomio.cc: Makefile
	@@echo Creating fcomio.cc
	@@(for i in EXTRACT INSERT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define F';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=fcomio.cc

dcomplex.cc: Makefile
	@@echo Creating dcomplex.cc
	@@(for i in MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN SINH SQRT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define D';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=dcomplex.cc

dcomio.cc: Makefile
	@@echo Creating dcomio.cc
	@@(for i in EXTRACT INSERT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define D';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=dcomio.cc

ldcomplex.cc: Makefile
	@@echo Creating ldcomplex.cc
	@@(for i in MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN SINH SQRT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define LD';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=ldcomplex.cc

ldcomio.cc: Makefile
	@@echo Creating ldcomio.cc
	@@(for i in EXTRACT INSERT ; do \
		echo "#define $$i"; \
		done;\
	echo '#define LD';\
	cat $(CINSTCC)) > $(.TARGET)
CLEANFILES+=ldcomio.cc
@


1.5
log
@Add the .cc(.NULL) overrid used for libgcc
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4 1998/04/09 01:32:08 tv Exp $
d16 2
a17 1
SRCS=	PlotFile.cc SFile.cc builtinbuf.cc editbuf.cc filebuf.cc fstream.cc \
d38 1
a38 1
CPPFLAGS+=	-I$(.CURDIR) -I$(DIST)/libstdc++ -I$(DIST)/libio \
d59 6
@


1.4
log
@Fix fix for compiling under gcc 2.7.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.3 1998/04/09 00:06:09 tv Exp $
d48 4
@


1.3
log
@Make libstdc++ skip build without bombing if the bootstrap compiler is gcc
2.7 and not egcs.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.2 1998/04/08 23:39:05 tv Exp $
d130 1
@


1.2
log
@Some sources and includes missing, and stl includes install directly into
/usr/include/g++ (not /stl).
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.1.1.1 1998/03/29 11:40:13 mrg Exp $
d126 5
@


1.1
log
@Initial revision
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.10 1998/02/19 02:17:06 cgd Exp $
d3 7
a9 4
INCS=	cassert cerrno cfloat ciso646 climits clocale cmath complex csetjmp \
	csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype \
	fstream iomanip iosfwd stdexcept string strstream
INCS+=	stl.h complex.h _G_config.h
d17 17
a33 11
indstream.cc ioassign.cc ioextend.cc iomanip.cc iostream.cc isgetline.cc \
isgetsb.cc isscan.cc osform.cc parsestream.cc pfstream.cc procbuf.cc \
sbform.cc sbgetline.cc sbscan.cc stdiostream.cc stdstrbufs.cc stdstreams.cc \
stream.cc streambuf.cc strstream.cc cleanup.c filedoalloc.c fileops.c \
floatconv.c genops.c iofclose.c iofgetpos.c iofread.c iofscanf.c \
iofsetpos.c iogetdelim.c iogetline.c ioignore.c iopadn.c iopopen.c \
ioprims.c ioprintf.c ioseekoff.c ioseekpos.c iostrerror.c ioungetc.c \
iovfprintf.c iovfscanf.c outfloat.c strops.c cmathi.cc cstdlibi.cc \
cstringi.cc stdexcepti.cc \
cstrmain.cc cstrio.cc fcomplex.cc fcomio.cc dcomplex.cc dcomio.cc \
ldcomplex.cc ldcomio.cc 
d127 1
a127 17
stdexcepti.o: stdexcepti.cc
	@@echo "$(COMPILE.cc) -frtti $(.IMPSRC)"
	@@$(COMPILE.cc) -frtti $(.IMPSRC) -o $(.TARGET).o
	@@$(LD) -x -r $(.TARGET).o -o $(.TARGET)
	@@rm -f $(.TARGET).o

stdexcepti.po: stdexcepti.cc
	@@echo "$(COMPILE.cc) -p -frtti $(.IMPSRC) -o $(.TARGET)"
	@@$(COMPILE.cc) -p -frtti $(.IMPSRC) -o $(.TARGET).o
	@@$(LD) -X -r $(.TARGET).o -o $(.TARGET)
	@@rm -f $(.TARGET).o

stdexcepti.so: stdexcepti.cc
	@@echo "$(COMPILE.cc) $(CPICFLAGS) -frtti $(.IMPSRC) -o $(.TARGET)"
	@@$(COMPILE.cc) $(CPICFLAGS) -frtti $(.IMPSRC) -o $(.TARGET).o
	@@$(LD) -x -r $(.TARGET).o -o $(.TARGET)
	@@rm -f $(.TARGET).o
@


1.1.1.1
log
@building libstdc++ from the egcs sources in gnu/dist/gcc...
@
text
@@
