bug 2450: Allow build of RELEASE 3.2 from master's bmake
[dragonfly.git] / share / mk / bsd.cpu.mk
CommitLineData
984263bc
MD
1# $FreeBSD: src/share/mk/bsd.cpu.mk,v 1.2.2.5 2002/07/19 08:09:32 ru Exp $
2
5228fe46
MD
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.
4db2a28c
MD
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.
c0cbcbce
MD
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.
4db2a28c 16
bcb70b81
SW
17_DEFAULT_CCVER= gcc44
18_DEFAULT_BINUTILSVER= binutils222
4f5ea479
SS
19
20CCVER ?= ${_DEFAULT_CCVER}
5228fe46 21_CCVER := ${CCVER}
4f5ea479 22.if exists(/usr/libexec/${_CCVER}/cc) || exists(/usr/libexec/custom/cc)
4db2a28c 23HOST_CCVER?= ${_CCVER}
c0cbcbce 24.else
4f5ea479 25HOST_CCVER?= ${_DEFAULT_CCVER}
c97b9141 26.endif
984263bc 27
6b6a9e55 28.if exists(/usr/libexec/${_DEFAULT_BINUTILSVER}/elf/as)
123dec51 29HOST_BINUTILSVER?= ${_DEFAULT_BINUTILSVER}
6b6a9e55 30.else
bcb70b81 31HOST_BINUTILSVER!= basename `find -s /usr/libexec/binutils* -depth 0 | tail -1`
6b6a9e55 32.endif
123dec51 33
eb45cc97
SZ
34.if defined(FORCE_CPUTYPE)
35CPUTYPE= ${FORCE_CPUTYPE}
36.endif
37
4f5ea479 38.if defined(CCVER_BSD_CPU_MK)
85d641d8
JS
39. if ${CCVER_BSD_CPU_MK} != ""
40. include "${CCVER_BSD_CPU_MK}"
984263bc 41. endif
f0140465
JM
42.elif ${CCVER} == "gcc47"
43. include <bsd.cpu.gcc47.mk>
4f5ea479
SS
44.elif ${CCVER} == "gcc44"
45. include <bsd.cpu.gcc44.mk>
85d641d8 46.else
c97b9141 47. include <bsd.cpu.custom.mk>
5228fe46
MD
48.endif
49
50# /usr/bin/cc depend on the CCVER environment variable, make sure CCVER is
51# exported for /usr/bin/cc and friends. Note that CCVER is unsupported when
52# cross compiling from 4.x or older versions of DFly and should not be set
53# by the user.
54#
59620cdf
JM
55.if defined(.PARSEDIR)
56.export CCVER
57.export HOST_CCVER
58.else
59# LEGACY MAKE - REMOVE FOR DFLY 3.6
5228fe46 60.makeenv CCVER
4db2a28c 61.makeenv HOST_CCVER
59620cdf 62.endif
984263bc 63
5228fe46
MD
64# We can reassign _CPUCFLAGS and CFLAGS will evaluate properly to the
65# new value, we do not have to add the variable to CFLAGS twice.
66#
67.if !defined(NO_CPU_CFLAGS) && !defined(_CPUCFLAGS_ASSIGNED)
68_CPUCFLAGS_ASSIGNED=TRUE
69CFLAGS += ${_CPUCFLAGS}
984263bc 70.endif
85d641d8 71