mirror of
https://github.com/opnsense/src.git
synced 2026-02-13 07:44:48 -05:00
Prefer SRCTOP over CURDIR/../../contrib, etc. However, retain the "up one level" instances of ../ because they are really relative to this part of the tree and not a means to find the root of the tree. As such, it's better to leave them since that further the goal of being able to move directories if watned to in the future. Differential Revision: https://reviews.freebsd.org/D9932 Sponsored by: Netflix Silence On: arch@ (twice)
111 lines
2.9 KiB
Makefile
111 lines
2.9 KiB
Makefile
# $FreeBSD$
|
|
|
|
.include <src.opts.mk>
|
|
.include "../Makefile.inc"
|
|
|
|
# Sometimes this is .include'd several times...
|
|
.if !defined(__CC_MAKEFILE_INC__)
|
|
__CC_MAKEFILE_INC__= ${MFILE}
|
|
|
|
GCCVER= 4.2
|
|
GCCDIR= ${SRCTOP}/contrib/gcc
|
|
GCCLIB= ${SRCTOP}/contrib/gcclibs
|
|
|
|
.include "Makefile.tgt"
|
|
|
|
# Machine description.
|
|
MD_FILE= ${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.md
|
|
GCC_TARGET= ${TARGET_ARCH}-undermydesk-freebsd
|
|
|
|
CFLAGS+= -DGCCVER=\"${GCCVER}\"
|
|
CFLAGS+= -DIN_GCC -DHAVE_CONFIG_H
|
|
CFLAGS+= -DPREFIX=\"${TOOLS_PREFIX}/usr\"
|
|
#CFLAGS+= -DWANT_COMPILER_INVARIANTS
|
|
CSTD?= gnu89
|
|
|
|
.if ${TARGET_ARCH} != ${MACHINE_ARCH}
|
|
CFLAGS+= -DCROSS_DIRECTORY_STRUCTURE
|
|
.endif
|
|
|
|
.if ${TARGET_CPUARCH} == "arm"
|
|
CFLAGS+= -DTARGET_ARM_EABI
|
|
.endif
|
|
|
|
.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
|
|
CFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END
|
|
.endif
|
|
.if ${TARGET_ARCH} == "armv6" || ${TARGET_ARCH} == "armv6eb"
|
|
CFLAGS += -DFREEBSD_ARCH_armv6
|
|
.endif
|
|
|
|
.if ${TARGET_CPUARCH} == "mips"
|
|
.if ${TARGET_ARCH:Mmips*el*} != ""
|
|
CFLAGS += -DTARGET_ENDIAN_DEFAULT=0
|
|
.endif
|
|
|
|
.if ${TARGET_ARCH:Mmips64*} != ""
|
|
MIPS_ABI_DEFAULT=ABI_64
|
|
.elif ${TARGET_ARCH:Mmipsn32*} != ""
|
|
MIPS_ABI_DEFAULT=ABI_N32
|
|
.else
|
|
MIPS_ABI_DEFAULT=ABI_32
|
|
.endif
|
|
CFLAGS += -DMIPS_ABI_DEFAULT=${MIPS_ABI_DEFAULT}
|
|
|
|
# If we are compiling for the O32 ABI, we need to default to MIPS-III rather
|
|
# than taking the ISA from the ABI requirements, since FreeBSD is built with
|
|
# a number of MIPS-III features/instructions and that is the minimum ISA we
|
|
# support, not the O32 default MIPS-I.
|
|
.if ${MIPS_ABI_DEFAULT} == "ABI_32"
|
|
TARGET_CPUTYPE?=mips3
|
|
.endif
|
|
|
|
# GCC by default takes the ISA from the ABI's requirements. If world is built
|
|
# with a superior ISA, since we lack multilib, we have to set the right
|
|
# default ISA to be able to link against what's in /usr/lib. Terrible stuff.
|
|
.if defined(TARGET_CPUTYPE)
|
|
CFLAGS += -DMIPS_CPU_STRING_DEFAULT=\"${TARGET_CPUTYPE}\"
|
|
.endif
|
|
.endif
|
|
|
|
.if defined(WANT_FORCE_OPTIMIZATION_DOWNGRADE)
|
|
CFLAGS+= -DFORCE_OPTIMIZATION_DOWNGRADE=${WANT_FORCE_OPTIMIZATION_DOWNGRADE}
|
|
.endif
|
|
|
|
.if exists(${.OBJDIR}/../cc_tools)
|
|
CFLAGS+= -I${.OBJDIR}/../cc_tools
|
|
.endif
|
|
CFLAGS+= -I${.CURDIR}/../cc_tools
|
|
# This must go after the -I for cc_tools to resolve ambiguities for hash.h
|
|
# correctly.
|
|
CFLAGS+= -I${GCCDIR} -I${GCCDIR}/config
|
|
|
|
CFLAGS+= -I${GCCLIB}/include
|
|
CFLAGS+= -I${GCCLIB}/libcpp/include
|
|
CFLAGS+= -I${GCCLIB}/libdecnumber
|
|
|
|
.if exists(${.OBJDIR}/../cc_int)
|
|
LIBBACKEND= ${.OBJDIR}/../cc_int/libbackend.a
|
|
.else
|
|
LIBBACKEND= ${.CURDIR}/../cc_int/libbackend.a
|
|
.endif
|
|
|
|
.if exists(${.OBJDIR}/../libiberty)
|
|
LIBIBERTY= ${.OBJDIR}/../libiberty/libiberty.a
|
|
.else
|
|
LIBIBERTY= ${.CURDIR}/../libiberty/libiberty.a
|
|
.endif
|
|
|
|
.if exists(${.OBJDIR}/../libcpp)
|
|
LIBCPP= ${.OBJDIR}/../libcpp/libcpp.a
|
|
.else
|
|
LIBCPP= ${.CURDIR}/../libcpp/libcpp.a
|
|
.endif
|
|
|
|
.if exists(${.OBJDIR}/../libdecnumber)
|
|
LIBDECNUMBER= ${.OBJDIR}/../libdecnumber/libdecnumber.a
|
|
.else
|
|
LIBDECNUMBER= ${.CURDIR}/../libdecnumber/libdecnumber.a
|
|
.endif
|
|
|
|
.endif # !__CC_MAKEFILE_INC__
|