Makefile.inc revision 217123
150472Speter# $FreeBSD: head/gnu/usr.bin/cc/Makefile.inc 217123 2011-01-07 20:26:33Z imp $
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
2568572Sobrien# If building 64-bit longs for the i386, "_LARGE_LONG" should also be defined
2668572Sobrien# to get the proper sizes in limits.h
2754987Sobrien.if defined(LONG_TYPE_SIZE)
2854987SobrienCFLAGS+=	-DLONG_TYPE_SIZE=${LONG_TYPE_SIZE}
2954987Sobrien.endif
3018390Speter
3155220Sobrien.if ${TARGET_ARCH} != ${MACHINE_ARCH}
3245943SobrienCFLAGS+=	-DCROSS_COMPILE
3345943Sobrien.endif
3445943Sobrien
35215082Simp.if ${TARGET_ARCH} == "armeb"
36215082SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END
37215082Simp.endif
38215082Simp
39215082Simp.if ${TARGET_CPUARCH} == "mips"
40217123Simp.if ${TARGET_ARCH:Mmips*el} != ""
41204771SimpCFLAGS += -DTARGET_ENDIAN_DEFAULT=0
42204771Simp.endif
43204771Simp
44217123Simp.if ${TARGET_ARCH:Mmips64*} != ""
45217123SimpMIPS_ABI_DEFAULT=ABI_64
46217123Simp.elif ${TARGET_ARCH:Mmipsn32*} != ""
47208737SjmallettMIPS_ABI_DEFAULT=ABI_N32
48217123Simp.else
49217123SimpMIPS_ABI_DEFAULT=ABI_32
50208737Sjmallett.endif
51208737SjmallettCFLAGS += -DMIPS_ABI_DEFAULT=${MIPS_ABI_DEFAULT}
52208737Sjmallett
53208758Sjmallett# If we are compiling for the O32 ABI, we need to default to MIPS-III rather
54208758Sjmallett# than taking the ISA from the ABI requirements, since FreeBSD is built with
55208758Sjmallett# a number of MIPS-III features/instructions and that is the minimum ISA we
56208758Sjmallett# support, not the O32 default MIPS-I.
57208758Sjmallett.if ${MIPS_ABI_DEFAULT} == "ABI_32"
58208758SjmallettTARGET_CPUTYPE?=mips3
59208758Sjmallett.endif
60208758Sjmallett
61208737Sjmallett# GCC by default takes the ISA from the ABI's requirements.  If world is built
62208737Sjmallett# with a superior ISA, since we lack multilib, we have to set the right
63208737Sjmallett# default ISA to be able to link against what's in /usr/lib.  Terrible stuff.
64208737Sjmallett.if defined(TARGET_CPUTYPE)
65208737SjmallettCFLAGS += -DMIPS_CPU_STRING_DEFAULT=\"${TARGET_CPUTYPE}\"
66208737Sjmallett.endif
67208737Sjmallett.endif
68208737Sjmallett
6981749Sobrien.if defined(WANT_FORCE_OPTIMIZATION_DOWNGRADE)
7081749SobrienCFLAGS+= -DFORCE_OPTIMIZATION_DOWNGRADE=${WANT_FORCE_OPTIMIZATION_DOWNGRADE}
7181749Sobrien.endif
7281749Sobrien
7318390Speter.if exists(${.OBJDIR}/../cc_tools)
7418390SpeterCFLAGS+=	-I${.OBJDIR}/../cc_tools
7545301Sobrien.endif
7618390SpeterCFLAGS+=	-I${.CURDIR}/../cc_tools
7754987Sobrien# This must go after the -I for cc_tools to resolve ambiguities for hash.h
7854987Sobrien# correctly.
7952170SobrienCFLAGS+=	-I${GCCDIR} -I${GCCDIR}/config
8018390Speter
81169718SkanCFLAGS+=	-I${GCCLIB}/include
82169718SkanCFLAGS+=	-I${GCCLIB}/libcpp/include
83169718SkanCFLAGS+=	-I${GCCLIB}/libdecnumber
84169718Skan
8516663Sjkh.if exists(${.OBJDIR}/../cc_int)
86169718SkanLIBBACKEND=	${.OBJDIR}/../cc_int/libbackend.a
872375Sbde.else
88169718SkanLIBBACKEND=	${.CURDIR}/../cc_int/libbackend.a
892375Sbde.endif
902375Sbde
91169718Skan.if exists(${.OBJDIR}/../libiberty)
92169718SkanLIBIBERTY=	${.OBJDIR}/../libiberty/libiberty.a
93169718Skan.else
94169718SkanLIBIBERTY=	${.CURDIR}/../libiberty/libiberty.a
95169718Skan.endif
96169718Skan
97169718Skan.if exists(${.OBJDIR}/../libcpp)
98169718SkanLIBCPP=		${.OBJDIR}/../libcpp/libcpp.a
99169718Skan.else
100169718SkanLIBCPP=		${.CURDIR}/../libcpp/libcpp.a
101169718Skan.endif
102169718Skan
103169718Skan.if exists(${.OBJDIR}/../libdecnumber)
104169718SkanLIBDECNUMBER=	${.OBJDIR}/../libdecnumber/libdecnumber.a
105169718Skan.else
106169718SkanLIBDECNUMBER=	${.CURDIR}/../libdecnumber/libdecnumber.a
107169718Skan.endif
108169718Skan
10995294Sobrien.endif # !__CC_MAKEFILE_INC__
110