150472Speter# $FreeBSD: releng/11.0/gnu/usr.bin/cc/Makefile.inc 272350 2014-10-01 08:26:51Z andrew $
21823Sphk
3265420Simp.include <src.opts.mk>
445763Sobrien.include "../Makefile.inc"
545763Sobrien
618390Speter# Sometimes this is .include'd several times...
795294Sobrien.if !defined(__CC_MAKEFILE_INC__)
895294Sobrien__CC_MAKEFILE_INC__= ${MFILE}
995294Sobrien
10207995SobrienGCCVER=	4.2
1196340SobrienGCCDIR=	${.CURDIR}/../../../../contrib/gcc
12169718SkanGCCLIB=	${.CURDIR}/../../../../contrib/gcclibs
132375Sbde
1496340Sobrien.include "Makefile.tgt"
1545943Sobrien
1618390Speter# Machine description.
1796340SobrienMD_FILE=	${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.md
18167471SkanGCC_TARGET=	${TARGET_ARCH}-undermydesk-freebsd
1945299Sobrien
20207995SobrienCFLAGS+=	-DGCCVER=\"${GCCVER}\"
2173306SobrienCFLAGS+=	-DIN_GCC -DHAVE_CONFIG_H
2255220SobrienCFLAGS+=	-DPREFIX=\"${TOOLS_PREFIX}/usr\"
2396340Sobrien#CFLAGS+=	-DWANT_COMPILER_INVARIANTS
24189834SdasCSTD?=	gnu89
2568572Sobrien
2655220Sobrien.if ${TARGET_ARCH} != ${MACHINE_ARCH}
27258445SandreastCFLAGS+=	-DCROSS_DIRECTORY_STRUCTURE
2845943Sobrien.endif
2945943Sobrien
30272350Sandrew.if ${TARGET_CPUARCH} == "arm"
31245539SandrewCFLAGS+=	-DTARGET_ARM_EABI
32245539Sandrew.endif
33245539Sandrew
34239272Sgonzo.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
35215082SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END
36215082Simp.endif
37239272Sgonzo.if ${TARGET_ARCH} == "armv6" || ${TARGET_ARCH} == "armv6eb"
38239272SgonzoCFLAGS += -DFREEBSD_ARCH_armv6
39239272Sgonzo.endif
40215082Simp
41215082Simp.if ${TARGET_CPUARCH} == "mips"
42217123Simp.if ${TARGET_ARCH:Mmips*el} != ""
43204771SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=0
44204771Simp.endif
45204771Simp
46217123Simp.if ${TARGET_ARCH:Mmips64*} != ""
47217123SimpMIPS_ABI_DEFAULT=ABI_64
48217123Simp.elif ${TARGET_ARCH:Mmipsn32*} != ""
49208737SjmallettMIPS_ABI_DEFAULT=ABI_N32
50217123Simp.else
51217123SimpMIPS_ABI_DEFAULT=ABI_32
52208737Sjmallett.endif
53208737SjmallettCFLAGS += -DMIPS_ABI_DEFAULT=${MIPS_ABI_DEFAULT}
54208737Sjmallett
55208758Sjmallett# If we are compiling for the O32 ABI, we need to default to MIPS-III rather
56208758Sjmallett# than taking the ISA from the ABI requirements, since FreeBSD is built with
57208758Sjmallett# a number of MIPS-III features/instructions and that is the minimum ISA we
58208758Sjmallett# support, not the O32 default MIPS-I.
59208758Sjmallett.if ${MIPS_ABI_DEFAULT} == "ABI_32"
60208758SjmallettTARGET_CPUTYPE?=mips3
61208758Sjmallett.endif
62208758Sjmallett
63208737Sjmallett# GCC by default takes the ISA from the ABI's requirements.  If world is built
64208737Sjmallett# with a superior ISA, since we lack multilib, we have to set the right
65208737Sjmallett# default ISA to be able to link against what's in /usr/lib.  Terrible stuff.
66208737Sjmallett.if defined(TARGET_CPUTYPE)
67208737SjmallettCFLAGS += -DMIPS_CPU_STRING_DEFAULT=\"${TARGET_CPUTYPE}\"
68208737Sjmallett.endif
69208737Sjmallett.endif
70208737Sjmallett
7181749Sobrien.if defined(WANT_FORCE_OPTIMIZATION_DOWNGRADE)
7281749SobrienCFLAGS+= -DFORCE_OPTIMIZATION_DOWNGRADE=${WANT_FORCE_OPTIMIZATION_DOWNGRADE}
7381749Sobrien.endif
7481749Sobrien
7518390Speter.if exists(${.OBJDIR}/../cc_tools)
7618390SpeterCFLAGS+=	-I${.OBJDIR}/../cc_tools
7745301Sobrien.endif
7818390SpeterCFLAGS+=	-I${.CURDIR}/../cc_tools
7954987Sobrien# This must go after the -I for cc_tools to resolve ambiguities for hash.h
8054987Sobrien# correctly.
8152170SobrienCFLAGS+=	-I${GCCDIR} -I${GCCDIR}/config
8218390Speter
83169718SkanCFLAGS+=	-I${GCCLIB}/include
84169718SkanCFLAGS+=	-I${GCCLIB}/libcpp/include
85169718SkanCFLAGS+=	-I${GCCLIB}/libdecnumber
86169718Skan
8716663Sjkh.if exists(${.OBJDIR}/../cc_int)
88169718SkanLIBBACKEND=	${.OBJDIR}/../cc_int/libbackend.a
892375Sbde.else
90169718SkanLIBBACKEND=	${.CURDIR}/../cc_int/libbackend.a
912375Sbde.endif
922375Sbde
93169718Skan.if exists(${.OBJDIR}/../libiberty)
94169718SkanLIBIBERTY=	${.OBJDIR}/../libiberty/libiberty.a
95169718Skan.else
96169718SkanLIBIBERTY=	${.CURDIR}/../libiberty/libiberty.a
97169718Skan.endif
98169718Skan
99169718Skan.if exists(${.OBJDIR}/../libcpp)
100169718SkanLIBCPP=		${.OBJDIR}/../libcpp/libcpp.a
101169718Skan.else
102169718SkanLIBCPP=		${.CURDIR}/../libcpp/libcpp.a
103169718Skan.endif
104169718Skan
105169718Skan.if exists(${.OBJDIR}/../libdecnumber)
106169718SkanLIBDECNUMBER=	${.OBJDIR}/../libdecnumber/libdecnumber.a
107169718Skan.else
108169718SkanLIBDECNUMBER=	${.CURDIR}/../libdecnumber/libdecnumber.a
109169718Skan.endif
110169718Skan
11195294Sobrien.endif # !__CC_MAKEFILE_INC__
112