[Development] How to create new Qt modules or tools

Craig.Scott at csiro.au Craig.Scott at csiro.au
Mon Dec 12 23:11:21 CET 2011


On 13/12/2011, at 12:09 AM, <marius.storm-olsen at nokia.com> <marius.storm-olsen at nokia.com> wrote:

> What is it that you require to upload the results to  a cdash, and why wouldn't qmake be able to do so?
> I thought cmake simply ran cdash to upload the results, and certainly qmake can easily add the rules for doing the same?

I guess it would be possible to extend qmake to produce the required XML files for upload, but it's more than that. You would have to write the code to drive the repository update, build and test phases too. That's a non-trivial amount of work which I don't think is actually necessary. The whole process can be driven by ctest. I think it would be possible to have ctest invoke qmake to do the build part, although I'm not sure how well it would work. I think if you went down this path though, you would almost immediately re-open the qmake vs cmake build system debate again (if you feel the need to comment on this here, please use a different discussion thread).

> 
> What's the command line you need to run after a 'make check', and which variables do you need to control that process? (Server name, user name, password etc)

The ctest application relies on a small file at the top of your source tree. That file specifies things like the CDash server name, the project name to submit results for and maybe a few other config-related things. Rather than the build tool (eg make) driving the process, the cmake/ctest model works the other way around. If you do a "make test", cmake has set up the Makefile's to essentially just forward this to running ctest. Laszlo has sent a link in his reply to this thread which you may find useful if you want more info on how to use ctest without cmake, but it is more complicated doing it that way (because you have to do all the steps that cmake would otherwise be doing for you).


> 
> -- 
> .marius
> 
> 
>> -----Original Message-----
>> From: development-bounces+marius.storm-olsen=nokia.com at qt-
>> project.org [mailto:development-bounces+marius.storm-
>> olsen=nokia.com at qt-project.org] On Behalf Of ext Laszlo Papp
>> Sent: Monday, December 12, 2011 5:08 AM
>> To: Craig.Scott at csiro.au
>> Cc: development at qt-project.org
>> Subject: Re: [Development] How to create new Qt modules or tools
>> 
>>> I really like the model of enabling the community to submit build results to
>> a central dashboard. It allows those with an interest in a particular
>> platform/compiler combination to put in the initial setup work and have their
>> combination included in the automated build/test infrastructure. The Kitware
>> guys make it easy with simple instructions to get a build submission up and
>> running this was a key factor for me to add builds for the platforms/compiler
>> that matter to our group. Heck, it even motivated me to set up similar things
>> for the rest of our code base, so I guess we're proof that such a system can
>> encourage better habits. I've missed not having a similar thing for Qt.
>> 
>> I agree with this. It brings my next question: Could "cmake" also be
>> an option in Qt Playground until there is no such a service ? I would
>> personally miss this opportunity as it makes the project quality
>> better. I do not currently have the manpower for maintaining two build
>> services simultaneously, and the qmake part would still remain
>> untested. That is also fine if the publishing of the build results is
>> sorted out somehow with qmake inside the qt community. I could use my
>> own servers for building as I do with the current way by using cdash.
>> 
>> Best Regards,
>> Laszlo Papp
>> 
>> PS.: My other questions are hopefully not forgotten either in the flow. :)
>> _______________________________________________
>> Development mailing list
>> Development at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/development

--
Dr Craig Scott
Computational Software Engineering Team Leader, CSIRO (CMIS)
Melbourne, Australia






More information about the Development mailing list