[OE-core] [PATCH] meson.bbclass: Fix build issues with /tmp mounted with noexec

Mark Hatle mark.hatle at windriver.com
Thu Oct 11 14:23:35 UTC 2018


On 10/10/18 3:32 PM, Nirbheek Chauhan wrote:
> On Thu, Oct 11, 2018 at 1:50 AM Mark Asselstine
> <mark.asselstine at windriver.com> wrote:
>> Definitely a bug in that it doesn't propogate as an error.
> 
> Note that compiler checks currently never raise an exception, and -1
> is the all-inclusive "error condition" for when the size of a variable
> could not be determined. Perhaps we should add a kwarg to sizeof()
> that forces it to error out if the size could not be determined, or if
> an unexpected error occurs.
> 
>> On the need to
>> always use meson-private, I am 50/50 on that. Since meson respects TMPDIR/TMP/
>> TEMP does it really need to handle this directly?
>>
> 
> The main advantage of using tmpfs for temporary files is obvious,
> which is why we try to avoid writing that to meson-private inside the
> builddir. As I just commented on the issue, `XDG_RUNTIME_DIR` might be
> a good candidate for an exec tmpfs location.
> 

I'm assuming that this would require changes to Meson itself.  I think this is
outside of the scope of this type of work.

XDG_RUNTIME_DIR from the environment also poses issues depending on how it's
used.  If we're writing random files there w/o a tmpdir like semantic we could
still run into problems with multiple builds going on at once.  (Yes, I'm one of
the crazy users who log-in multiple times and run builds in parallel.)  So we
likely would still want to override the location of XDG_RUNTIME_DIR, instead of
just 'TMPDIR'.  So we're not really any better off.

I think for the purpose of the bug as stated, the original patch suggested by
Mark is likely the right solution.  If Meson documents a way to split things it
needs for exec vs data files -- then we can adjust the solution at that time.

So...

Ack patch as written.

--Mark



More information about the Openembedded-core mailing list