Le 08/12/2019 à 09:33, Pierre Labastie via blfs-dev a écrit :
> Le 07/12/2019 à 23:09, Douglas R. Reno a écrit :
>>
>>
>> On Sat, Dec 7, 2019, 3:36 PM Pierre Labastie via blfs-dev
>> <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>>     Hi,
>>
>>     If you redirect stdout to a file when running ninja, it loops endlessly 
>> trying
>>     to have /dev/stdout mtime lower than build.ninja mtime.
>>     Of course, this is impossible (actually the loop ends after 100 runs).
>>     passing -Dcogl_tests=false to meson allows the build to pass (but this a
>>     workaround which is not totally satisfactory)
>>
>>     Details (see ticket #12631): two files "meson.build" in subdirectories of
>>     cogl/tests have a "run_command()" meson function, one argument of which 
>> is
>>     '/dev/stdout'. How it makes /dev/stdout a dependency of the build.ninja, 
>> I am
>>     not sure, but it does. Of course, if redirecting output to a file 
>> /dev:stdout
>>     is always more recent than build.ninja.
>>
>>     I am not sure what to do. Give up on the cogl tests may be a workaround, 
>> but
>>     not what we want. We could try to remove ../.. ... ../dev/stdout from
>>     build.ninja (problem is that they make a relative path).
>>
>>     Pierre
>>
>>
>> Another thing we could try is marking the test suite as non working, or
>> commenting out something in meson.build to skip the cogl tests entirely. I'm
>> not sure why it's not working here - just to narrow it down, does it work 
>> with
>> Meson-0.51? 
>>
>> I was looking through the upstream repository and couldn't find anything 
>> which
>> makes me wonder if it's something in our environment. Same thing for the 
>> files
>> themselves and the MRs too...
>>
>> I probably won't get around to looking at this until later tonight or 
>> tomorrow
>> though
>>
> 
> Yes it works when downgrading meson to 0.51.2. And it works with meson 0.52.x
> when passing -Dcogl_tests=false (which of course disable the cogl tests, but
> not the other tests). We may want to look at meson commits between 0.51 and
> 0.52 (bisecting?). But even if meson changed, isn't it intended? So I'm not
> sure where to report a bug: to meson or to mutter?
> 

I did the bisection, and found that the commit which changed the behavior in
meson is 3db6dcb3b85.

I Filed an issue[1] with meson, but they may as well tell that mutter devs
should change their meson.build files.

For now, I suggest disabling the cogl_tests, or maybe issue this sed:

sed -e 's@[./]*dev/stdout @@' \
    -e 's@meson-private/coredata.dat @@' \
    -i build.ninja

after running meson and before running ninja. coredata.dat must also be
removed, because it appears to be posterior to build.ninja, so that meson is
run again when ninja starts, and the effect of the sed is lost...

Pierre
[1]: https://github.com/mesonbuild/meson/issues/6315
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to