import the non-arch specific makefiles we use to build GCC 4.1
as a base reference.
This commit is contained in:
parent
2f4e9d03df
commit
2a3bc70d3b
|
@ -0,0 +1,82 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,9 @@
|
||||||
|
/* $NetBSD: crtbegin.c,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Written by Jason R. Thorpe, August 24, 2004.
|
||||||
|
* Public domain.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CRT_BEGIN
|
||||||
|
#include "crtstuff.c"
|
|
@ -0,0 +1,10 @@
|
||||||
|
/* $NetBSD: crtbeginS.c,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Written by Jason R. Thorpe, August 24, 2004.
|
||||||
|
* Public domain.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CRT_BEGIN
|
||||||
|
#define CRTSTUFFS_O
|
||||||
|
#include "crtstuff.c"
|
|
@ -0,0 +1,10 @@
|
||||||
|
/* $NetBSD: crtbeginT.c,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Written by Jason R. Thorpe, August 24, 2004.
|
||||||
|
* Public domain.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CRT_BEGIN
|
||||||
|
#define CRTSTUFFT_O
|
||||||
|
#include "crtstuff.c"
|
|
@ -0,0 +1,9 @@
|
||||||
|
/* $NetBSD: crtend.c,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Written by Jason R. Thorpe, August 24, 2004.
|
||||||
|
* Public domain.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CRT_END
|
||||||
|
#include "crtstuff.c"
|
|
@ -0,0 +1,10 @@
|
||||||
|
/* $NetBSD: crtendS.c,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Written by Jason R. Thorpe, August 24, 2004.
|
||||||
|
* Public domain.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define CRT_END
|
||||||
|
#define CRTSTUFFS_O
|
||||||
|
#include "crtstuff.c"
|
|
@ -0,0 +1,13 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
SUBDIR+= libgcc
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
.if ${MKPIC} != "no"
|
||||||
|
SUBDIR+= libgcc_eh libgcc_s
|
||||||
|
.endif
|
||||||
|
|
||||||
|
SUBDIR+= libgcov
|
||||||
|
|
||||||
|
.include <bsd.subdir.mk>
|
|
@ -0,0 +1,154 @@
|
||||||
|
# $NetBSD: Makefile.inc,v 1.1.1.1 2011/06/21 02:48:27 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}
|
|
@ -0,0 +1,13 @@
|
||||||
|
# $NetBSD: Makefile.srcs,v 1.1.1.1 2011/06/21 02:48:27 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"
|
|
@ -0,0 +1,62 @@
|
||||||
|
# $NetBSD: Makefile.wrapper,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,74 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,37 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,69 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,53 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,115 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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
|
|
@ -0,0 +1,134 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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
|
|
@ -0,0 +1,33 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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>
|
|
@ -0,0 +1,45 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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>
|
|
@ -0,0 +1,17 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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>
|
|
@ -0,0 +1,22 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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>
|
|
@ -0,0 +1,17 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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_tr1_headers}
|
||||||
|
INCSDIR= /usr/include/g++/tr1
|
||||||
|
|
||||||
|
.PATH: ${DIST}/libstdc++-v3/include/tr1
|
||||||
|
|
||||||
|
# Get default targets including <bsd.inc.mk>.
|
||||||
|
.include <bsd.prog.mk>
|
|
@ -0,0 +1,45 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,19 @@
|
||||||
|
# $NetBSD: Makefile.common,v 1.1.1.1 2011/06/21 02:48:27 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
|
|
@ -0,0 +1,21 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
NOOBJ=# defined
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
.if ${MKGCC} != "no" && exists(${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk)
|
||||||
|
|
||||||
|
SUBDIR+= host-libiberty libiberty .WAIT \
|
||||||
|
backend .WAIT \
|
||||||
|
frontend .WAIT \
|
||||||
|
libcpp gcov .WAIT \
|
||||||
|
cc1 cc1obj cc1plus cpp g++ gcc \
|
||||||
|
include protoize unprotoize
|
||||||
|
|
||||||
|
.include <bsd.subdir.mk>
|
||||||
|
|
||||||
|
.else
|
||||||
|
# Do nothing. (PROG undefined)
|
||||||
|
.include <bsd.prog.mk>
|
||||||
|
.endif
|
|
@ -0,0 +1,44 @@
|
||||||
|
# $NetBSD: Makefile.backend,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
NOMAN= # defined
|
||||||
|
BINDIR= /usr/libexec
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${GCCARCH} -I${BACKENDOBJ} \
|
||||||
|
${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*}
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
DPADD= ${BACKENDOBJ}/libbackend.a ${LIBIBERTYOBJ}/libiberty.a
|
||||||
|
LDADD= -L${BACKENDOBJ} -lbackend -L${LIBIBERTYOBJ} -liberty
|
||||||
|
|
||||||
|
CLEANFILES+= ${PROG}-checksum.c ${PROG}-dummy dummy-checksum.d \
|
||||||
|
dummy-checksum.o genchecksum genchecksum.lo
|
||||||
|
|
||||||
|
.include <bsd.prog.mk>
|
||||||
|
|
||||||
|
# Don't auto-frob .y or .l files.
|
||||||
|
.l.c .y.c .y.h:
|
||||||
|
@true
|
||||||
|
|
||||||
|
CPPFLAGS.genchecksum.c+= -DGENERATOR_FILE -I${GCCARCH} -I${DIST}/include -I${BACKENDOBJ}
|
||||||
|
|
||||||
|
genchecksum.lo:
|
||||||
|
genchecksum: genchecksum.lo
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
# This is a copy of the ${PROG} target from bsd.prog.mk.
|
||||||
|
DUMMYOBJS= ${SRCS:N${PROG}-checksum.c:.c=.o} dummy-checksum.o
|
||||||
|
${PROG}-dummy: ${DUMMYOBJS}
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
.if defined(DESTDIR)
|
||||||
|
${_CCLINK} -Wl,-nostdlib \
|
||||||
|
${LDFLAGS} ${LDSTATIC} -o ${.TARGET} ${_PROGLDOPTS} \
|
||||||
|
-B${_GCC_CRTDIR}/ -B${DESTDIR}/usr/lib/ \
|
||||||
|
${DUMMYOBJS} ${LDADD} \
|
||||||
|
-L${_GCC_LIBGCCDIR} -L${DESTDIR}/usr/lib
|
||||||
|
.else
|
||||||
|
${_CCLINK} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} ${_PROGLDOPTS} ${DUMMYOBJS} ${LDADD}
|
||||||
|
.endif # defined(DESTDIR)
|
||||||
|
${PROG}-checksum.c: genchecksum ${PROG}-dummy
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genchecksum ${PROG}-dummy >${.TARGET}
|
|
@ -0,0 +1,23 @@
|
||||||
|
# $NetBSD: Makefile.frontend,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
BINDIR= /usr/bin
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${GCCARCH} -I${FRONTENDOBJ} \
|
||||||
|
${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*}
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
DPADD= ${FRONTENDOBJ}/libfrontend.a ${LIBIBERTYOBJ}/libiberty.a
|
||||||
|
LDADD= -L${FRONTENDOBJ} -lfrontend -L${LIBIBERTYOBJ} -liberty
|
||||||
|
|
||||||
|
.include <bsd.prog.mk>
|
||||||
|
|
||||||
|
gcc-vers.texi:
|
||||||
|
(echo "@set version-GCC $(BASEVER)"; \
|
||||||
|
if [ "$(DEVPHASE)" = "experimental" ]; then \
|
||||||
|
echo "@set DEVELOPMENT"; \
|
||||||
|
else \
|
||||||
|
echo "@clear DEVELOPMENT"; \
|
||||||
|
fi) > ${.TARGET}
|
||||||
|
|
||||||
|
CLEANFILES+= gcc-vers.texi
|
|
@ -0,0 +1,66 @@
|
||||||
|
# $NetBSD: Makefile.inc,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
TOP= ${NETBSDSRCDIR}/gnu
|
||||||
|
DIST= ${TOP}/dist/gcc4
|
||||||
|
|
||||||
|
GCCARCH= ${.CURDIR}/../arch/${MACHINE_ARCH}
|
||||||
|
|
||||||
|
CPPFLAGS+= -DLOCALEDIR=\"/usr/share/locale\" -DNETBSD_NATIVE
|
||||||
|
HOST_CPPFLAGS+= -I${.CURDIR}/..
|
||||||
|
|
||||||
|
.if ${USETOOLS} == "yes"
|
||||||
|
COMPATOBJDIR!= cd ${NETBSDSRCDIR}/tools/compat && ${PRINTOBJDIR}
|
||||||
|
NBCOMPATLIB= -L${COMPATOBJDIR} -lnbcompat
|
||||||
|
.endif
|
||||||
|
|
||||||
|
GNUHOSTDIST= ${DIST}
|
||||||
|
BUILD_PREFIX= ${C_BUILD_PREFIX}
|
||||||
|
|
||||||
|
LIBIBERTYOBJ!= cd ${.CURDIR}/../libiberty && ${PRINTOBJDIR}
|
||||||
|
FRONTENDOBJ!= cd ${.CURDIR}/../frontend && ${PRINTOBJDIR}
|
||||||
|
BACKENDOBJ!= cd ${.CURDIR}/../backend && ${PRINTOBJDIR}
|
||||||
|
LIBCPPOBJ!= cd ${.CURDIR}/../libcpp && ${PRINTOBJDIR}
|
||||||
|
|
||||||
|
HOSTLIBIBERTYOBJ!= cd ${.CURDIR}/../host-libiberty && ${PRINTOBJDIR}
|
||||||
|
HOSTLIBIBERTY= ${HOSTLIBIBERTYOBJ}/libiberty/libiberty.a
|
||||||
|
|
||||||
|
BASEVER!= cat ${GNUHOSTDIST}/gcc/BASE-VER
|
||||||
|
DEVPHASE!= cat ${GNUHOSTDIST}/gcc/DEV-PHASE
|
||||||
|
DATESTAMP!= cat ${GNUHOSTDIST}/gcc/DATESTAMP
|
||||||
|
|
||||||
|
BASEVERSTR= "\"$(BASEVER)\""
|
||||||
|
.if !empty(DEVPHASE)
|
||||||
|
DEVPHASESTR= "\" $(DEVPHASE)\""
|
||||||
|
.else
|
||||||
|
DEVPHASESTR= "\"\""
|
||||||
|
.endif
|
||||||
|
.if !empty(DEVPHASE)
|
||||||
|
DATESTAMPSTR= "\" $(DATESTAMP)\""
|
||||||
|
.else
|
||||||
|
DATESTAMPSTR= "\"\""
|
||||||
|
.endif
|
||||||
|
|
||||||
|
VER_CPPFLAGS= -DBASEVER=${BASEVERSTR} \
|
||||||
|
-DDATESTAMP=${DATESTAMPSTR} \
|
||||||
|
-DDEVPHASE=${DEVPHASESTR}
|
||||||
|
CPPFLAGS.version.c= ${VER_CPPFLAGS}
|
||||||
|
|
||||||
|
.include "${GCCARCH}/defs.mk"
|
||||||
|
|
||||||
|
.if ${MKPIC} != "no"
|
||||||
|
.if ${G_ENABLE_SHARED} == "yes" && ${G_SHLIB_LINK} != ""
|
||||||
|
CPPFLAGS+= -DENABLE_SHARED_LIBGCC
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if empty(G_SHLIB_MULTILIB)
|
||||||
|
CPPFLAGS+= -DNO_SHARED_LIBGCC_MULTILIB
|
||||||
|
.endif
|
||||||
|
.endif
|
||||||
|
|
||||||
|
# This depends on the "extern inline" mess, so downgrade to something safe.
|
||||||
|
# CPPFLAGS is applied after CFLAGS, which gets the -std=gnu99
|
||||||
|
CPPFLAGS+= -std=gnu89
|
||||||
|
|
||||||
|
NOCLANGERROR= # defined
|
|
@ -0,0 +1,4 @@
|
||||||
|
# $NetBSD: Makefile.libcpp,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
DPADD+= ${LIBCPPOBJ}/libcpp.a
|
||||||
|
LDADD+= ${LIBCPPOBJ}/libcpp.a
|
|
@ -0,0 +1,307 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
LIBISPRIVATE= yes
|
||||||
|
|
||||||
|
LIB= backend
|
||||||
|
|
||||||
|
SRCS= ${G_OBJS:.o=.c} ${G_out_file:T}
|
||||||
|
|
||||||
|
CPPFLAGS+= -I. -I${GCCARCH} ${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*} \
|
||||||
|
-DTARGET_NAME=\"${MACHINE_GNU_PLATFORM}\"
|
||||||
|
HOST_CPPFLAGS+= -I. -I${GCCARCH} ${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*}
|
||||||
|
DPSRCS+= insn-attr.h insn-codes.h insn-config.h insn-flags.h tree-check.h
|
||||||
|
CPPFLAGS.prefix.c+= -DPREFIX=\"/usr\"
|
||||||
|
|
||||||
|
.include <bsd.lib.mk>
|
||||||
|
|
||||||
|
# For early builders.
|
||||||
|
EXTRADEPENDSEARLY= ${G_BUILD_EARLY_SUPPORT:.o=.lo} ${G_BUILD_RTL:.o=.lo} \
|
||||||
|
${G_BUILD_ERRORS:.o=.lo}
|
||||||
|
|
||||||
|
# Don't auto-frob .y or .l files.
|
||||||
|
.l.c .y.c .y.h:
|
||||||
|
@true
|
||||||
|
|
||||||
|
#
|
||||||
|
# Independent generation programs.
|
||||||
|
#
|
||||||
|
CLEANFILES+= gengenrtl genrtl.c genrtl.h \
|
||||||
|
gengtype gtyp-gen.h gtype-desc.c gtype-desc.h \
|
||||||
|
gtype-c.h gtype-cp.h gtype-f.h gtype-objc.h \
|
||||||
|
genflags genflags.h \
|
||||||
|
gencheck tree-check.h \
|
||||||
|
insn-preds.c genpreds tm-preds.h tm_p.h cs-tm_p.h \
|
||||||
|
genmodes insn-modes.c insn-modes.h min-insn-modes.c \
|
||||||
|
auto-host.h build-print-rtl.c \
|
||||||
|
build-rtl.c build-errors.c build-varray.c \
|
||||||
|
build-bitmap.c build-ggc-none.c \
|
||||||
|
gt-*.h *.o *.lo \
|
||||||
|
cs-config.h \
|
||||||
|
gcov-iov gcov-iov.h \
|
||||||
|
|
||||||
|
#
|
||||||
|
# These files have special needs
|
||||||
|
#
|
||||||
|
.for f in \
|
||||||
|
build-errors build-ggc-none build-print-rtl build-rtl build-varray dummy-conditions gcov-iov genattr genattrtab genautomata gencheck genchecksum gencodes genconditions genconfig genconstants genemit genextract genflags gengenrtl gengtype gengtype-lex gengtype-yacc genmddeps genmodes genopinit genoutput genpeep genpreds genrecog gensupport insn-conditions min-insn-modes read-rtl
|
||||||
|
CPPFLAGS.${f}.c= -DGENERATOR_FILE
|
||||||
|
.endfor
|
||||||
|
|
||||||
|
# XXX
|
||||||
|
COPTS.varasm.c= -Wno-error
|
||||||
|
|
||||||
|
|
||||||
|
# Headers that host objects depend on (except gen*rtl*)
|
||||||
|
HH_NORTL= ${G_tm_file_list} ${G_build_xm_include_list}
|
||||||
|
HH= ${HH_NORTL} genrtl.h insn-modes.h
|
||||||
|
|
||||||
|
#
|
||||||
|
# Generate the various header files we need.
|
||||||
|
#
|
||||||
|
genrtl.c: gengenrtl
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gengenrtl >${.TARGET}
|
||||||
|
genrtl.h: gengenrtl
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gengenrtl -h >${.TARGET}
|
||||||
|
gengenrtl.lo: ${HH_NORTL}
|
||||||
|
gengenrtl: gengenrtl.lo build-errors.lo
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
tm-preds.h: genpreds ${G_md_file}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genpreds -h ${G_md_file} >${.TARGET}
|
||||||
|
insn-preds.c: genpreds ${G_md_file}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genpreds ${G_md_file} >${.TARGET}
|
||||||
|
genpreds.lo: ${HH}
|
||||||
|
genpreds: genpreds.lo ${EXTRADEPENDSEARLY}
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
tree-check.h: gencheck
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gencheck >${.TARGET}
|
||||||
|
gencheck.lo: ${HH}
|
||||||
|
gencheck: gencheck.lo
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
gtype-desc.c: gtype-desc.h
|
||||||
|
gtype-desc.h: gengtype
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f auto-host.h
|
||||||
|
ln -s ${.CURDIR}/../arch/${MACHINE_ARCH}/auto-host.h .
|
||||||
|
./gengtype
|
||||||
|
# gengtype is the real need for options.h
|
||||||
|
gengtype.lo gengtype-lex.lo gengtype-yacc.lo: ${HH} gtyp-gen.h config.h options.h
|
||||||
|
gengtype: gengtype.lo gengtype-lex.lo gengtype-yacc.lo build-errors.lo
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
gtyp-gen.h: Makefile
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
(\
|
||||||
|
echo "static const char *srcdir = \"$(G_GTFILES_SRCDIR)\";" ; \
|
||||||
|
echo "static const char *lang_files[] = {" ; \
|
||||||
|
for f in $(G_GTFILES_FILES_FILES); do echo "\"$$f\", "; done ; \
|
||||||
|
echo "NULL };" ; \
|
||||||
|
echo "static const char *langs_for_lang_files[] = {" ; \
|
||||||
|
for f in $(G_GTFILES_FILES_LANGS); do echo "\"$$f\", "; done ; \
|
||||||
|
echo "NULL };" ; \
|
||||||
|
echo "static const char *all_files[] = {" ; \
|
||||||
|
for f in $(G_GTFILES); do echo "\"$$f\", "; done ; \
|
||||||
|
echo " NULL };" ; \
|
||||||
|
echo "static const char *lang_dir_names[] = {" ; \
|
||||||
|
echo "\"c\", " ; \
|
||||||
|
for f in $(G_GTFILES_LANG_DIR_NAMES); do echo "\"$$f\", "; done ; \
|
||||||
|
echo "NULL };" ; \
|
||||||
|
) >${.TARGET}
|
||||||
|
|
||||||
|
insn-modes.c: genmodes
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genmodes >${.TARGET}
|
||||||
|
insn-modes.h: genmodes
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genmodes -h >${.TARGET}
|
||||||
|
min-insn-modes.c: genmodes
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genmodes -m >${.TARGET}
|
||||||
|
genmodes.lo: ${HH_NORTL}
|
||||||
|
genmodes: genmodes.lo build-errors.lo
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
gcov-iov.h: gcov-iov
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gcov-iov "${BASEVER}" "${DEVPHASE}" >${.TARGET}
|
||||||
|
gcov-iov.lo: ${HH_NORTL}
|
||||||
|
gcov-iov: gcov-iov.lo
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
|
||||||
|
#config.h: Makefile
|
||||||
|
# ${_MKTARGET_CREATE}
|
||||||
|
# TM_DEFINES="$(G_tm_defines)" \
|
||||||
|
# HEADERS="$(G_host_xm_file)" XM_DEFINES="$(G_host_xm_defines)" \
|
||||||
|
# TARGET_CPU_DEFAULT="$(G_target_cpu_default)" \
|
||||||
|
# ${HOST_SH} ${GNUHOSTDIST}/gcc/mkconfig.sh ${.TARGET}
|
||||||
|
|
||||||
|
tm_p.h: Makefile
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
TARGET_CPU_DEFAULT="" \
|
||||||
|
HEADERS="$(G_tm_p_include_list)" DEFINES="" \
|
||||||
|
${HOST_SH} ${GNUHOSTDIST}/gcc/mkconfig.sh ${.TARGET}
|
||||||
|
|
||||||
|
CLEANFILES+= options.h options.c optionlist
|
||||||
|
optionlist: ${G_ALL_OPT_FILES} ${GCCARCH}/defs.mk Makefile ${DIST}/gcc/opt-gather.awk
|
||||||
|
${TOOL_AWK} -f ${DIST}/gcc/opt-gather.awk ${G_ALL_OPT_FILES} > ${.TARGET}
|
||||||
|
|
||||||
|
options.c: optionlist ${DIST}/gcc/opt-functions.awk ${DIST}/gcc/optc-gen.awk
|
||||||
|
${TOOL_AWK} -f ${DIST}/gcc/opt-functions.awk -f ${DIST}/gcc/optc-gen.awk \
|
||||||
|
-v header_name="config.h system.h coretypes.h tm.h" < optionlist > ${.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}
|
||||||
|
|
||||||
|
options.o: options.c coretypes.h opts.h intl.h
|
||||||
|
#options.o: options.c ${G_CONFIG_H} ${G_SYSTEM_H} coretypes.h ${G_TM_H} opts.h intl.h
|
||||||
|
|
||||||
|
# Yuck, we have to run configure to generate this one...
|
||||||
|
CLEANFILES+= auto-build.h
|
||||||
|
auto-build.h: Makefile
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -rf .ab && \
|
||||||
|
mkdir .ab && \
|
||||||
|
(cd .ab && \
|
||||||
|
AWK=${TOOL_AWK:Q} \
|
||||||
|
CC=${HOST_CC:Q} CFLAGS=${HOST_CFLAGS:Q} \
|
||||||
|
MAKE=${MAKE:Q} \
|
||||||
|
CONFIG_SHELL=${HOST_SH:Q} \
|
||||||
|
${HOST_SH} ${GNUHOSTDIST}/gcc/configure \
|
||||||
|
--build=`${HOST_SH} ${GNUHOSTDIST}/config.guess` \
|
||||||
|
--host=`${HOST_SH} ${GNUHOSTDIST}/config.guess` \
|
||||||
|
--target=${MACHINE_GNU_PLATFORM} && \
|
||||||
|
mv auto-host.h ../auto-build.h) && \
|
||||||
|
rm -rf .ab
|
||||||
|
|
||||||
|
#
|
||||||
|
# These are copies of files we build for the build host that are used
|
||||||
|
# by the genfoo programs.
|
||||||
|
#
|
||||||
|
|
||||||
|
build-rtl.c: rtl.c \
|
||||||
|
${G_RTL_H} real.h ${G_GCC_H} errors.h gtype-desc.h
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f build-rtl.c
|
||||||
|
${TOOL_SED} -e 's/<config[.]h/hconfig.h/' \
|
||||||
|
${GNUHOSTDIST}/gcc/rtl.c >${.TARGET}
|
||||||
|
build-rtl.lo: ${HH}
|
||||||
|
|
||||||
|
build-print-rtl.c: print-rtl.c \
|
||||||
|
${G_RTL_H} ${G_TREE_H} hard-reg-set.h ${G_BASIC_BLOCK_H}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f buid-print-rtl.c
|
||||||
|
${TOOL_SED} -e 's/<config[.]h/hconfig.h/' \
|
||||||
|
${GNUHOSTDIST}/gcc/print-rtl.c >${.TARGET}
|
||||||
|
build-print-rtl.lo: ${HH}
|
||||||
|
|
||||||
|
build-bitmap.c: bitmap.c \
|
||||||
|
${G_RTL_H} flags.h ${G_BASIC_BLOCK_H} ${REGS_H} ${G_GCC_H} gtype-desc.h
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f build-bitmap.c
|
||||||
|
${TOOL_SED} -e 's/<config[.]h/hconfig.h/' \
|
||||||
|
${GNUHOSTDIST}/gcc/bitmap.c >${.TARGET}
|
||||||
|
build-bitmap.lo: ${HH}
|
||||||
|
|
||||||
|
build-errors.c: errors.c errors.h
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f build-errors.c
|
||||||
|
cat ${GNUHOSTDIST}/gcc/errors.c >${.TARGET}
|
||||||
|
build-errors.lo: ${HH_NORTL}
|
||||||
|
|
||||||
|
build-varray.c: varray.c \
|
||||||
|
${G_RTL_H} ${G_GCC_H} ${TREE_H} bitmap.h errors.h
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f build-varray.c
|
||||||
|
${TOOL_SED} -e 's/<config[.]h/hconfig.h/' \
|
||||||
|
${GNUHOSTDIST}/gcc/varray.c >${.TARGET}
|
||||||
|
build-varray.lo: ${HH} gtype-desc.h
|
||||||
|
|
||||||
|
build-ggc-none.c: ggc-none.c \
|
||||||
|
${G_GCC_H} gtype-desc.h
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
rm -f build-ggc-none.c
|
||||||
|
${TOOL_SED} -e 's/<config[.]h/hconfig.h/' \
|
||||||
|
${GNUHOSTDIST}/gcc/ggc-none.c >${.TARGET}
|
||||||
|
build-ggc-none.lo: ${HH}
|
||||||
|
|
||||||
|
#
|
||||||
|
# The `early' insn-foo generators
|
||||||
|
#
|
||||||
|
.for f in conditions.c constants.h
|
||||||
|
CLEANFILES+= gen${f:R} insn-${f}
|
||||||
|
|
||||||
|
gen${f:R}.lo: gen${f:R}.c ${HH}
|
||||||
|
gen${f:R}: gen${f:R}.lo ${EXTRADEPENDSEARLY}
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
insn-${f}: gen${f:R} ${G_md_file}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gen${f:R} ${G_md_file} >${.TARGET}
|
||||||
|
.endfor
|
||||||
|
|
||||||
|
#
|
||||||
|
# The normal insn-foo generators
|
||||||
|
#
|
||||||
|
.for f in gensupport.c read-rtl.c dummy-conditions.c
|
||||||
|
${f:R}.lo: ${HH}
|
||||||
|
.endfor
|
||||||
|
|
||||||
|
EXTRADEPENDS= ${G_BUILD_RTL:.o=.lo} ${G_BUILD_SUPPORT:.o=.lo} \
|
||||||
|
${G_BUILD_PRINT:.o=.lo} ${G_BUILD_ERRORS:.o=.lo}
|
||||||
|
.for f in attr.h codes.h config.h emit.c extract.c flags.h opinit.c output.c \
|
||||||
|
peep.c recog.c
|
||||||
|
CLEANFILES+= gen${f:R} insn-${f}
|
||||||
|
|
||||||
|
gen${f:R}.lo: ${HH}
|
||||||
|
gen${f:R}: gen${f:R}.lo ${EXTRADEPENDS}
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY}
|
||||||
|
insn-${f}: gen${f:R} ${G_md_file}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./gen${f:R} ${G_md_file} >${.TARGET}
|
||||||
|
.endfor
|
||||||
|
|
||||||
|
#
|
||||||
|
# "One of these things is not like the other"
|
||||||
|
#
|
||||||
|
CLEANFILES+= genattrtab insn-attrtab.c
|
||||||
|
genattrtab.lo: ${HH} gtype-desc.h
|
||||||
|
genautomata.lo: ${HH}
|
||||||
|
genattrtab: genattrtab.lo genautomata.lo ${EXTRADEPENDS} ${G_BUILD_VARRAY:.o=.lo}
|
||||||
|
${_MKTARGET_LINK}
|
||||||
|
${HOST_LINK.c} -o ${.TARGET} ${.ALLSRC} ${NBCOMPATLIB} ${HOSTLIBIBERTY} -lm
|
||||||
|
insn-attrtab.c: genattrtab ${G_md_file}
|
||||||
|
${_MKTARGET_CREATE}
|
||||||
|
./genattrtab ${G_md_file} >${.TARGET}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Required hard-coded dependancies.
|
||||||
|
#
|
||||||
|
genextract.lo: insn-config.h
|
||||||
|
insn-conditions.lo: insn-constants.h tm_p.h tm-preds.h
|
||||||
|
build-ggc-none.lo: gtype-desc.h
|
||||||
|
ggc-none.o: gtype-desc.h
|
||||||
|
|
||||||
|
insn-attrtab.o: insn-config.h
|
||||||
|
insn-extract.o: insn-config.h
|
||||||
|
toplev.d toplev.o: options.h
|
||||||
|
coverage.d: gcov-iov.h
|
||||||
|
gcov-io.h: gcov-iov.h
|
||||||
|
|
||||||
|
COPTS+=-Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc ${DIST}/libiberty ${GCCARCH} ${G_out_file:H} ${DIST}/include
|
|
@ -0,0 +1,12 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
PROG= cc1
|
||||||
|
SRCS= ${G_C_OBJS:Nlibcpp.a:.o=.c} main.c ${PROG}-checksum.c
|
||||||
|
CPPFLAGS+= -DPREFIX=\"/usr\"
|
||||||
|
|
||||||
|
.include "../Makefile.backend"
|
||||||
|
.include "../Makefile.libcpp"
|
||||||
|
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc ${G_out_file:H}
|
|
@ -0,0 +1,15 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
MYOBJS= ${G_OBJC_OBJS} ${G_C_AND_OBJC_OBJS}
|
||||||
|
PROG= cc1obj
|
||||||
|
SRCS= ${MYOBJS:S/objc\///:Nlibcpp.a:.o=.c} main.c ${PROG}-checksum.c
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${DIST}/gcc/objc
|
||||||
|
CPPFLAGS.prefix.c+= -DPREFIX=\"/usr\"
|
||||||
|
|
||||||
|
.include "../Makefile.backend"
|
||||||
|
.include "../Makefile.libcpp"
|
||||||
|
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc/objc ${DIST}/gcc ${G_out_file:H}
|
|
@ -0,0 +1,15 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
PROG= cc1plus
|
||||||
|
SRCS= ${G_CXX_OBJS:Nlibcpp.a:.o=.c} main.c ${PROG}-checksum.c
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${DIST}/gcc/cp
|
||||||
|
CPPFLAGS.prefix.c+= -DPREFIX=\"/usr\"
|
||||||
|
|
||||||
|
.include "../Makefile.backend"
|
||||||
|
.include "../Makefile.libcpp"
|
||||||
|
|
||||||
|
# YUCK. but see timevar.h:POP_TIMEVAR_AND_RETURN
|
||||||
|
CFLAGS+= -Wno-error # not good enough: -Wno-return-type
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc/cp ${DIST}/gcc ${G_out_file:H}
|
|
@ -0,0 +1,24 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
PROG= cpp
|
||||||
|
SRCS= cppspec.c
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${BACKENDOBJ}
|
||||||
|
|
||||||
|
LINKS= ${BINDIR}/cpp ${BINDIR}/gcpp
|
||||||
|
|
||||||
|
TEXINFO= cpp.texi
|
||||||
|
INFOFLAGS= -I${DIST}/gcc/doc -I${DIST}/gcc/doc/include -I.
|
||||||
|
|
||||||
|
MAN= cpp.1
|
||||||
|
MLINKS+= cpp.1 gcpp.1 cpp.1 cccp.1
|
||||||
|
|
||||||
|
.include "../Makefile.frontend"
|
||||||
|
|
||||||
|
.include <bsd.info.mk>
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc ${DIST}/gcc/doc
|
||||||
|
|
||||||
|
cpp.info: gcc-vers.texi
|
|
@ -0,0 +1,37 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
LIBISPRIVATE= yes
|
||||||
|
|
||||||
|
# For ../Makefile.inc and bsd.own.mk
|
||||||
|
.include <bsd.init.mk>
|
||||||
|
|
||||||
|
LIB= frontend
|
||||||
|
|
||||||
|
SRCS= gcc.c version.c intl.c prefix.c
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${GCCARCH} -I${BACKENDOBJ} -I. \
|
||||||
|
${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*} \
|
||||||
|
-DPREFIX=\"/usr\" \
|
||||||
|
-DDEFAULT_TARGET_VERSION=\"${G_version}\" \
|
||||||
|
-DDEFAULT_TARGET_MACHINE=\"${MACHINE_GNU_PLATFORM}\"
|
||||||
|
HOST_CPPFLAGS+= -I${GCCARCH} ${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*}
|
||||||
|
|
||||||
|
DPSRCS+= specs.h
|
||||||
|
|
||||||
|
MKPIC:= no
|
||||||
|
MKPICLIB:= no
|
||||||
|
|
||||||
|
.include <bsd.lib.mk>
|
||||||
|
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc
|
||||||
|
|
||||||
|
#
|
||||||
|
# Build the specs.h file
|
||||||
|
#
|
||||||
|
CLEANFILES+= specs.h
|
||||||
|
specs.h: Makefile
|
||||||
|
for f in cp objc; do \
|
||||||
|
echo "#include \"$$f/lang-specs.h\""; \
|
||||||
|
done > specs.h
|
|
@ -0,0 +1,17 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
PROG= gplusplus
|
||||||
|
PROGNAME= g++
|
||||||
|
SRCS= g++spec.c
|
||||||
|
|
||||||
|
NOMAN= # defined
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${BACKENDOBJ}
|
||||||
|
|
||||||
|
LINKS+= ${BINDIR}/g++ ${BINDIR}/c++
|
||||||
|
|
||||||
|
.include "../Makefile.frontend"
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc ${DIST}/gcc/cp
|
|
@ -0,0 +1,26 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
PROG= gcc
|
||||||
|
SRCS= gccspec.c
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${BACKENDOBJ}
|
||||||
|
|
||||||
|
LINKS+= ${BINDIR}/gcc ${BINDIR}/cc
|
||||||
|
|
||||||
|
MAN= gcc.1
|
||||||
|
MLINKS= gcc.1 cc.1 gcc.1 g++.1 gcc.1 c++.1
|
||||||
|
|
||||||
|
TEXINFO= gcc.texi
|
||||||
|
INFOFLAGS= -I${DIST}/gcc/doc -I${DIST}/gcc/doc/include
|
||||||
|
|
||||||
|
.include "../Makefile.frontend"
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc ${DIST}/gcc/doc
|
||||||
|
|
||||||
|
.include <bsd.info.mk>
|
||||||
|
|
||||||
|
COPTS.builtins.c = -Wno-stack-protector
|
||||||
|
|
||||||
|
gcc.info: gcc-vers.texi
|
|
@ -0,0 +1,18 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
PROG= gcov
|
||||||
|
SRCS= ${G_GCOV_OBJS:.o=.c}
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${GCCARCH} -I${BACKENDOBJ} ${G_ALL_CFLAGS:M-D*} ${G_INCLUDES:M-I*:N-I.*}
|
||||||
|
|
||||||
|
BINDIR= /usr/bin
|
||||||
|
|
||||||
|
MAN= gcov.1
|
||||||
|
|
||||||
|
.include <bsd.prog.mk>
|
||||||
|
|
||||||
|
LDADD= -L${LIBIBERTYOBJ} -liberty
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc
|
|
@ -0,0 +1,18 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
libiberty/libiberty.a:
|
||||||
|
[ ! -d libiberty ] && mkdir libiberty || true
|
||||||
|
(cd libiberty; \
|
||||||
|
CC=${HOST_CC:Q} \
|
||||||
|
CFLAGS=${HOST_CFLAGS:Q} \
|
||||||
|
MAKE=${MAKE:Q} \
|
||||||
|
CONFIG_SHELL=${HOST_SH:Q} \
|
||||||
|
${HOST_SH} ${DIST}/libiberty/configure \
|
||||||
|
&& CC=${HOST_CC:Q} CFLAGS=${HOST_CFLAGS:Q} ${MAKE})
|
||||||
|
|
||||||
|
cleandir:
|
||||||
|
-rm -rf libiberty
|
||||||
|
|
||||||
|
depend dependall all: libiberty/libiberty.a
|
||||||
|
|
||||||
|
.include <bsd.prog.mk>
|
|
@ -0,0 +1,21 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
.include "../Makefile.inc"
|
||||||
|
|
||||||
|
.if ${MACHINE_CPU} == "powerpc"
|
||||||
|
INCS= altivec.h
|
||||||
|
.elif ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
|
||||||
|
INCS= emmintrin.h mmintrin.h pmmintrin.h xmmintrin.h mm_malloc.h
|
||||||
|
|
||||||
|
# We don't have posix_memalign, so use the gmm_malloc.h version.
|
||||||
|
mm_malloc.h: ${DIST}/gcc/config/i386/gmm_malloc.h
|
||||||
|
cp $> ${.TARGET}
|
||||||
|
|
||||||
|
CLEANFILES+= mm_malloc.h
|
||||||
|
.endif
|
||||||
|
|
||||||
|
INCSDIR= /usr/include/gcc-4.1
|
||||||
|
|
||||||
|
.include <bsd.prog.mk>
|
||||||
|
|
||||||
|
.PATH: ${G_out_file:H}
|
|
@ -0,0 +1,25 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
LIBISPRIVATE= yes
|
||||||
|
|
||||||
|
LIB= cpp
|
||||||
|
|
||||||
|
SRCS= ${G_libcpp_a_OBJS:.o=.c}
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${.CURDIR} -I${.CURDIR}/arch/${MACHINE_ARCH} \
|
||||||
|
-I${GCCARCH} -I${BACKENDOBJ} \
|
||||||
|
${G_INCLUDES:M-I*:N-I.*} \
|
||||||
|
-DPREFIX=\"/usr\"
|
||||||
|
|
||||||
|
# XXX gcc332 gets an ICE compiling cppmacro.c with -O2.
|
||||||
|
#.if ${MACHINE_ARCH} == "ns32k"
|
||||||
|
#COPTS.cppmacro.c= -O1
|
||||||
|
#.endif
|
||||||
|
|
||||||
|
.include <bsd.lib.mk>
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
${OBJS}: ${G_LIBCPP_DEPS}
|
||||||
|
|
||||||
|
.PATH: ${DIST}/libcpp
|
||||||
|
# ${DIST}/gcc
|
|
@ -0,0 +1,27 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48: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>
|
|
@ -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
|
|
@ -0,0 +1,21 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
NOMAN= # defined
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
PROG= protoize
|
||||||
|
SRCS= protoize.c ${G_PROTO_OBJS:.o=.c}
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${BACKENDOBJ} \
|
||||||
|
-DDEFAULT_TARGET_MACHINE=\"\" \
|
||||||
|
-DDEFAULT_TARGET_VERSION=\"\"
|
||||||
|
|
||||||
|
|
||||||
|
.include "../Makefile.frontend"
|
||||||
|
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc
|
||||||
|
|
||||||
|
.include <bsd.info.mk>
|
|
@ -0,0 +1,21 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1.1.1 2011/06/21 02:48:27 mrg Exp $
|
||||||
|
|
||||||
|
NOMAN= # defined
|
||||||
|
|
||||||
|
.include <bsd.own.mk>
|
||||||
|
|
||||||
|
PROG= unprotoize
|
||||||
|
SRCS= protoize.c ${G_PROTO_OBJS:.o=.c}
|
||||||
|
|
||||||
|
CPPFLAGS+= -I${BACKENDOBJ} \
|
||||||
|
-DUNPROTOIZE \
|
||||||
|
-DDEFAULT_TARGET_MACHINE=\"\" \
|
||||||
|
-DDEFAULT_TARGET_VERSION=\"\"
|
||||||
|
|
||||||
|
.include "../Makefile.frontend"
|
||||||
|
|
||||||
|
COPTS+= -Wno-stack-protector
|
||||||
|
|
||||||
|
.PATH: ${DIST}/gcc
|
||||||
|
|
||||||
|
.include <bsd.info.mk>
|
Loading…
Reference in New Issue