150472Speter# $FreeBSD$
21823Sphk
345763Sobrien.include "../Makefile.inc"
445763Sobrien
518390Speter# Sometimes this is .include'd several times...
695294Sobrien.if !defined(__CC_MAKEFILE_INC__)
795294Sobrien__CC_MAKEFILE_INC__= ${MFILE}
895294Sobrien
9207995SobrienGCCVER=	4.2
1096340SobrienGCCDIR=	${.CURDIR}/../../../../contrib/gcc
11169718SkanGCCLIB=	${.CURDIR}/../../../../contrib/gcclibs
122375Sbde
1396340Sobrien.include "Makefile.tgt"
1445943Sobrien
1518390Speter# Machine description.
1696340SobrienMD_FILE=	${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.md
17167471SkanGCC_TARGET=	${TARGET_ARCH}-undermydesk-freebsd
1845299Sobrien
19207995SobrienCFLAGS+=	-DGCCVER=\"${GCCVER}\"
2073306SobrienCFLAGS+=	-DIN_GCC -DHAVE_CONFIG_H
2155220SobrienCFLAGS+=	-DPREFIX=\"${TOOLS_PREFIX}/usr\"
2296340Sobrien#CFLAGS+=	-DWANT_COMPILER_INVARIANTS
23189834SdasCSTD?=	gnu89
2468572Sobrien
2555220Sobrien.if ${TARGET_ARCH} != ${MACHINE_ARCH}
2645943SobrienCFLAGS+=	-DCROSS_COMPILE
2745943Sobrien.endif
2845943Sobrien
29245539Sandrew.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no"
30245539SandrewCFLAGS+=	-DTARGET_ARM_EABI
31245539Sandrew.endif
32245539Sandrew
33239272Sgonzo.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
34215082SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END
35215082Simp.endif
36239272Sgonzo.if ${TARGET_ARCH} == "armv6" || ${TARGET_ARCH} == "armv6eb"
37239272SgonzoCFLAGS += -DFREEBSD_ARCH_armv6
38239272Sgonzo.endif
39215082Simp
40215082Simp.if ${TARGET_CPUARCH} == "mips"
41217123Simp.if ${TARGET_ARCH:Mmips*el} != ""
42204771SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=0
43204771Simp.endif
44204771Simp
45217123Simp.if ${TARGET_ARCH:Mmips64*} != ""
46217123SimpMIPS_ABI_DEFAULT=ABI_64
47217123Simp.elif ${TARGET_ARCH:Mmipsn32*} != ""
48208737SjmallettMIPS_ABI_DEFAULT=ABI_N32
49217123Simp.else
50217123SimpMIPS_ABI_DEFAULT=ABI_32
51208737Sjmallett.endif
52208737SjmallettCFLAGS += -DMIPS_ABI_DEFAULT=${MIPS_ABI_DEFAULT}
53208737Sjmallett
54208758Sjmallett# If we are compiling for the O32 ABI, we need to default to MIPS-III rather
55208758Sjmallett# than taking the ISA from the ABI requirements, since FreeBSD is built with
56208758Sjmallett# a number of MIPS-III features/instructions and that is the minimum ISA we
57208758Sjmallett# support, not the O32 default MIPS-I.
58208758Sjmallett.if ${MIPS_ABI_DEFAULT} == "ABI_32"
59208758SjmallettTARGET_CPUTYPE?=mips3
60208758Sjmallett.endif
61208758Sjmallett
62208737Sjmallett# GCC by default takes the ISA from the ABI's requirements.  If world is built
63208737Sjmallett# with a superior ISA, since we lack multilib, we have to set the right
64208737Sjmallett# default ISA to be able to link against what's in /usr/lib.  Terrible stuff.
65208737Sjmallett.if defined(TARGET_CPUTYPE)
66208737SjmallettCFLAGS += -DMIPS_CPU_STRING_DEFAULT=\"${TARGET_CPUTYPE}\"
67208737Sjmallett.endif
68208737Sjmallett.endif
69208737Sjmallett
7081749Sobrien.if defined(WANT_FORCE_OPTIMIZATION_DOWNGRADE)
7181749SobrienCFLAGS+= -DFORCE_OPTIMIZATION_DOWNGRADE=${WANT_FORCE_OPTIMIZATION_DOWNGRADE}
7281749Sobrien.endif
7381749Sobrien
7418390Speter.if exists(${.OBJDIR}/../cc_tools)
7518390SpeterCFLAGS+=	-I${.OBJDIR}/../cc_tools
7645301Sobrien.endif
7718390SpeterCFLAGS+=	-I${.CURDIR}/../cc_tools
7854987Sobrien# This must go after the -I for cc_tools to resolve ambiguities for hash.h
7954987Sobrien# correctly.
8052170SobrienCFLAGS+=	-I${GCCDIR} -I${GCCDIR}/config
8118390Speter
82169718SkanCFLAGS+=	-I${GCCLIB}/include
83169718SkanCFLAGS+=	-I${GCCLIB}/libcpp/include
84169718SkanCFLAGS+=	-I${GCCLIB}/libdecnumber
85169718Skan
8616663Sjkh.if exists(${.OBJDIR}/../cc_int)
87169718SkanLIBBACKEND=	${.OBJDIR}/../cc_int/libbackend.a
882375Sbde.else
89169718SkanLIBBACKEND=	${.CURDIR}/../cc_int/libbackend.a
902375Sbde.endif
912375Sbde
92169718Skan.if exists(${.OBJDIR}/../libiberty)
93169718SkanLIBIBERTY=	${.OBJDIR}/../libiberty/libiberty.a
94169718Skan.else
95169718SkanLIBIBERTY=	${.CURDIR}/../libiberty/libiberty.a
96169718Skan.endif
97169718Skan
98169718Skan.if exists(${.OBJDIR}/../libcpp)
99169718SkanLIBCPP=		${.OBJDIR}/../libcpp/libcpp.a
100169718Skan.else
101169718SkanLIBCPP=		${.CURDIR}/../libcpp/libcpp.a
102169718Skan.endif
103169718Skan
104169718Skan.if exists(${.OBJDIR}/../libdecnumber)
105169718SkanLIBDECNUMBER=	${.OBJDIR}/../libdecnumber/libdecnumber.a
106169718Skan.else
107169718SkanLIBDECNUMBER=	${.CURDIR}/../libdecnumber/libdecnumber.a
108169718Skan.endif
109169718Skan
11095294Sobrien.endif # !__CC_MAKEFILE_INC__
111