[QBS] Using qbs for in-source build

Christian Kandeler christian.kandeler at theqtcompany.com
Wed Aug 5 10:45:49 CEST 2015


On 08/05/2015 10:31 AM, Joerg Bornemann wrote:
> On 04-Aug-15 22:14, Orgad Shaneh wrote:
>
>>    * If I delete the output file it is not regenerated (unless I delete
>>      the build graph, which regenerates all the files)
>
> The timestamps are stored in the build graph for performance reasons
> (esp. for Windows). If you mess around with the contents of the build
> dir you must pass --check-timestamps to qbs.

But note that this is merely a quick fix for the "I have screwed up" 
case. We do not recommend using it as part of your regular process.

>>    * If the source file is modified, but the target file has a newer date
>>      (e.g. pbuilder was invoked from the shell), it is still regenerated.
>
> Probably because the target file path in your output artifact is never
> generated. You said pbuilder will generate files in the source dir.
> You could add a rule "html" -> "html-copy" that copies each HTML file
> into the build dir. Then a rule "html-copy" -> "html-cpp" runs pbuilder
> in the build dir where the cpp files will end up.

I think what Orgad meant is that -- much like in the scenario above -- 
he updates the output file outside of qbs. So the same answer would 
apply here.


Christian



More information about the Qbs mailing list