Thanks for the info David.<div><br></div><div>If I can find the time I would love to help make these changes for you. In the meantime if you find the time, give me some pointers to get me started and I'll work on this for you (class names, interface methods that are important to implement, etc)<br clear="all">
<div><br></div><div>---------</div>Robert Dailey<br>
<br><br><div class="gmail_quote">On Wed, Nov 16, 2011 at 12:03 PM, David Cole <span dir="ltr"><<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Wed, Nov 16, 2011 at 12:28 PM, Robert Dailey <<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>> wrote:<br>
> So basically because we use perforce, there is no way to use ctest?<br>
<br>
</div>Well, you can still use ctest, you just won't be able to use the<br>
ctest_update function in your script to do the update, track the<br>
changed files, and communicate them up to CDash for you.<br>
<div class="im"><br>
> I assume ctest does the following:<br>
> - Check out source code<br>
> - Configure CMake<br>
> - Generate CMake<br>
> - Initiate a build from generated targets<br>
> Is this correct? If so, it's the first step that code needs to be added for<br>
> to support perforce?<br>
<br>
</div>Yes, basically correct. Most of our dashboard scripts do check out the<br>
source code if the source tree is not there, or simply update it if it<br>
is there.<br>
<div class="im"><br>
> Is there a way to tell CTest to not check out source code and instead point<br>
> it to an existing working copy, that way I can perform the perforce checkout<br>
> externally via script? This would make for a decent workaround.<br>
> Thanks.<br>
<br>
</div>If there is an existing working copy, you may point at it. You can<br>
even do your own checkout and update steps if you want to using<br>
"execute_process" and some perforce command line... But ctest will not<br>
parse the perforce results and send them to the CDash server. That's<br>
what would need to be added to support perforce is a C++ class in<br>
ctest that knows how to interpret the output of perforce command line<br>
checkout/update steps. And in CDash, some code that knows how to form<br>
links to an online repository viewer would need to be added.<br>
<br>
It's all do-able... just not done yet. :-)<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
David<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
> ---------<br>
> Robert Dailey<br>
><br>
><br>
> On Wed, Nov 16, 2011 at 11:03 AM, David Cole <<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>> wrote:<br>
>><br>
>> And, to answer your initial question, no, perforce is not yet an<br>
>> officially supported version control system for use with ctest -S<br>
>> scripts and CDash.<br>
>><br>
>> The ones that are include:<br>
>> git<br>
>> svn<br>
>> cvs<br>
>> hg<br>
>> bzr<br>
>><br>
>> Additional code needs to be added to both ctest and CDash in order to<br>
>> support new version control systems.<br>
>><br>
>><br>
>> HTH,<br>
>> David<br>
>><br>
>><br>
>> On Wed, Nov 16, 2011 at 12:01 PM, David Cole <<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>><br>
>> wrote:<br>
>> > CDash is just a web app / server app. It does not do builds, it just<br>
>> > collects information from clients that submit to it, and displays<br>
>> > results.<br>
>> ><br>
>> > Client machines can run ctest -S scripts to submit build/test results<br>
>> > to a CDash dashboard.<br>
>> ><br>
>> > Look at the notes attached to a typical CMake dashboard for an example<br>
>> > of how a client machine must be set up to submit to the CDash server.<br>
>> ><br>
>> > For example, this one:<br>
>> ><br>
>> > <a href="http://www.cdash.org/CDash/viewNotes.php?buildid=1730072" target="_blank">http://www.cdash.org/CDash/viewNotes.php?buildid=1730072</a><br>
>> ><br>
>> > On our machine, dashmacmini5.kitware, a script runs this command with<br>
>> > the script shown at the above link:<br>
>> ><br>
>> > ctest -S<br>
>> > ${HOME}/Dashboards/DashboardScripts/dashmacmini5_cmake_clang.cmake<br>
>> > -O ${HOME}/Dashboards/Logs/dashmacmini5_cmake_clang.log<br>
>> ><br>
>> ><br>
>> > HTH,<br>
>> > David<br>
>> ><br>
>> ><br>
>> > On Wed, Nov 16, 2011 at 11:55 AM, Robert Dailey <<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>><br>
>> > wrote:<br>
>> >> Seems like the web viewer link is optional, I created the project<br>
>> >> without<br>
>> >> it.<br>
>> >> However, I see the default build groups but how do I add a build? I<br>
>> >> suppose<br>
>> >> CDash needs to know how to do a checkout of source code from Perforce?<br>
>> >> I'm<br>
>> >> really confused on what to do next...<br>
>> >><br>
>> >> ---------<br>
>> >> Robert Dailey<br>
>> >><br>
>> >><br>
>> >> On Wed, Nov 16, 2011 at 10:40 AM, Robert Dailey <<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>><br>
>> >> wrote:<br>
>> >>><br>
>> >>> Is it possible to use CDash with perforce as our SCM?<br>
>> >>> During the CDash installation, it is asking me for a "Repository<br>
>> >>> ViewerURL", and from the drop down it doesn't show perforce as a valid<br>
>> >>> item<br>
>> >>> in the list. Can this step be skipped or is there some way to make<br>
>> >>> perforce<br>
>> >>> work with this? I believe perforce's web viewer is P4Web.<br>
>> >>> Thanks.<br>
>> >>><br>
>> >>> ---------<br>
>> >>> Robert Dailey<br>
>> >><br>
>> >><br>
>> >> --<br>
>> >><br>
>> >> Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
>> >><br>
>> >> Visit other Kitware open-source projects at<br>
>> >> <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
>> >><br>
>> >> Please keep messages on-topic and check the CMake FAQ at:<br>
>> >> <a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
>> >><br>
>> >> Follow this link to subscribe/unsubscribe:<br>
>> >> <a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank">http://www.cmake.org/mailman/listinfo/cmake</a><br>
>> >><br>
>> ><br>
><br>
><br>
</div></div></blockquote></div><br></div>