On Wed, Dec 12, 2012 at 3:01 PM, H.J. Lu <hjl.to...@gmail.com> wrote:
> On Wed, Dec 12, 2012 at 2:13 PM, Paolo Bonzini <bonz...@gnu.org> wrote:
>> Il 12/12/2012 19:11, H.J. Lu ha scritto:
>>>>> >>
>>>>> >> in RAW_CXX_TARGET_EXPORTS.  There is no need to do anything.
>>>> >
>>>> > Nope, if you remove this you get the wrong definition of CC and CXX from
>>>> > EXTRA_TARGET_FLAGS.  Instead, you need to add RAW_CXX_FOR_TARGET to
>>>> > AM_MAKEFLAGS and EXTRA_TARGET_FLAGS.
>>>> >
>>> We have set CXX and CXX_FOR_TARGET before EXTRA_TARGET_FLAGS
>>> is used:
>>>
>>> RAW_CXX_TARGET_EXPORTS = \
>>>         $(BASE_TARGET_EXPORTS) \
>>>         CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
>>>         CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS";
>>> export CXX;
>>>
>>> Shouldn't we the right CXX and CXX_FOR_TARGET?
>>
>> The purpose of EXTRA_TARGET_FLAGS is to forward any *_FOR_TARGET
>> variable passed on the command line to the toplevel Makefile.
>>
>
> We don't pass down RAW_CXX_FOR_TARGET from toplevel
> Makefile.  If one wants to change RAW_CXX_FOR_TARGET
> from command line, he/she should do
>
> # make RAW_CXX_FOR_TARGET=xxx
>
> and RAW_CXX_TARGET_EXPORTS should handle it properly.

Also there are:

# ------------------------------
# Special directives to GNU Make
# ------------------------------

# Don't pass command-line variables to submakes.
.NOEXPORT:
MAKEOVERRIDES=

in toplevel Makefile.  How does

# make *_FOR_TARGET=xxxx

work at toplevel?


-- 
H.J.

Reply via email to