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&#39;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">&lt;<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>&gt;</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 &lt;<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>&gt; wrote:<br>
&gt; 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&#39;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>
&gt; I assume ctest does the following:<br>
&gt; - Check out source code<br>
&gt; - Configure CMake<br>
&gt; - Generate CMake<br>
&gt; - Initiate a build from generated targets<br>
&gt; Is this correct? If so, it&#39;s the first step that code needs to be added for<br>
&gt; 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>
&gt; Is there a way to tell CTest to not check out source code and instead point<br>
&gt; it to an existing working copy, that way I can perform the perforce checkout<br>
&gt; externally via script? This would make for a decent workaround.<br>
&gt; 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>
&quot;execute_process&quot; and some perforce command line... But ctest will not<br>
parse the perforce results and send them to the CDash server. That&#39;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&#39;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>
&gt; ---------<br>
&gt; Robert Dailey<br>
&gt;<br>
&gt;<br>
&gt; On Wed, Nov 16, 2011 at 11:03 AM, David Cole &lt;<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; And, to answer your initial question, no, perforce is not yet an<br>
&gt;&gt; officially supported version control system for use with ctest -S<br>
&gt;&gt; scripts and CDash.<br>
&gt;&gt;<br>
&gt;&gt; The ones that are include:<br>
&gt;&gt;  git<br>
&gt;&gt;  svn<br>
&gt;&gt;  cvs<br>
&gt;&gt;  hg<br>
&gt;&gt;  bzr<br>
&gt;&gt;<br>
&gt;&gt; Additional code needs to be added to both ctest and CDash in order to<br>
&gt;&gt; support new version control systems.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; HTH,<br>
&gt;&gt; David<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Nov 16, 2011 at 12:01 PM, David Cole &lt;<a href="mailto:david.cole@kitware.com">david.cole@kitware.com</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt; &gt; CDash is just a web app / server app. It does not do builds, it just<br>
&gt;&gt; &gt; collects information from clients that submit to it, and displays<br>
&gt;&gt; &gt; results.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Client machines can run ctest -S scripts to submit build/test results<br>
&gt;&gt; &gt; to a CDash dashboard.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Look at the notes attached to a typical CMake dashboard for an example<br>
&gt;&gt; &gt; of how a client machine must be set up to submit to the CDash server.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; For example, this one:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;  <a href="http://www.cdash.org/CDash/viewNotes.php?buildid=1730072" target="_blank">http://www.cdash.org/CDash/viewNotes.php?buildid=1730072</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On our machine, dashmacmini5.kitware, a script runs this command with<br>
&gt;&gt; &gt; the script shown at the above link:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;  ctest -S<br>
&gt;&gt; &gt; ${HOME}/Dashboards/DashboardScripts/dashmacmini5_cmake_clang.cmake<br>
&gt;&gt; &gt; -O ${HOME}/Dashboards/Logs/dashmacmini5_cmake_clang.log<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; HTH,<br>
&gt;&gt; &gt; David<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Wed, Nov 16, 2011 at 11:55 AM, Robert Dailey &lt;<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt; Seems like the web viewer link is optional, I created the project<br>
&gt;&gt; &gt;&gt; without<br>
&gt;&gt; &gt;&gt; it.<br>
&gt;&gt; &gt;&gt; However, I see the default build groups but how do I add a build? I<br>
&gt;&gt; &gt;&gt; suppose<br>
&gt;&gt; &gt;&gt; CDash needs to know how to do a checkout of source code from Perforce?<br>
&gt;&gt; &gt;&gt; I&#39;m<br>
&gt;&gt; &gt;&gt; really confused on what to do next...<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; ---------<br>
&gt;&gt; &gt;&gt; Robert Dailey<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Wed, Nov 16, 2011 at 10:40 AM, Robert Dailey &lt;<a href="mailto:rcdailey@gmail.com">rcdailey@gmail.com</a>&gt;<br>
&gt;&gt; &gt;&gt; wrote:<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Is it possible to use CDash with perforce as our SCM?<br>
&gt;&gt; &gt;&gt;&gt; During the CDash installation, it is asking me for a &quot;Repository<br>
&gt;&gt; &gt;&gt;&gt; ViewerURL&quot;, and from the drop down it doesn&#39;t show perforce as a valid<br>
&gt;&gt; &gt;&gt;&gt; item<br>
&gt;&gt; &gt;&gt;&gt; in the list. Can this step be skipped or is there some way to make<br>
&gt;&gt; &gt;&gt;&gt; perforce<br>
&gt;&gt; &gt;&gt;&gt; work with this? I believe perforce&#39;s web viewer is P4Web.<br>
&gt;&gt; &gt;&gt;&gt; Thanks.<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; ---------<br>
&gt;&gt; &gt;&gt;&gt; Robert Dailey<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; --<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Visit other Kitware open-source projects at<br>
&gt;&gt; &gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Please keep messages on-topic and check the CMake FAQ at:<br>
&gt;&gt; &gt;&gt; <a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt; &gt;&gt; <a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank">http://www.cmake.org/mailman/listinfo/cmake</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br></div>