Module Name: src
Committed By: mrg
Date: Tue Jun 21 06:02:29 UTC 2011
Added Files:
src/external/gpl3/gcc/lib/crtstuff: Makefile crtbegin.c crtbeginS.c
crtbeginT.c crtend.c crtendS.c
src/external/gpl3/gcc/lib/libgcc: Makefile Makefile.inc Makefile.srcs
Makefile.wrapper
src/external/gpl3/gcc/lib/libgcc/libgcc: Makefile
src/external/gpl3/gcc/lib/libgcc/libgcc_eh: Makefile
src/external/gpl3/gcc/lib/libgcc/libgcc_s: Makefile
src/external/gpl3/gcc/lib/libgcc/libgcov: Makefile
src/external/gpl3/gcc/lib/libiberty: Makefile defs.mk
src/external/gpl3/gcc/lib/libobjc: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include/backward: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include/bits: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include/debug: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include/ext: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3/include/tr1: Makefile
src/external/gpl3/gcc/lib/libsupc++: Makefile Makefile.common
Removed Files:
src/external/gpl3/gcc/lib/crtstuff4: Makefile crtbegin.c crtbeginS.c
crtbeginT.c crtend.c crtendS.c
src/external/gpl3/gcc/lib/libgcc4: Makefile Makefile.inc Makefile.srcs
Makefile.wrapper
src/external/gpl3/gcc/lib/libgcc4/libgcc: Makefile
src/external/gpl3/gcc/lib/libgcc4/libgcc_eh: Makefile
src/external/gpl3/gcc/lib/libgcc4/libgcc_s: Makefile
src/external/gpl3/gcc/lib/libgcc4/libgcov: Makefile
src/external/gpl3/gcc/lib/libobjc4: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/backward: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/bits: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/debug: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/ext: Makefile
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/tr1: Makefile
src/external/gpl3/gcc/lib/libsupc++4: Makefile Makefile.common
Log Message:
*sigh* move these files into the directories i meant for them to exist in.
start actually porting to gcc 4.5 in the process.
To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/crtstuff/Makefile \
src/external/gpl3/gcc/lib/crtstuff/crtbegin.c \
src/external/gpl3/gcc/lib/crtstuff/crtbeginS.c \
src/external/gpl3/gcc/lib/crtstuff/crtbeginT.c \
src/external/gpl3/gcc/lib/crtstuff/crtend.c \
src/external/gpl3/gcc/lib/crtstuff/crtendS.c
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/crtstuff4/Makefile \
src/external/gpl3/gcc/lib/crtstuff4/crtbegin.c \
src/external/gpl3/gcc/lib/crtstuff4/crtbeginS.c \
src/external/gpl3/gcc/lib/crtstuff4/crtbeginT.c \
src/external/gpl3/gcc/lib/crtstuff4/crtend.c \
src/external/gpl3/gcc/lib/crtstuff4/crtendS.c
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libgcc/Makefile \
src/external/gpl3/gcc/lib/libgcc/Makefile.inc \
src/external/gpl3/gcc/lib/libgcc/Makefile.srcs \
src/external/gpl3/gcc/lib/libgcc/Makefile.wrapper
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libgcc/libgcc/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libgcc/libgcc_eh/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libgcc/libgcc_s/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libgcc4/Makefile \
src/external/gpl3/gcc/lib/libgcc4/Makefile.inc \
src/external/gpl3/gcc/lib/libgcc4/Makefile.srcs \
src/external/gpl3/gcc/lib/libgcc4/Makefile.wrapper
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libgcc4/libgcc/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libgcc4/libgcc_eh/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libgcc4/libgcc_s/Makefile
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libgcc4/libgcov/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libiberty/Makefile \
src/external/gpl3/gcc/lib/libiberty/defs.mk
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libobjc/Makefile
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libobjc4/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libstdc++-v3/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/backward/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/bits/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/debug/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/ext/Makefile
cvs rdiff -u -r0 -r1.1 \
src/external/gpl3/gcc/lib/libstdc++-v3/include/tr1/Makefile
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libstdc++-v3_4/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/backward/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/bits/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/debug/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/ext/Makefile
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/gpl3/gcc/lib/libstdc++-v3_4/include/tr1/Makefile
cvs rdiff -u -r0 -r1.1 src/external/gpl3/gcc/lib/libsupc++/Makefile \
src/external/gpl3/gcc/lib/libsupc++/Makefile.common
cvs rdiff -u -r1.1.1.1 -r0 src/external/gpl3/gcc/lib/libsupc++4/Makefile \
src/external/gpl3/gcc/lib/libsupc++4/Makefile.common
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: src/external/gpl3/gcc/lib/crtstuff/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/Makefile Tue Jun 21 06:02:25 2011
@@ -0,0 +1,82 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+.include <bsd.own.mk>
+
+# If using an external toolchain, we expect crtbegin/crtend to be
+# supplied by that toolchain's run-time support.
+.if !defined(EXTERNAL_TOOLCHAIN) && ${MKGCC} != "no"
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GNUHOSTDIST= ${DIST}
+GCCARCH= ${NETBSDSRCDIR}/gnu/usr.bin/gcc4/arch/${MACHINE_ARCH}
+
+GALLCFLAGS= ${G_CRTSTUFF_CFLAGS} ${G_CRTSTUFF_T_CFLAGS}
+
+CPPFLAGS+= -I${GCCARCH} ${GALLCFLAGS:M-D*} ${GALLCFLAGS:M-I*:N-I.*}
+CPPFLAGS+= -I.
+
+GCFLAGS= ${GALLCFLAGS:N-D*:N-I*:N-i*:N./*}
+
+DPSRCS+= ${.CURDIR}/arch/${MACHINE_ARCH}.mk tconfig.h
+CLEANFILES+= cs-tconfig.h tconfig.h
+
+.include "${.CURDIR}/arch/${MACHINE_ARCH}.mk"
+
+SRCS+= crtbegin.c crtend.c
+OBJS+= crtbegin.o crtend.o
+.if ${MKPIC} != "no"
+SRCS+= crtbeginS.c crtendS.c
+OBJS+= crtbeginS.o crtendS.o # for shared libraries
+SRCS+= crtbeginT.c
+OBJS+= crtbeginT.o # for -static links
+.endif
+
+realall: ${OBJS}
+
+FILES=${OBJS}
+FILESDIR=${LIBDIR}
+
+.PATH: ${DIST}/gcc ${DIST}/gcc/config ${G_CONFIGDIR}
+
+tconfig.h:
+ ${_MKTARGET_CREATE}
+ TM_DEFINES="$(G_tm_defines)" \
+ HEADERS="$(G_xm_file)" XM_DEFINES="$(G_xm_defines)" \
+ TARGET_CPU_DEFAULT="" \
+ ${HOST_SH} $(GNUHOSTDIST)/gcc/mkconfig.sh tconfig.h
+
+# these aren't necessary but are #include'd
+FAKEHEADERS=options.h insn-flags.h insn-constants.h
+${FAKEHEADERS}:
+ ${_MKTARGET_CREATE}
+ touch ${.TARGET}
+DPSRCS+= ${FAKEHEADERS}
+CLEANFILES+= ${FAKEHEADERS}
+
+${OBJS}: ${DPSRCS}
+
+.include <bsd.prog.mk>
+
+# Override the default .c -> .o rule.
+.c.o:
+ ${_MKTARGET_COMPILE}
+ ${CC} ${CPPFLAGS} ${GCFLAGS} ${CPUFLAGS} -c ${.IMPSRC} -o ${.TARGET}.o
+ mv ${.TARGET}.o ${.TARGET}
+
+.if (${MACHINE_ARCH} == "mips64eb") || (${MACHINE_ARCH} == "mips64el")
+# Turn off as(1) warnings on MIPS, since warnings are fatal with WARNS>0
+# and GCC configury passes -finhibit-size-directive which causes mips-gas
+# to barf. Don't know what the real fix for this is...
+#
+# XXX should be COPTS, but that's too early
+CPUFLAGS+=-Wa,--no-warn
+.endif
+
+.else
+
+.include <bsd.prog.mk> # do nothing
+
+.endif # ! EXTERNAL_TOOLCHAIN && MKGCC != no
Index: src/external/gpl3/gcc/lib/crtstuff/crtbegin.c
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/crtbegin.c:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/crtbegin.c Tue Jun 21 06:02:25 2011
@@ -0,0 +1,9 @@
+/* $NetBSD: crtbegin.c,v 1.1 2011/06/21 06:02:25 mrg Exp $ */
+
+/*
+ * Written by Jason R. Thorpe, August 24, 2004.
+ * Public domain.
+ */
+
+#define CRT_BEGIN
+#include "crtstuff.c"
Index: src/external/gpl3/gcc/lib/crtstuff/crtbeginS.c
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/crtbeginS.c:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/crtbeginS.c Tue Jun 21 06:02:25 2011
@@ -0,0 +1,10 @@
+/* $NetBSD: crtbeginS.c,v 1.1 2011/06/21 06:02:25 mrg Exp $ */
+
+/*
+ * Written by Jason R. Thorpe, August 24, 2004.
+ * Public domain.
+ */
+
+#define CRT_BEGIN
+#define CRTSTUFFS_O
+#include "crtstuff.c"
Index: src/external/gpl3/gcc/lib/crtstuff/crtbeginT.c
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/crtbeginT.c:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/crtbeginT.c Tue Jun 21 06:02:25 2011
@@ -0,0 +1,10 @@
+/* $NetBSD: crtbeginT.c,v 1.1 2011/06/21 06:02:25 mrg Exp $ */
+
+/*
+ * Written by Jason R. Thorpe, August 24, 2004.
+ * Public domain.
+ */
+
+#define CRT_BEGIN
+#define CRTSTUFFT_O
+#include "crtstuff.c"
Index: src/external/gpl3/gcc/lib/crtstuff/crtend.c
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/crtend.c:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/crtend.c Tue Jun 21 06:02:25 2011
@@ -0,0 +1,9 @@
+/* $NetBSD: crtend.c,v 1.1 2011/06/21 06:02:25 mrg Exp $ */
+
+/*
+ * Written by Jason R. Thorpe, August 24, 2004.
+ * Public domain.
+ */
+
+#define CRT_END
+#include "crtstuff.c"
Index: src/external/gpl3/gcc/lib/crtstuff/crtendS.c
diff -u /dev/null src/external/gpl3/gcc/lib/crtstuff/crtendS.c:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/crtstuff/crtendS.c Tue Jun 21 06:02:25 2011
@@ -0,0 +1,10 @@
+/* $NetBSD: crtendS.c,v 1.1 2011/06/21 06:02:25 mrg Exp $ */
+
+/*
+ * Written by Jason R. Thorpe, August 24, 2004.
+ * Public domain.
+ */
+
+#define CRT_END
+#define CRTSTUFFS_O
+#include "crtstuff.c"
Index: src/external/gpl3/gcc/lib/libgcc/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/Makefile Tue Jun 21 06:02:25 2011
@@ -0,0 +1,13 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+SUBDIR+= libgcc
+
+.include <bsd.own.mk>
+
+.if ${MKPIC} != "no"
+SUBDIR+= libgcc_eh libgcc_s
+.endif
+
+SUBDIR+= libgcov
+
+.include <bsd.subdir.mk>
Index: src/external/gpl3/gcc/lib/libgcc/Makefile.inc
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/Makefile.inc:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/Makefile.inc Tue Jun 21 06:02:25 2011
@@ -0,0 +1,154 @@
+# $NetBSD: Makefile.inc,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+.if ${MKGCC} != "no"
+.if exists(${.CURDIR}/../arch/${MACHINE_ARCH}.mk)
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}.mk"
+.endif
+.endif
+
+UNSUPPORTED_COMPILER.clang= # defined
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GNUHOSTDIST= ${DIST}
+GCCARCH= ${NETBSDSRCDIR}/gnu/usr.bin/gcc4/arch/${MACHINE_ARCH}
+GCCARCHLIBGCC= ${NETBSDSRCDIR}/gnu/lib/libgcc4/arch/${MACHINE_ARCH}
+GCCARCHXX= ${NETBSDSRCDIR}/gnu/lib/libstdc++-v3_4/arch/${MACHINE_ARCH}
+
+GCPPFLAGS= ${G_LIBGCC2_CFLAGS} ${G_USE_COLLECT2} ${G_INCLUDES}
+CPPFLAGS+= -I${.CURDIR} -I${GCCARCHLIBGCC}
+CPPFLAGS+= -I${GCCARCH} ${GCPPFLAGS:M-D*} ${GCPPFLAGS:M-I*:N-I.*}
+CPPFLAGS+= -I${G_EXTRA_HEADERS:M/*:H:u}
+CPPFLAGS+= -I${DIST} -I${DIST}/gcc/cp -I${DIST}/gcc/config -I${GCCARCHXX} -I.
+
+.if ${MACHINE_ARCH} == "powerpc" || \
+ ${MACHINE_ARCH} == "sh3el" || \
+ ${MACHINE_ARCH} == "sh3eb" || \
+ ${MACHINE_ARCH} == "m68000"
+_TRADITIONAL_CPP=
+COMPILE.S= ${CC} ${AFLAGS} ${CPPFLAGS} -c
+.endif
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+#
+# Old style libgcc build procedure.
+#
+
+# This is copied from gcc/mklibgcc.in:$lib2funcs
+LIB2FUNCS_ALL= _muldi3 _negdi2 _lshrdi3 _ashldi3 _ashrdi3 \
+ _cmpdi2 _ucmpdi2 _floatdidf _floatdisf _fixunsdfsi _fixunssfsi \
+ _fixunsdfdi _fixdfdi _fixunssfdi _fixsfdi _fixxfdi _fixunsxfdi \
+ _floatdixf _fixunsxfsi _fixtfdi _fixunstfdi _floatditf _clear_cache \
+ _enable_execute_stack _trampoline __main _absvsi2 _absvdi2 _addvsi3 \
+ _addvdi3 _subvsi3 _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2 _ctors \
+ _ffssi2 _ffsdi2 _clz _clzsi2 _clzdi2 _ctzsi2 _ctzdi2 _popcount_tab \
+ _popcountsi2 _popcountdi2 _paritysi2 _paritydi2 _powisf2 _powidf2 \
+ _powixf2 _powitf2 \
+
+LIB2FUNCS_ALL+= \
+ _mulsc3 _muldc3 _mulxc3 _multc3 _divsc3 _divdc3 _divxc3 _divtc3
+
+LIB2FUNCS_SHORT:=${LIB2FUNCS_ALL}
+LIB2_DIVMOD_FUNCS:=${G_LIB2_DIVMOD_FUNCS}
+.for f in ${G_LIB1ASMFUNCS}; do
+LIB2FUNCS_SHORT:=${LIB2FUNCS_SHORT:N${f}}
+LIB2_DIVMOD_FUNCS:=${LIB2_DIVMOD_FUNCS:N${f}}
+.endfor
+
+LIB2FUNCS= ${LIB2FUNCS_SHORT:=.c}
+LIB2FUNCS_ST= ${G_LIB2FUNCS_ST:=.c}
+LIB2DIVMOD= ${LIB2_DIVMOD_FUNCS:=.c}
+LIB2_EH= ${G_LIB2ADDEH:M*.c:T}
+.if !empty(G_LIB1ASMFUNCS)
+LIB1ASMFUNCS= ${G_LIB1ASMFUNCS:=.S}
+.endif
+
+DPSRCS+= ${.CURDIR}/../arch/${MACHINE_ARCH}.mk
+CLEANFILES+= ${LIB2FUNCS} ${LIB2FUNCS_ST} ${LIB2DIVMOD} cs-tconfig.h
+.if !empty(G_LIB1ASMFUNCS)
+CLEANFILES+= ${LIB1ASMFUNCS}
+.endif
+
+.for file in ${G_LIB2ADD:M${GNUHOSTDIST}*}
+BUILDSYMLINKS+= ${file} ${file:T:S/.asm$/.S/}
+.endfor
+
+# XXX
+.if ${MACHINE_ARCH} == "m68000"
+CPICFLAGS:=
+BUILDSYMLINKS+= ${DIST}/gcc/config/m68k/fpgnulib.c fpgnulib.c
+BUILDSYMLINKS+= ${DIST}/gcc/config/m68k/fpgnulib.c xfgnulib.c
+CPPFLAGS.xfgnulib.c+=-DEXTFLOAT=1
+.endif
+
+.if ${MACHINE_ARCH} == "powerpc64"
+COPTS+= -mlong-double-128
+.endif
+
+${LIB2FUNCS} ${LIB2FUNCS_ST}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#define L${.PREFIX}\n#include <libgcc2.c>\n' >${.TARGET}
+
+${LIB2DIVMOD}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#define L${.PREFIX}\n#include <libgcc2.c>\n' >${.TARGET}
+
+.if !empty(G_LIB1ASMFUNCS)
+${LIB1ASMFUNCS}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#define L${.PREFIX}\n#include <${G_LIB1ASMSRC}>\n' >${.TARGET}
+.endif
+
+${LIB2_EH:.c=.o}:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.c} -fexceptions ${COPTS.${.IMPSRC:T}} -o ${.TARGET} ${.IMPSRC}
+
+${LIB2_EH:.c=.pico}:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.c} ${CPICFLAGS} -fexceptions ${COPTS.${.IMPSRC:T}} -o ${.TARGET} ${.IMPSRC}
+
+${G_LIB2_DIVMOD_FUNCS:=.o}:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.c} -fexceptions -fnon-call-exceptions ${COPTS.${.IMPSRC:T}} -o ${.TARGET} ${.IMPSRC}
+
+${G_LIB2_DIVMOD_FUNCS:=.pico}:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.c} ${CPICFLAGS} -fexceptions -fnon-call-exceptions ${COPTS.${.IMPSRC:T}} -o ${.TARGET} ${.IMPSRC}
+
+dp-bit.c: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#define FLOAT\n#include <fp-bit.c>\n' >${.TARGET}
+
+.else # defined(MKNATIVE_LIBGCC_NEW)
+
+#
+# New style libgcc build procedure.
+#
+
+.endif # defined(MKNATIVE_LIBGCC_NEW)
+
+#
+# Common rules.
+#
+
+.PATH: ${DIST}/gcc ${DIST}/gcc/cp ${DIST}/gcc/cp/inc ${DIST}/gcc/config \
+ ${G_CONFIGDIR}
+
+tconfig.h:
+ ${_MKTARGET_CREATE}
+ TARGET_CPU_DEFAULT="" \
+ HEADERS="$(G_xm_include_list)" DEFINES="USED_FOR_TARGET $(G_xm_defines)" \
+ ${HOST_SH} $(GNUHOSTDIST)/gcc/mkconfig.sh tconfig.h
+DPSRCS+= tconfig.h
+CLEANFILES+= tconfig.h
+
+BUILDSYMLINKS+= ${G_UNWIND_H} unwind.h
+DPSRCS+= unwind.h
+
+# these aren't necessary but are #include'd
+FAKEHEADERS=options.h insn-flags.h insn-constants.h
+${FAKEHEADERS}:
+ ${_MKTARGET_CREATE}
+ touch ${.TARGET}
+DPSRCS+= ${FAKEHEADERS}
+CLEANFILES+= ${FAKEHEADERS}
Index: src/external/gpl3/gcc/lib/libgcc/Makefile.srcs
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/Makefile.srcs:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/Makefile.srcs Tue Jun 21 06:02:25 2011
@@ -0,0 +1,13 @@
+# $NetBSD: Makefile.srcs,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+#
+# Generated makefiles.
+#
+
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/srcs.tmplsrcs.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/srcs.cppflags.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/srcs.copts.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/libs.lib${LIB}.srcs.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/libs.lib${LIB}.tmplsrcs.tmplsrcs.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/libs.lib${LIB}.tmplsrcs.tmplfpsrcs.mk"
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/libs.lib${LIB}.tmplsrcs.tmplasmsrcs.mk"
Index: src/external/gpl3/gcc/lib/libgcc/Makefile.wrapper
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/Makefile.wrapper:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/Makefile.wrapper Tue Jun 21 06:02:25 2011
@@ -0,0 +1,62 @@
+# $NetBSD: Makefile.wrapper,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+#
+# libgcc function wrapper
+#
+
+.if !empty(SRCS:M*.*)
+${SRCS}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ { for i in ${_CPPFLAGS.${.TARGET}:C|-D||}; do \
+ printf "#define "; echo $$i | sed -e 's,=, ,g'; \
+ done; \
+ printf '#include <tmplsrc_${SRCS.${.TARGET}:C|/|_|g}>\n'; \
+ } >${.TARGET}
+
+DPSRCS+= ${SRCS}
+CLEANFILES+= ${SRCS}
+.else
+.undef LIB
+.endif
+
+#
+# libgcc functions that are built in a single file
+#
+
+.if !empty(TMPLSRCS:M*)
+${TMPLSRCS:C|^|tmplsrc_|}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#include <${.TARGET:C|^tmplsrc_||}>\n' >${.TARGET}
+
+${SRCS}: ${TMPLSRCS:C|^|tmplsrc_|}
+DPSRCS+= ${TMPLSRCS:C|^|tmplsrc_|}
+CLEANFILES+= ${TMPLSRCS:C|^|tmplsrc_|}
+.endif
+
+#
+# soft float functions
+#
+
+.if !empty(TMPLFPSRCS:M*)
+${TMPLFPSRCS:C|^|tmplsrc_|}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#include "${GCCARCHLIBGCC}/${.TARGET:C|^tmplsrc_||}"\n' >${.TARGET}
+
+${SRCS}: ${TMPLFPSRCS:C|^|tmplsrc_|}
+DPSRCS+= ${TMPLFPSRCS:C|^|tmplsrc_|}
+CLEANFILES+= ${TMPLFPSRCS:C|^|tmplsrc_|}
+.endif
+
+#
+# functions written in an asm file
+#
+
+.if !empty(TMPLASMSRCS:M*.*)
+${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#include <${G_LIB1ASMSRC}>\n' >${.TARGET}
+
+${SRCS}: ${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
+DPSRCS+= ${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
+CLEANFILES+= ${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
+.endif
Index: src/external/gpl3/gcc/lib/libgcc/libgcc/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/libgcc/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/libgcc/Makefile Tue Jun 21 06:02:25 2011
@@ -0,0 +1,74 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:25 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+LIB= gcc
+
+.include <bsd.own.mk>
+
+.if ${MKGCC} != "no"
+
+.cc: # disable .cc->NULL transform
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+SRCS+= ${LIB2FUNCS} ${LIB2FUNCS_ST} ${LIB2DIVMOD} \
+ ${G_LIB2ADD:T:S/.asm/.S/} ${LIB1ASMFUNCS}
+.if ${MKPIC} == "no"
+SRCS+= ${LIB2_EH}
+.endif
+
+.else # defined(MKNATIVE_LIBGCC_NEW)
+
+.include "../Makefile.srcs"
+
+# New style.
+TMPLSRCS= ${TMPLSRCS.libgcc.a}
+TMPLFPSRCS= ${TMPLFPSRCS.libgcc.a}
+TMPLASMSRCS= ${TMPLASMSRCS.libgcc.a}
+SRCS= ${SRCS.libgcc.a}
+
+.include "../Makefile.wrapper"
+
+.endif # defined(MKNATIVE_LIBGCC_NEW)
+
+.include <bsd.lib.mk>
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+CLEANFILES+= ${SOBJS:=.tmp1} ${SOBJS:=.tmp2}
+
+.c.pico:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.c} ${CSHLIBFLAGS} ${.IMPSRC} -o ${.TARGET}.tmp1
+ ${NM} -pg ${.TARGET}.tmp1 | \
+ ${TOOL_AWK} 'NF == 3 { print "\t.hidden", $$3 }' | \
+ ${CC} ${COPTS} -Wl,-x -r -nostdinc -nostdlib ${CPUFLAGS} -o ${.TARGET}.tmp2 ${.TARGET}.tmp1 -xassembler -
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+ mv ${.TARGET}.tmp2 ${.TARGET}
+.else
+ ${LD} -x -r ${.TARGET}.tmp2 -o ${.TARGET}
+ rm -f ${.TARGET}.tmp2
+.endif
+ rm -f ${.TARGET}.tmp1
+
+.S.pico .s.pico:
+ ${_MKTARGET_COMPILE}
+ ${COMPILE.S} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${.IMPSRC} -o ${.TARGET}.tmp1
+ ${NM} -pg ${.TARGET}.tmp1 | \
+ ${TOOL_AWK} 'NF == 3 { print "\t.hidden", $$3 }' | \
+ ${CC} -Wl,-x -r -nostdinc -nostdlib -o ${.TARGET}.tmp2 ${.TARGET}.tmp1 -xassembler -
+.if defined(COPTS) && !empty(COPTS:M*-g*)
+ mv ${.TARGET}.tmp2 ${.TARGET}
+.else
+ ${LD} -x -r ${.TARGET}.tmp2 -o ${.TARGET}
+ rm -f ${.TARGET}.tmp2
+.endif
+ rm -f ${.TARGET}.tmp1
+
+.endif # !defined(MKNATIVE_LIBGCC_NEW)
+
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libgcc/libgcc_eh/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/libgcc_eh/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/libgcc_eh/Makefile Tue Jun 21 06:02:26 2011
@@ -0,0 +1,37 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:26 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+LIB= gcc_eh
+
+.include <bsd.own.mk>
+
+.if ${MKGCC} != "no"
+
+.cc: # disable .cc->NULL transform
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+SRCS+= ${LIB2_EH}
+COPTS.unwind-dw2.c = -Wno-stack-protector
+
+.else # defined(MKNATIVE_LIBGCC_NEW)
+
+.include "../Makefile.srcs"
+
+# New style.
+TMPLSRCS= ${TMPLSRCS.libgcc_eh.a}
+TMPLFPSRCS= ${TMPLFPSRCS.libgcc_eh.a}
+TMPLASMSRCS= ${TMPLASMSRCS.libgcc_eh.a}
+SRCS= ${SRCS.libgcc_eh.a}
+
+.include "../Makefile.wrapper"
+
+.endif # defined(MKNATIVE_LIBGCC_NEW)
+
+.include <bsd.lib.mk>
+
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libgcc/libgcc_s/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/libgcc_s/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/libgcc_s/Makefile Tue Jun 21 06:02:26 2011
@@ -0,0 +1,69 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:26 mrg Exp $
+
+USE_SHLIBDIR= yes
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+LIB= gcc_s
+NOSTATICLIB= # defined
+NOPROFILE= # defined
+NOPICINSTALL= # defined
+
+.include <bsd.own.mk>
+
+.if ${MKGCC} != "no"
+
+.cc: # disable .cc->NULL transform
+
+SHLIB_MAJOR= 1
+SHLIB_MINOR= 0
+
+LDFLAGS+= -nodefaultlibs
+LDFLAGS+= -Wl,--version-script=${.OBJDIR}/libgcc.map
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+SRCS+= ${LIB2FUNCS} ${LIB2DIVMOD} ${LIB2_EH} \
+ ${G_LIB2ADD:T:S/.asm/.S/} ${LIB1ASMFUNCS}
+
+.else # defined(MKNATIVE_LIBGCC_NEW)
+
+.include "../Makefile.srcs"
+
+# New style.
+TMPLSRCS= ${TMPLSRCS.libgcc_s.so}
+TMPLFPSRCS= ${TMPLFPSRCS.libgcc_s.so}
+TMPLASMSRCS= ${TMPLASMSRCS.libgcc_s.so}
+SRCS= ${SRCS.libgcc_s.so}
+
+.include "../Makefile.wrapper"
+
+.endif # defined(MKNATIVE_LIBGCC_NEW)
+
+COPTS.unwind-dw2.c = -Wno-stack-protector
+
+DPADD+= libgcc.map
+CLEANFILES+= libgcc.map
+
+.include <bsd.lib.mk>
+
+.if ${MKPICLIB} != "no"
+LIBGCC_S_OBJS= ${SOBJS}
+.else
+LIBGCC_S_OBJS= ${OBJS}
+.endif
+
+libgcc.map: ${LIBGCC_S_OBJS} ${G_SHLIB_MKMAP} ${G_SHLIB_MAPFILES}
+ { \
+ ${NM} ${G_SHLIB_NM_FLAGS} ${LIBGCC_S_OBJS}; \
+ echo %%; \
+ cat ${G_SHLIB_MAPFILES} | \
+ ${TOOL_SED} -e "/^[ ]*#/d" \
+ -e 's/^%\(if\|else\|elif\|endif\|define\)/#\1/' | \
+ ${CC} ${G_LIBGCC2_CFLAGS} ${G_INCLUDES} -E -xassembler-with-cpp -; \
+ } | ${TOOL_AWK} -f ${G_SHLIB_MKMAP} > ${.TARGET}.tmp
+ mv ${.TARGET}.tmp ${.TARGET}
+
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile Tue Jun 21 06:02:26 2011
@@ -0,0 +1,53 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:26 mrg Exp $
+
+REQUIRETOOLS= yes
+NOPIC= # defined
+NOPROFILE= # defined
+NOLINT= # defined
+
+LIB= gcov
+
+.include <bsd.own.mk>
+
+.if ${MKGCC} != "no"
+
+.include "${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk"
+
+LIBGCOVSRCS= ${G_LIBGCOV:=.c}
+
+CPPFLAGS+= -I${.CURDIR}/arch/${MACHINE_ARCH}
+CPPFLAGS+= -Wno-stack-protector
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+DPSRCS+= ${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk
+SRCS+= ${LIBGCOVSRCS}
+
+.else # defined(MKNATIVE_LIBGCC_NEW)
+
+.include "../Makefile.srcs"
+
+# New style.
+SRCS= ${SRCS.libgcov.a}
+TMPLSRCS= ${TMPLSRCS.libgcov.a}
+TMPLFPSRCS= ${TMPLFPSRCS.libgcov.a}
+TMPLASMSRCS= ${TMPLASMSRCS.libgcov.a}
+
+.include "../Makefile.wrapper"
+
+.endif # defined(MKNATIVE_LIBGCC_NEW)
+
+.if !defined(MKNATIVE_LIBGCC_NEW)
+
+CLEANFILES+= ${LIBGCOVSRCS}
+
+${LIBGCOVSRCS}: ${.CURDIR}/Makefile
+ ${_MKTARGET_CREATE}
+ printf '#define L${.PREFIX}\n#include <libgcov.c>\n' >${.TARGET}
+
+.endif # !defined(MKNATIVE_LIBGCC_NEW)
+
+.include <bsd.lib.mk>
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libiberty/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libiberty/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libiberty/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,27 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+LIBISPRIVATE= yes
+
+.include <bsd.own.mk>
+
+LIB= iberty
+
+.include "${.CURDIR}/defs.mk"
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GNUHOSTDIST= ${DIST}
+
+SRCS= ${G_REQUIRED_OFILES:.o=.c} ${G_EXTRA_OFILES:.o=.c} \
+ ${G_LIBOBJS:.o=.c} ${G_ALLOCA:.o=.c}
+
+CPPFLAGS+= -DHAVE_CONFIG_H -I${.CURDIR}/arch/${MACHINE_ARCH} \
+ -I${DIST}/include
+
+COPTS.argv.c = -Wno-stack-protector
+COPTS.cp-demangle.c = -Wno-stack-protector
+COPTS.make-relative-prefix.c = -Wno-stack-protector
+COPTS.regex.c = -Wno-stack-protector
+
+.PATH: ${DIST}/libiberty
+
+.include <bsd.lib.mk>
Index: src/external/gpl3/gcc/lib/libiberty/defs.mk
diff -u /dev/null src/external/gpl3/gcc/lib/libiberty/defs.mk:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libiberty/defs.mk Tue Jun 21 06:02:27 2011
@@ -0,0 +1,8 @@
+# This file is automatically generated. DO NOT EDIT!
+# Generated from: NetBSD: mknative-gcc,v 1.45 2009/12/17 15:48:13 uebayasi Exp
+# Generated from: NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp
+#
+G_ALLOCA=
+G_EXTRA_OFILES=
+G_LIBOBJS=mempcpy.o mkstemps.o strverscmp.o strncmp.o
+G_REQUIRED_OFILES=regex.o cplus-dem.o cp-demangle.o md5.o alloca.o argv.o choose-temp.o concat.o cp-demint.o dyn-string.o fdmatch.o fibheap.o floatformat.o fnmatch.o fopen_unlocked.o getopt.o getopt1.o getpwd.o getruntime.o hashtab.o hex.o lbasename.o lrealpath.o make-relative-prefix.o make-temp-file.o objalloc.o obstack.o partition.o pexecute.o physmem.o pex-common.o pex-one.o pex-unix.o safe-ctype.o sort.o spaces.o splay-tree.o strerror.o strsignal.o ternary.o unlink-if-ordinary.o xatexit.o xexit.o xmalloc.o xmemdup.o xstrdup.o xstrerror.o xstrndup.o
Index: src/external/gpl3/gcc/lib/libobjc/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libobjc/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libobjc/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,115 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+UNSUPPORTED_COMPILER.clang= # defined
+
+.include <bsd.own.mk>
+
+LIB= objc
+
+.if ${MKGCC} != "no"
+
+SHLIB_MAJOR= 3
+SHLIB_MINOR= 0
+
+# XXX just while all platforms defs.mk are updated..
+.if exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk)
+# Machine-dependent definitions (include file names).
+.include "${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk"
+EXTRA_FAKEHEADERS=
+.else
+# Machine-independent definitions (include file names).
+.include "${.CURDIR}/defs.mk"
+EXTRA_FAKEHEADERS= options.h
+.endif
+
+LIBGCCOBJ!= cd ${.CURDIR}/../libgcc4/libgcc && ${PRINTOBJDIR}
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GNUHOSTDIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GCCARCH= ${NETBSDSRCDIR}/gnu/usr.bin/gcc4/arch/${MACHINE_ARCH}
+LIBOBJCARCH= ${NETBSDSRCDIR}/gnu/lib/libobjc4/arch/${MACHINE_ARCH}
+GCCLIBXX= ${NETBSDSRCDIR}/gnu/lib/libstdc++-v3_4/arch/${MACHINE_ARCH}
+
+SRCS= ${G_OBJS:N[A-Z]*:Nlinking.lo:.lo=.c} ${G_OBJS:M[A-Z]*:.lo=.m} linking.m
+
+GCPPFLAGS= ${G_ALL_CFLAGS} ${G_INCLUDES}
+CPPFLAGS+= -I. -I${.CURDIR}/arch/${MACHINE_ARCH}
+CPPFLAGS+= -I${GCCARCH} ${GCPPFLAGS:M-D*} ${GCPPFLAGS:M-I*:N-I.*}
+CPPFLAGS+= -I${GCCLIBXX}
+
+BUILDSYMLINKS= ${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH} bits
+DPSRCS+= bits
+
+.for f in Protocol.m Object.m NXConstStr.m linking.m
+OBJCOPTS.${f}= -fgnu-runtime
+.endfor
+
+.for f in thr.c thr-objc.c
+COPTS.${f}= -Wno-missing-noreturn
+.endfor
+
+COPTS+= -fno-strict-aliasing -fexceptions
+OBJCOPTS+= -fno-strict-aliasing -fexceptions
+
+OBJCOPTS.Object.m = -Wno-stack-protector
+COPTS.sendmsg.c = -Wno-stack-protector
+
+INCS= ${G_OBJC_H}
+INCSDIR= /usr/include/objc
+
+DPSRCS+= runtime-info.h
+CLEANFILES+= rtscratch rtscratch.s runtime-info.h
+runtime-info.h:
+ ${_MKTARGET_CREATE}
+ touch rtscratch
+ `${OBJC} --print-prog-name=cc1obj` -print-objc-runtime-info rtscratch >$@
+
+.PATH: ${DIST}/libobjc ${DIST}/libobjc/objc
+
+.include <bsd.lib.mk>
+
+${OBJS} ${POBJS} ${SOBJS}: runtime-info.h
+
+# these aren't necessary but are #include'd
+FAKEHEADERS= ${EXTRA_FAKEHEADERS} insn-flags.h insn-constants.h
+${FAKEHEADERS}:
+ ${_MKTARGET_CREATE}
+ touch ${.TARGET}
+tm.h ${SRCS}: ${FAKEHEADERS}
+CLEANFILES+= ${FAKEHEADERS}
+
+${SRCS}: tconfig.h unwind.h options.h
+
+tconfig.h:
+ ${_MKTARGET_CREATE}
+ TARGET_CPU_DEFAULT="" \
+ HEADERS="$(G_xm_include_list)" DEFINES="USED_FOR_TARGET $(G_xm_defines)" \
+ ${HOST_SH} $(GNUHOSTDIST)/gcc/mkconfig.sh tconfig.h
+
+unwind.h: ${G_UNWIND_H}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${G_UNWIND_H} ${.TARGET}
+
+CLEANFILES+= cs-tconfig.h tconfig.h unwind.h
+
+# XXX just while all platforms defs.mk are updated..
+.if exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk)
+optionlist: ${G_ALL_OPT_FILES} ${LIBOBJCARCH}/defs.mk Makefile ${DIST}/gcc/opt-gather.awk
+ ${TOOL_AWK} -f ${DIST}/gcc/opt-gather.awk ${G_ALL_OPT_FILES} \
+ > ${.TARGET}
+
+options.h: optionlist ${DIST}/gcc/opt-functions.awk ${DIST}/gcc/opth-gen.awk
+ ${TOOL_AWK} -f ${DIST}/gcc/opt-functions.awk \
+ -f ${DIST}/gcc/opth-gen.awk \
+ < optionlist > ${.TARGET}
+
+CLEANFILES+= options.h optionlist
+.endif
+
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libstdc++-v3/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,134 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+
+.include <bsd.own.mk>
+
+LIB= stdc++
+LDADD= -lgcc_s
+
+LIBDPLIBS+= m ${.CURDIR}/../../../lib/libm
+
+CWARNFLAGS.clang+= -Wno-logical-op-parentheses \
+ -Wno-deprecated-writable-strings -Wno-parentheses
+
+.if exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk) && ${MKGCC} != "no"
+.include "${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk"
+
+SHLIB_MAJOR= 7
+SHLIB_MINOR= 0
+
+SUBDIR= include
+
+INCS= c++config.h
+INCSDIR= /usr/include/g++
+
+.include "${.CURDIR}/../libsupc++4/Makefile.common"
+
+SRCS= ${LIBMATHSRCS} ${LIBSUPCXXSRCS} ${LIBSTDCXXSRCS}
+# affects profiling; can't switch it off just for profiling easily.
+#CXXFLAGS+= ${G_SECTION_FLAGS}
+#CXXFLAGS+= -ffunction-sections -fdata-sections
+CXXFLAGS+= -fno-implicit-templates -fdiagnostics-show-location=once
+CPPFLAGS+= -I${DIST}/libstdc++-v3/include
+
+CONF= ${DIST}/libstdc++-v3/config
+
+#BUILDSYMLINKS+= ${CONF}/io/basic_file_stdio.cc basic_file.cc \
+# ${CONF}/locale/generic/c_locale.cc c++locale.cc
+
+GLIBCPP_INCLUDE_DIR= ${DESTDIR}/usr/include/g++
+
+COPTS.cp-demangle.c = -Wno-stack-protector
+COPTS.fstream-inst.cc = -Wno-stack-protector
+COPTS.locale-inst.cc = -Wno-stack-protector
+COPTS.misc-inst.cc = -Wno-stack-protector
+COPTS.ostream-inst.cc = -Wno-stack-protector
+COPTS.valarray-inst.cc = -Wno-stack-protector
+COPTS.wlocale-inst.cc = -Wno-stack-protector
+COPTS.concept-inst.cc= -D_GLIBCPP_CONCEPT_CHECKS -fimplicit-templates
+CPPFLAGS.strstream.cc= -I$(GLIBCPP_INCLUDE_DIR)/backward -Wno-deprecated
+
+# XXX
+MKDEPFLAGS+= -I$(GLIBCPP_INCLUDE_DIR)/backward
+
+.include <bsd.lib.mk>
+.include <bsd.subdir.mk>
+.include <bsd.info.mk>
+
+GLIBCXX_SRCDIR= ${DIST}/libstdc++-v3
+
+codecvt_members.cc: ${GLIBCXX_SRCDIR}/${G_CCODECVT_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CCODECVT_CC} ${.TARGET}
+
+collate_members.cc: ${GLIBCXX_SRCDIR}/${G_CCOLLATE_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CCOLLATE_CC} ${.TARGET}
+
+ctype_members.cc: ${GLIBCXX_SRCDIR}/${G_CCTYPE_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CCTYPE_CC} ${.TARGET}
+
+messages_members.cc: ${GLIBCXX_SRCDIR}/${G_CMESSAGES_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CMESSAGES_CC} ${.TARGET}
+
+monetary_members.cc: ${GLIBCXX_SRCDIR}/${G_CMONEY_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CMONEY_CC} ${.TARGET}
+
+numeric_members.cc: ${GLIBCXX_SRCDIR}/${G_CNUMERIC_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CNUMERIC_CC} ${.TARGET}
+
+time_members.cc: ${GLIBCXX_SRCDIR}/${G_CTIME_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CTIME_CC} ${.TARGET}
+
+atomicity.cc: ${G_atomicity_file}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${G_atomicity_file} ${.TARGET}
+
+c++locale.cc: ${GLIBCXX_SRCDIR}/${G_CLOCALE_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_CLOCALE_CC} ${.TARGET}
+
+basic_file.cc: ${GLIBCXX_SRCDIR}/${G_BASIC_FILE_CC}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${GLIBCXX_SRCDIR}/${G_BASIC_FILE_CC} ${.TARGET}
+
+
+CLEANFILES+= atomicity.cc basic_file.cc c++locale.cc codecvt_members.cc
+CLEANFILES+= collate_members.cc ctype_members.cc messages_members.cc
+CLEANFILES+= monetary_members.cc numeric_members.cc time_members.cc
+
+${SRCS}: unwind.h
+unwind.h: ${G_UNWIND_H}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${G_UNWIND_H} ${.TARGET}
+CLEANFILES+= unwind.h
+
+.PATH: ${DIST}/libstdc++-v3/src \
+ ${DIST}/libstdc++-v3/libmath \
+ ${DIST}/libstdc++-v3/libsupc++ \
+ ${DIST}/libiberty \
+ ${CONF}/locale/generic \
+ ${.CURDIR}/arch/${MACHINE_ARCH}
+
+${OBJS}: ${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,33 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+SUBDIR= backward ext bits debug tr1
+#SUBDIR+= pb_assoc
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+
+INCS= exception new typeinfo cxxabi.h exception_defines.h
+INCS+= ${G_std_headers_rename} ${G_c_base_headers_rename}
+INCS+= ${G_c_compatibility_headers_extra}
+INCSDIR= /usr/include/g++
+
+${G_std_headers_rename}: ${.CURDIR}/Makefile
+ cp ${DIST}/libstdc++-v3/include/std/std_${.TARGET}.h ${.TARGET}
+
+CLEANFILES+= ${G_std_headers_rename} ${G_c_base_headers_rename}
+
+.PATH: ${DIST}/libstdc++-v3 ${DIST}/libstdc++-v3/libsupc++
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
+.include <bsd.subdir.mk>
+
+${G_c_base_headers_rename}: ${.CURDIR}/Makefile
+ cp ${DIST}/libstdc++-v3/include/c_std/std_${.TARGET}.h ${.TARGET}
+
+
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/backward/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/backward/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/backward/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+
+INCS= ${G_backward_headers}
+INCSDIR= /usr/include/g++/backward
+
+.PATH: ${DIST}/libstdc++-v3/include/backward
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/bits/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/bits/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/bits/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,45 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+CONF= ${DIST}/libstdc++-v3/config
+
+INCS= ${G_bits_headers} ${G_c_base_headers_extra} ${G_thread_host_headers} ${G_host_headers_extra} ${G_host_headers}
+INCSDIR= /usr/include/g++/bits
+
+CLEANFILES+= basic_file.h c++io.h c++locale.h
+
+basic_file.h: ${CONF}/io/basic_file_stdio.h
+ cp $> ${.TARGET}
+c++io.h: ${CONF}/io/c_io_stdio.h
+ cp $> ${.TARGET}
+c++locale.h: ${CONF}/locale/generic/c_locale.h
+ cp $> ${.TARGET}
+
+# List of places to find cpu files; maybe do this differently from
+# mknative?
+BITS_CPUDIR.sparc64=sparc
+
+_DIR=${BITS_CPUDIR.${MACHINE_ARCH}}
+.if ${_DIR} != ""
+BITS_CPUDIR=${BITS_CPUDIR.${MACHINE_ARCH}}
+.else
+BITS_CPUDIR=${MACHINE_GNU_ARCH}
+.endif
+
+.PATH: ${DIST}/libstdc++-v3/include/bits \
+ ${DIST}/libstdc++-v3/include/c_std \
+ ${CONF}/os/bsd/netbsd \
+ ${CONF}/io \
+ ${CONF}/cpu/${BITS_CPUDIR} \
+ ${CONF}/cpu/generic \
+ ${CONF}/locale/generic \
+ ${.CURDIR}/../../arch/${MACHINE_ARCH}
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/debug/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/debug/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/debug/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+
+INCS= ${G_debug_headers}
+INCSDIR= /usr/include/g++/debug
+
+.PATH: ${DIST}/libstdc++-v3/include/debug
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/ext/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/ext/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/ext/Makefile Tue Jun 21 06:02:27 2011
@@ -0,0 +1,22 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:27 mrg Exp $
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+
+INCS= ${G_ext_headers}
+INCSDIR= /usr/include/g++/ext
+
+.PATH: ${DIST}/libstdc++-v3/include/ext
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
+
+# XXX Not yet
+#SUBDIR= pb_assoc
+
+#.include <bsd.subdir.mk>
Index: src/external/gpl3/gcc/lib/libstdc++-v3/include/tr1/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libstdc++-v3/include/tr1/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libstdc++-v3/include/tr1/Makefile Tue Jun 21 06:02:28 2011
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:28 mrg Exp $
+
+.include <bsd.own.mk>
+
+.include "${.CURDIR}/../../arch/${MACHINE_ARCH}/defs.mk"
+
+.cc: # disable .cc->NULL transform
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+
+INCS= ${G_tr1_headers}
+INCSDIR= /usr/include/g++/tr1
+
+.PATH: ${DIST}/libstdc++-v3/include/tr1
+
+# Get default targets including <bsd.inc.mk>.
+.include <bsd.prog.mk>
Index: src/external/gpl3/gcc/lib/libsupc++/Makefile
diff -u /dev/null src/external/gpl3/gcc/lib/libsupc++/Makefile:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libsupc++/Makefile Tue Jun 21 06:02:28 2011
@@ -0,0 +1,45 @@
+# $NetBSD: Makefile,v 1.1 2011/06/21 06:02:28 mrg Exp $
+
+REQUIRETOOLS= yes
+NOLINT= # defined
+NOPIC= # defined
+NOPROFILE= # defined
+
+CWARNFLAGS.clang+= -Wno-parentheses
+
+.include <bsd.own.mk>
+
+LIB= supc++
+
+.if exists(${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH}/defs.mk) && ${MKGCC} != "no"
+.include "${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH}/defs.mk"
+
+SHLIB_MAJOR= 1
+SHLIB_MINOR= 0
+
+.include "${.CURDIR}/../libsupc++4/Makefile.common"
+
+SRCS= ${LIBSUPCXXSRCS} xmalloc.c
+CXXFLAGS+= ${G_SECTION_FLAGS}
+
+COPTS.cp-demangle.c = -Wno-stack-protector
+
+.include <bsd.lib.mk>
+
+${SRCS}: unwind.h
+unwind.h: ${G_UNWIND_H}
+ ${_MKTARGET_CREATE}
+ rm -f ${.TARGET}
+ ln -s ${G_UNWIND_H} ${.TARGET}
+CLEANFILES+= unwind.h
+
+.PATH: ${DIST}/libstdc++-v3/src \
+ ${DIST}/libstdc++-v3/libmath \
+ ${DIST}/libstdc++-v3/libsupc++ \
+ ${DIST}/libiberty \
+ ${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH}
+
+${OBJS}: ${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH}/defs.mk
+.else
+.include <bsd.prog.mk> # do nothing
+.endif
Index: src/external/gpl3/gcc/lib/libsupc++/Makefile.common
diff -u /dev/null src/external/gpl3/gcc/lib/libsupc++/Makefile.common:1.1
--- /dev/null Tue Jun 21 06:02:29 2011
+++ src/external/gpl3/gcc/lib/libsupc++/Makefile.common Tue Jun 21 06:02:28 2011
@@ -0,0 +1,19 @@
+# $NetBSD: Makefile.common,v 1.1 2011/06/21 06:02:28 mrg Exp $
+
+DIST= ${NETBSDSRCDIR}/gnu/dist/gcc4
+GNUHOSTDIST= ${DIST}
+
+LIBMATHSRCS= ${G_libmath_la_SOURCES} ${G_libmath_la_LIBADD:.lo=.c}
+LIBSTDCXXSRCS= ${G_SRC_SOURCES}
+LIBSUPCXXSRCS= ${G_LIBSUPCXX_SOURCES} ${G_LIBSUPCXX_C_SOURCES}
+
+CPPFLAGS+= -I${DIST}/gcc
+CPPFLAGS+= -I${DIST}/include
+CPPFLAGS+= -I${DIST}/libstdc++-v3/libsupc++
+CPPFLAGS+= -I${.CURDIR}/../libstdc++-v3_4/arch/${MACHINE_ARCH} -I.
+CPPFLAGS+= -DHAVE_STDLIB_H -DHAVE_STRING_H
+
+CPPFLAGS.cp-demangle.c=-DIN_GLIBCPP_V3
+#CPPFLAGS.dyn-string.c=-DIN_GLIBCPP_V3
+
+#BUILDSYMLINKS+= ${DIST}/libiberty/cp-demangle.c cxa_demangle.c