Subject: [bug#73028] [PATCH] doc: Document usage of #:out-of-source? for meson-build-system.

From: Maxim Cournoyer <[email-masked]>
Date: Thu, 12 Sep 2024 09:56:20 +0900

Hi Dariqq,

Dariqq <[email-masked]> writes:

> Hi Maxim,
>
>
> On 11.09.24 08:09, Maxim Cournoyer wrote:
>> Hi Dariqq,
>> Dariqq <[email-masked]> writes:
>> That strikes me as odd; is it useful in practice?  Otherwise I'd
>> rather
>> we keep it undocumented, so that it can be removed without notice in a
>> future cleanup (in a 'private API' way).
>> 
>
> Ludovic asked me to document the new parameter, so I added something
> for the current behaviour.
>
> Because I don't think the message arrived at the original issue, i
> copied below. I hope this is ok:
>
>> On 04.09.24 16:02, Ludovic Courtès wrote:
>> AFAICS these changes are not sufficient because ‘configure’ in
>> meson-build-system.scm does not honor #:out-of-source? (unlike
>> ‘configure’ in gnu-build-system.scm).
>> So if I’m not mistaken, you’ll need to change ‘configure’ as well.
>> You can also update doc/guix.texi under “Build Systems” to mention
>> this
>> parameter.
>> Last: ‘guix refresh -l meson’ shows that this is almost a
>> world-rebuild
>> change (23K dependents), so we’ll need to have this change in a separate
>> branch.
>> Could you send an updated patch?
>> Thanks,
>> Ludo’.
>
> I have sent this patch for the documentation part but am still unsure
> what is meant by *sufficient* because meson cannot do in source
> builds.

I'm still out of context; is there an original bug number to refer to to
better understand what was the root problem being addressed?

> Maybe it should not be an option at all and instead be #t
> unconditionally in 'install-license-files phase in meson-build-system?

Given most build phases of the gnu-build-system, which support
#:out-of-source? are reused in the meson-build-system, this argument
needs to be set to #t (which it currently is).  But perhaps there's a
way to hide it from the users, perhaps via the 'private-keywords'
variable defined in the 'lower' procedure of the (guix build-system
meson) module (I haven't tested).

-- 
Thanks,
Maxim