| Commit | Line | Data |
|---|---|---|
| 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 | |
| 20 | CCVER ?= ${_DEFAULT_CCVER} | |
| 5228fe46 | 21 | _CCVER := ${CCVER} |
| 4f5ea479 | 22 | .if exists(/usr/libexec/${_CCVER}/cc) || exists(/usr/libexec/custom/cc) |
| 4db2a28c | 23 | HOST_CCVER?= ${_CCVER} |
| c0cbcbce | 24 | .else |
| 4f5ea479 | 25 | HOST_CCVER?= ${_DEFAULT_CCVER} |
| c97b9141 | 26 | .endif |
| 984263bc | 27 | |
| 6b6a9e55 | 28 | .if exists(/usr/libexec/${_DEFAULT_BINUTILSVER}/elf/as) |
| 123dec51 | 29 | HOST_BINUTILSVER?= ${_DEFAULT_BINUTILSVER} |
| 6b6a9e55 | 30 | .else |
| bcb70b81 | 31 | HOST_BINUTILSVER!= basename `find -s /usr/libexec/binutils* -depth 0 | tail -1` |
| 6b6a9e55 | 32 | .endif |
| 123dec51 | 33 | |
| eb45cc97 SZ |
34 | .if defined(FORCE_CPUTYPE) |
| 35 | CPUTYPE= ${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 | |
| 69 | CFLAGS += ${_CPUCFLAGS} | |
| 984263bc | 70 | .endif |
| 85d641d8 | 71 |