1# $FreeBSD: src/share/mk/bsd.cpu.mk,v 1.2.2.5 2002/07/19 08:09:32 ru Exp $ 2 3# include compiler-specific bsd.cpu.mk. Note that CCVER may or may not 4# be passed as an environment variable. If not set we make it consistent 5# within make but do not otherwise export it. 6# 7# _CCVER is used to detect changes to CCVER made in Makefile's after the 8# fact. 9# 10# HOST_CCVER is used by the native system compiler and defaults to CCVER. 11# It is not subject to local CCVER overrides in Makefiles and it is inherited 12# by all sub-makes. 13# 14# If the host system does not have the desired compiler for HOST_CCVER 15# we back off to something it probably does have. 16 17_DEFAULT_CCVER= gcc50 18_DEFAULT_BINUTILSVER= binutils227 19 20CCVER ?= ${_DEFAULT_CCVER} 21_CCVER := ${CCVER} 22.if exists(/usr/libexec/${_CCVER}/cc) || exists(/usr/libexec/custom/cc) 23HOST_CCVER?= ${_CCVER} 24.else 25HOST_CCVER?= ${_DEFAULT_CCVER} 26.endif 27 28.if exists(/usr/libexec/${_DEFAULT_BINUTILSVER}/elf/as) 29HOST_BINUTILSVER?= ${_DEFAULT_BINUTILSVER} 30.else 31_NEXTAS!= find -s /usr/libexec/binutils* -name as -print0 -quit 32HOST_BINUTILSVER?= ${_NEXTAS:H:H:T} 33.endif 34 35.if defined(FORCE_CPUTYPE) 36CPUTYPE= ${FORCE_CPUTYPE} 37.endif 38 39.if defined(CCVER_BSD_CPU_MK) 40. if ${CCVER_BSD_CPU_MK} != "" 41. include "${CCVER_BSD_CPU_MK}" 42. endif 43.elif ${CCVER} == gcc47 44. include <bsd.cpu.gcc47.mk> 45.elif ${CCVER} == gcc50 46. include <bsd.cpu.gcc50.mk> 47.elif ${CCVER} == gcc80 48. include <bsd.cpu.gcc80.mk> 49.elif ${CCVER:Mclang*} 50. include <bsd.cpu.clang.mk> 51.else 52. include <bsd.cpu.custom.mk> 53.endif 54 55# /usr/bin/cc depend on the CCVER environment variable, make sure CCVER is 56# exported for /usr/bin/cc and friends. Note that CCVER is unsupported when 57# cross compiling from 4.x or older versions of DFly and should not be set 58# by the user. 59# 60.export CCVER 61.export HOST_CCVER 62 63# We can reassign _CPUCFLAGS and CFLAGS will evaluate properly to the 64# new value, we do not have to add the variable to CFLAGS twice. 65# 66.if !defined(NO_CPU_CFLAGS) && !defined(_CPUCFLAGS_ASSIGNED) 67_CPUCFLAGS_ASSIGNED=TRUE 68CFLAGS += ${_CPUCFLAGS} 69.endif 70 71