Hi, Attached is a patch to add the support for mercurial (hg) to ctest (to apply to CMake 2.6.2 release or 2.6.0).
The first step consisted in finding the equivalent mercurial command and the correct way to parse the output (to enable the Coutinuous). Here are some of the points which may need a discussion: - I am still undecided about the equivalent of the 'svn cleanup' between 'hg purge -f' which might remove some files and 'hg verify' which seems a bit too low level. - Not too sure either what is the use for use_status. But nightly and continuous are working fine using the XML parsing. - This does not handle yet the merge or conflict that can arise. The second step is the strategy to get the correct nightly version. As the history is not linear, there is no simple way to know which version should be tested from the date only. I assumed that the nightly version should be common to the all dashboard (for comparison) and that the nightly version identification should be provided by the dashboard. Now, the location of the information is indicated by the new variable CTEST_NIGHTLY_IDENT_LOCATION which point to a web address such as http://www.orfeo-toolbox.org/nightly/libNightlyNumber (this is a simple file containing the identification of the version to be tested). Ideally, this could be added to CDash which could store all the nightly identification in its database and provide them on demand through a php script. The corresponding test is added in CTestTest3. However, the test repository need to be created. It could be done using the following steps: - Copy a version of kwsys in a directory and go in. - hg init - hg add . - hg commit -m "Initial commit" Retrieve this version identification and put it in the CTestTest3 file. Few version need to be added to make things interesting: - modify a file - hg commit -m "First modification" - another one - hg commit -m "Second modification" The repository could be online or local, it will behave the same way. I believe that the same process could easily be adapted to git and bzr, the main task is to find the equivalent command and the right way to parse the output. Regards, Emmanuel
patch-mercurial.patch.gz
Description: GNU Zip compressed data
_______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake