Resurrecting clang external toolchain support in Makefile.inc
Warner Losh
imp at bsdimp.com
Thu Feb 12 01:02:19 UTC 2015
> On Feb 11, 2015, at 5:02 PM, Peter Grehan <grehan at freebsd.org> wrote:
>
> Hi Bapt,
>
>> In my opinion we should track down the last traces of XFLAGS and turn them into
>> proper XCFLAGS and XCXXFLAGS, the intent was to get rid of XFLAGS because the
>> name was confusing.
>>
>> so instead of adding XFLAGS to XC*FLAGS, the XFLAGS should juste be converted
>> into XC*FLAGS directly in my opinion.
>
> How about the appended ? It moves the sysroot definition into the non-GCC XC/XCXXFLAGS defs, and renames XFLAGS to BFLAGS. This should be identical to pre r273755 behaviour.
>
> later,
>
> Peter.
>
> --- Makefile.inc1 (revision 278542)
> +++ Makefile.inc1 (working copy)
> @@ -348,16 +348,15 @@
> SIZE="${XSIZE}"
>
> .if ${XCC:M/*}
> -XFLAGS= --sysroot=${WORLDTMP}
> .if defined(CROSS_BINUTILS_PREFIX)
> # In the case of xdev-build tools, CROSS_BINUTILS_PREFIX won't be a
> # directory, but the compiler will look in the right place for it's
> # tools so we don't need to tell it where to look.
> .if exists(${CROSS_BINUTILS_PREFIX})
> -XFLAGS+= -B${CROSS_BINUTILS_PREFIX}
> +BFLAGS+= -B${CROSS_BINUTILS_PREFIX}
> .endif
> .else
> -XFLAGS+= -B${WORLDTMP}/usr/bin
> +BFLAGS+= -B${WORLDTMP}/usr/bin
> .endif
> .if ${TARGET} == "arm"
> .if ${TARGET_ARCH:M*hf*} != ""
> @@ -374,6 +373,8 @@
> TARGET_ABI?= unknown
> TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd11.0
> XCFLAGS+= -target ${TARGET_TRIPLE}
> +XCFLAGS+= --sysroot=${WORLDTMP} ${BFLAGS}
> +XCXXFLAGS+= --sysroot=${WORLDTMP} ${BFLAGS}
> .endif
> .endif
I like this patch better than the one I have. I’m not 100% sure the ‘else’ clause will work, but it is certainly better than we have today.
Warner
More information about the freebsd-toolchain
mailing list