qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Meson can't recover from deletion of generated QAPI file(s)


From: Claudio Fontana
Subject: Re: Meson can't recover from deletion of generated QAPI file(s)
Date: Wed, 9 Sep 2020 15:35:19 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

On 9/9/20 3:06 PM, Philippe Mathieu-Daudé wrote:
> On 9/9/20 2:37 PM, Markus Armbruster wrote:
>> Watch this:
>>
>>     $ rm qapi/qapi-types-error.h 
>>     $ make
>>     Generating qemu-version.h with a meson_exe.py custom command
>>     Compiling C object qom/libqom.fa.p/object_interfaces.c.o
>>     In file included from ../qom/object_interfaces.c:4:
>>     /work/armbru/qemu/include/qapi/error.h:275:10: fatal error: 
>> qapi/qapi-types-error.h: No such file or directory
>>       275 | #include "qapi/qapi-types-error.h"
>>           |          ^~~~~~~~~~~~~~~~~~~~~~~~~
>>     compilation terminated.
>>     make: *** [Makefile.ninja:348: qom/libqom.fa.p/object_interfaces.c.o] 
>> Error 1
>>
>> To recover, I have to run qapi-gen.py manually and exactly right, or
>> blow away the build tree and start over.
>>
>> The old build system did what a build system should: it remade the files
>> that are missing or out of date.
>>
>> I'm still too clueless about Meson to debug this, but I hope I can learn
>> from watching you fix it.
> 
> Maybe related:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg736135.html
> and later:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg738777.html
> 

My use case is this:
my simple build script uses git rebase -x to run a build for each commit of a 
series, and fails if at any point one of the commits breaks the build or tests.

FILE ~/bin/check-build.sh:

#! /bin/bash
git rebase $1 -x build.sh

FILE ~/bin/build.sh:

#! /bin/bash
set -x
set -e

rm -fr build-tcg
mkdir build-tcg
cd build-tcg
../configure --enable-tcg --disable-kvm --disable-hax
make -j120
make -j120 check
cd ..

rm -fr build-nontcg
mkdir build-nontcg
cd build-nontcg
../configure --disable-tcg --enable-kvm --enable-hax
make -j120
make -j120 check
cd ..

rm -fr build-all
mkdir build-all
cd build-all
../configure --enable-tcg --enable-kvm --enable-hax
make -j120
make -j120 check
cd ..

--------------------

In case it helps with reproducing the problem.

Ciao,

Claudio





reply via email to

[Prev in Thread] Current Thread [Next in Thread]