META_MODE: Fix 2nd build causing everything to rebuild due to changed CC.
In the first build the TOOLSDIR does not exit yet which causes CC to default to the sys.mk version. Once a TOOLSDIR is created during the build though, this logic was changing CC to ${TOOLSDIR}/usr/bin/cc even though that file did not exist. Thus CC went from 'cc' to '/usr/bin/cc' which forced a rebuild of everything while using the same compiler. Check that TOOLSDIR is not empty to avoid this. If there is actually a TOOLSDIR cc then it will be used and properly rebuild. Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
parent
4b23c482f4
commit
b8aba4fc19
@ -214,6 +214,7 @@ TOOLSDIR?= ${HOST_OBJTOP}/tools
|
||||
.elif defined(STAGE_HOST_OBJTOP) && exists(${STAGE_HOST_OBJTOP}/usr/bin)
|
||||
TOOLSDIR?= ${STAGE_HOST_OBJTOP}
|
||||
.endif
|
||||
.if !empty(TOOLSDIR)
|
||||
.if ${.MAKE.LEVEL} == 0 && exists(${TOOLSDIR}/usr/bin)
|
||||
PATH:= ${PATH:S,:, ,g:@d@${exists(${TOOLSDIR}$d):?${TOOLSDIR}$d:}@:ts:}:${PATH}
|
||||
.export PATH
|
||||
@ -224,6 +225,7 @@ CXX?= ${TOOLSDIR}/usr/bin/c++
|
||||
.export HOST_CC CC CXX
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if ${MACHINE:Nhost:Ncommon} != "" && ${MACHINE} != ${HOST_MACHINE}
|
||||
# cross-building
|
||||
|
Loading…
Reference in New Issue
Block a user