On 21.04.2022 18:42, Andrew Cooper wrote:
> On 21/04/2022 17:09, Jan Beulich wrote:
>> On 21.04.2022 18:00, Andrew Cooper wrote:
>>> Now that `make MAP` might rebuild $(TARGET), it needs removing from
>>> no-dot-config-targets.
>> Which raises the question whether the MAP target originally was
>> meant to be used only on an already built tree, which would
>> explain the missing dependency that you added in the earlier
>> commit.
> 
> I can't comment on the previous expectation, but the fact you couldn't
> previously do `make -j4 build MAP` was simply broken.
> 
> There are also several other breakages in Xen's build system which it
> turns out is forcing all downstreams to bodge around in ways that range
> from gross to dangerous, and which need fixing for everyone's benefit. 
> (Emails will be appearing for those shortly)

Right - at least tests and cloc look to have a similar issue.

> The current debug target (just runs objdump -d) is similar to MAP,
> except I don't find it a credible target to use and was planning to
> delete it.

Well, yes. I wasn't even aware of this mis-named goal.

>>> Otherwise the build eventually fails with:
>>>
>>>     CPP     arch/x86/asm-macros.i
>>>   arch/x86/asm-macros.c:1:10: fatal error: asm/asm-defns.h: No such file or
>>>   directory
>>>       1 | #include <asm/asm-defns.h>
>>>         |          ^~~~~~~~~~~~~~~~~
>> Why would this be? asm/ isn't a symlink anymore, so should always
>> exist. I would have expected an error about .config or
>> autoconf.h not existing, ...
>>
>>> Fixes: e1e72198213b ("xen/build: Fix dependency for the MAP rule")
>>> Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>
>>> ---
>>> CC: Jan Beulich <jbeul...@suse.com>
>>> CC: Anthony PERARD <anthony.per...@citrix.com>
>>>
>>> Backporting notes.  The original, e1e72198213b, wants backporting as far as 
>>> we
>>> can go.  This patch is only relevant from 6c122d3984a5e onwards, so 4.14,
>>> which is why my main developing/testing on 4.13 didn't spot it.
>> ... and the commit you reference seems to support that expectation.
> 
> I haven't spent very long investigating exactly how it breaks.  I don't
> think it's important, because the purpose of no-dot-config-targets is to
> skip large swathes of the logic.

I find it generally helpful to understand breakage when it looks odd how
exactly things break, but anyway
Acked-by: Jan Beulich <jbeul...@suse.com>

Jan


Reply via email to