svn commit: r300349 - head

Bryan Drewery bdrewery at FreeBSD.org
Fri Jul 22 17:23:27 UTC 2016


On 5/20/16 6:32 PM, Bryan Drewery wrote:
> Author: bdrewery
> Date: Sat May 21 01:32:07 2016
> New Revision: 300349
> URL: https://svnweb.freebsd.org/changeset/base/300349
> 
> Log:
>   Enable and utilize WITHOUT_CROSS_COMPILER logic for external CC.
>   
>   This is a NOP.
>   

It turns out it isn't a NOP!

>   Reviewed by:	brooks, bapt
>   Sponsored by:	EMC / Isilon Storage Division
>   Differential Revision:	https://reviews.freebsd.org/D6354
> 
> Modified:
>   head/Makefile.inc1
> 
> Modified: head/Makefile.inc1
> ==============================================================================
> --- head/Makefile.inc1	Sat May 21 01:32:04 2016	(r300348)
> +++ head/Makefile.inc1	Sat May 21 01:32:07 2016	(r300349)
> @@ -91,6 +91,12 @@ X${BINUTIL}?=	${CROSS_BINUTILS_PREFIX}${
>  X${BINUTIL}?=	${${BINUTIL}}
>  .endif
>  .endfor
> +# If a full path to an external cross compiler is given, don't build
> +# a cross compiler.
> +.if ${XCC:N${CCACHE_BIN}:M/*}
> +MK_CROSS_COMPILER=	no
> +.endif

Now MK_CROSS_COMPILER=no is set.

> +
>  .include <bsd.compiler.mk>		# don't depend on src.opts.mk doing it
>  .include "share/mk/src.opts.mk"	
>  

src.opts.mk has:

.if ${MK_CROSS_COMPILER} == "no"
MK_BINUTILS_BOOTSTRAP:= no
MK_CLANG_BOOTSTRAP:= no
MK_ELFTOOLCHAIN_BOOTSTRAP:= no
MK_GCC_BOOTSTRAP:= no
.endif

So binutils and elftoolchain don't get built.  In my SYSTEM_COMPILER
commit r300354 I had intended that binutils and elftoolchain continue to
build as they lack version checks like were added for the compiler.

I'll get some sort of fix in today for this.


> @@ -454,7 +460,7 @@ BFLAGS+=	-B${CROSS_BINUTILS_PREFIX}
>  .endif
>  
>  # External compiler needs sysroot and target flags.
> -.if ${XCC:N${CCACHE_BIN}:M/*} || ${MK_CROSS_COMPILER} == "no"
> +.if ${MK_CROSS_COMPILER} == "no"
>  .if !defined(CROSS_BINUTILS_PREFIX) || !exists(${CROSS_BINUTILS_PREFIX})
>  BFLAGS+=	-B${WORLDTMP}/usr/bin
>  .endif
> @@ -478,7 +484,7 @@ XCFLAGS+=	-target ${TARGET_TRIPLE}
>  .endif
>  XCFLAGS+=	--sysroot=${WORLDTMP}
>  .else
> -.endif # ${XCC:M/*} || ${MK_CROSS_COMPILER} == "no"
> +.endif # ${MK_CROSS_COMPILER} == "no"
>  
>  .if !empty(BFLAGS)
>  XCFLAGS+=	${BFLAGS}
> @@ -1714,9 +1720,7 @@ _elftctools=	lib/libelftc \
>  		usr.bin/elfcopy
>  .endif
>  
> -# If an full path to an external cross compiler is given, don't build
> -# a cross compiler.
> -.if ${XCC:N${CCACHE_BIN}:M/*} == "" && ${MK_CROSS_COMPILER} != "no"
> +.if ${MK_CROSS_COMPILER} != "no"
>  .if ${MK_CLANG_BOOTSTRAP} != "no"
>  _clang=		usr.bin/clang
>  _clang_libs=	lib/clang
> 


-- 
Regards,
Bryan Drewery


More information about the svn-src-head mailing list