|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [RFC PATCH] xen: Add macOS hypervisor build support
On 04.02.2026 16:45, Bertrand Marquis wrote:
>> On 4 Feb 2026, at 16:31, Jan Beulich <jbeulich@xxxxxxxx> wrote:
>> On 04.02.2026 14:16, Bertrand Marquis wrote:
>>> --- a/xen/Makefile
>>> +++ b/xen/Makefile
>>> @@ -116,7 +116,7 @@ endif
>>> # If the user is running make -s (silent mode), suppress echoing of
>>> # commands
>>>
>>> -ifneq ($(findstring s,$(filter-out --%,$(MAKEFLAGS))),)
>>> +ifneq ($(findstring s,$(firstword $(MAKEFLAGS))),)
>>
>> While probably this would do, assuming make isn't going to make drastic
>> changes to how $(MAKEFLAGS) is set up, how about
>>
>> -ifneq ($(findstring s,$(filter-out -%,$(MAKEFLAGS))),)
>>
>> instead?
>
> Yes this is a solution that should work to, making the assumption that short
> arguments are kept at the beginning like they are now is possibly to strong.
As you indicated on Matrix, this wouldn't cover variable definitions, e.g. O=.
Sticking to just $(firstword ...) also doesn't work, though: If there are no
options needing handing on and having a short form representation, the "first
word" may be empty, with $(MAKEFLAGS) then starting with a blank. Perhaps
ifneq ($(findstring s,$(firstword .$(MAKEFLAGS))),)
would be a way to overcome this.
However, wording in the documentation [1], [2] is ambiguous as to whether we
may rely on there being that leading blank (it seems likely that [1] is more
reliable than [2], but still). However, [2] effectively suggests another
alternative:
ifneq ($(findstring s,$(filter-out --%,$(MFLAGS))),)
While you meanwhile clarified (again on Matrix) that use of -I isn't the
culprit, even with O= I still cannot observe the behavior you're describing.
I.e. I still need to pass -s in order to silence the build, even if I use
O=.../staging (i.e. an 's' clearly being present in the path).
Jan
[1] "If there are no single-letter options on the command line, then the value
of MAKEFLAGS starts with a space."
[2] "A similar variable MFLAGS exists also, for historical compatibility. It
has the same value as MAKEFLAGS except that it does not contain the
command line variable definitions, and it always begins with a hyphen
unless it is empty (MAKEFLAGS begins with a hyphen only when it begins
with an option that has no single-letter version, such as
‘--warn-undefined-variables’)."
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |