Hi Christian,

I confirm I get it working with Qt-creator and qbs from master.
But I also experienced repeated crashes when opening some qbs files in qtcreator...

So maybe I will way this get's released before using in production.
Is it planned to have qbs 1.4 in next Qt 5.4 release ?

Thanks for your help solving this.

Stéphane

Le 05-12-14 10:15, Christian Kandeler a écrit :
On 12/05/2014 08:53 AM, Stéphane Fabry wrote:
- Depends{name:"obj"}  does not seems to work, it says "Product
dependency 'obj' not found for profile ..."
Huh? "obj" is an input tag to your rule, not a product. It's the tag
that qbs gives to object files created by the compiler.

- I updated the my example to use output.filePath but in either way I
can't get the buildtag.txt file, the command is run but I can't found
the generated file... is the example too trivial (no source to build ?)
It's where you specified it to be in the Artifact item. Note that
relative paths are anchored at the product build directory.

- I can download and build qbs from master but then how should I
configure QtCreator to use the version I've just build ? Is it just the
qbs.exe to copy into the Tools directory ?
No, you'd have to use Creator from the master branch as well.


Christian

Le 04-12-14 16:13, Christian Kandeler a écrit :
On 12/04/2014 03:00 PM, Stéphane Fabry wrote:
I tried to do what you explained, but can't get it working.
Sorry, I made two mistakes in my explanation:
       1) You don't need a pseudo-artifact. Just set "alwaysUpdated" to
          false in your real artifact.
       2) This works only in master, not in 1.3.
So, what's a workaround you can use in 1.3? Maybe have a dependency on
the "obj" tag? If no object file changes, you won't have a new build, right?


Christian

(Btw., in your example you create the "build.txt" file not at the place
you specified in the Artifact item. To prevent such inconsistencies, we
recommend using the outputs variable to access these paths.)

Here is the minimal project I tried:

importqbs1.0

import  qbs.TextFile

import  qbs.FileInfo

Product  {

       name:  "Build  Tag"

       type:  "buildtag"

       targetName:  "buildtag.txt"

       Group  {

           name:  "Fake  input"

           files:  "fake.in"

           fileTags:  ["in_tag"]

       }

       Rule  {

           inputs:  ["in_tag"]

           Artifact  {

               filePath:  "buildtag.txt"

               fileTags:  "buildtag"

           }

           Artifact  {

               alwaysUpdated:  false

               filePath:  "fakeOutput"

           }

           prepare:  {

               var  cmd  =  new  JavaScriptCommand();

               cmd.description  =  "Update  build  date  tag  !"

               cmd.sourceCode  =  function()  {

                   var  file  =  new  TextFile("./buildtag.txt",  
TextFile.WriteOnly);

                   var  today  =  new  Date()

                   file.writeLine(today.toISOString());

                   file.close();

               }

               return  cmd;

           }

       }

}


Thanks



Le 04-12-14 10:59, Christian Kandeler a écrit :
On 12/03/2014 10:18 PM, Stéphane Fabry wrote:
I'm trying to create an artefact (a simple text file) that contain the
last date of build,
so i just need to write the date 'now' each time the project is build.

The problem is I don't know how to tell qbs to rebuild the artefact each
time the project is build (or partially build) ?

Has someone an idea how to do this ?
Yeah, we really should add some rule property that makes this kind of
thing straightforward. You could file a bug report to enhance the
visibility of this issue.
I assume you are using a Transformer item now? The workaround is to use
a rule instead (give some random input tag, as there needs to be at
least one) and in this rule, in addition to your real output artifact,
declare a second one that you will never create and set its
"alwaysUpdated" property to false (the filePath can be anything, as long
as it's uniqe). This should achieve what you want.


Christian

_______________________________________________
QBS mailing list
QBS@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs
--
*Stéphane Fabry*, Project & IT Manager
+32 (0)4 367 07 92
*X-RIS* | /X-Ray Imaging Solutions/
www.xris.eu/contact.html
_______________________________________________
QBS mailing list
QBS@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs
--
*Stéphane Fabry*, Project & IT Manager
+32 (0)4 367 07 92
*X-RIS* | /X-Ray Imaging Solutions/
www.xris.eu/contact.html


_______________________________________________
QBS mailing list
QBS@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs

_______________________________________________
QBS mailing list
QBS@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs


--
*Stéphane Fabry*, Project & IT Manager
+32 (0)4 367 07 92
*X-RIS* | /X-Ray Imaging Solutions/
www.xris.eu/contact.html
_______________________________________________
QBS mailing list
QBS@qt-project.org
http://lists.qt-project.org/mailman/listinfo/qbs

Reply via email to