[CMake] CTEST_UPDATE_COMMAND vs sparse working copy (was Re: continuous integration with CMake)

Tyler Roscoe tyler at cryptio.net
Wed Feb 17 17:49:20 EST 2010


On Wed, Feb 17, 2010 at 03:16:13PM -0700, Clinton Stimpson wrote:
> Have you tried setting CTEST_UPDATE_OPTIONS to contain the extra arguments for 
> updating the way you want?

This affects the svn update command itself (which is working fine
without further adjustment) but does not appear to affect the later svn
log and svn status calls which (I assume) are what CTest parses to
generate the Update log.

Worse news for me: I don't think I can run "svn log projectA/ projectB/"
to try to only get logs for those areas I care about because:

    svn: When specifying working copy paths, only one target may be given

(I tried with URLs instead of working copy paths but that didn't work
either.)

Thanks,
tyler

> On Wednesday 17 February 2010 02:45:17 pm Tyler Roscoe wrote:
> > I've got a preliminary Continuous Integration system up and running
> > based on the scripts Bill pointed me to. Thanks Bill!
> >
> > I have some questions about this setup. Let me know if you think I would
> > get better responses on the CDash list. I'm going to break up these
> > questions into separate posts to hopefully make ensuing discussion
> > easier to follow in the mailing list archives.
> >
> > - CTEST_UPDATE_COMMAND vs sparse working copy
> >
> > For our project, we use Subversion and sparse working copies
> > (http://svnbook.red-bean.com/nightly/en/svn.advanced.sparsedirs.html).
> >
> > A quick summary: Our repo looks like this:
> >
> > common/
> > projectA/
> > projectB/
> > projectC/
> > legacystuff/
> >
> > We use sparse working copies so that we can check out common/ and
> > projectA/ without checking out the unrelated projectB/, projectC/, and
> > legacystuff/ directories. Running svn update in a working copy
> > configured this way only pulls changes in the desired modules (common/
> > and projectA/).
> >
> > The Update phase of CTest doesn't understand sparse directories so it
> > reports all changes and kicks off a build for all commits to the repo
> > instead of just the commits in the directories I actually have checked
> > out in my working copy.
> >
> > Does anyone else use sparse directories with CTest/CDash? Ideas on how
> > to make it work? Do I need to write a replacement for "svn update" that
> > only reports changes I care about? Do I need to hack
> > CTest/cmCTestSVN.cxx to add support for a sparse directory mode?


More information about the CMake mailing list