[ale] CVS 'modules' 'style' and 'HOWTO' question

John Mills jmmills at telocity.com
Mon Mar 4 16:29:48 EST 2002


Yes, Virginia -

You can define CVS modules on a 'per-file' basis, though it ain't pretty.

On Mon, 4 Mar 2002 hirsch at zapmedia.com wrote:

> John Mills writes:

>  > I want to define CVS 'modules' for my source tree so a user can check out
>  > source and header files associated with one function with only the needed
>  > files from the 'include/interface' directory, as well as its own full set
>  > of 'include/MODULE/*.h' and 'MODULE/*.[c|cpp]' files (and 'Makefile',
 
> It looks to me like you always have complete directories that need to
> be checked out, never select files from a directory.  If so, I think
> that you can use the "alias" function to associate multiple
> directories with a single modules.
 
> I don't know of a way to associate particular files with a module.

Thanks, Michael - Here's what I managed:

For individual files, I defined a phony module which had to include the
destination directory for the file, its directory of origin (though they
are the same in my case), and the file's name (without a leading path).

To handle the case below, I provided entries in $CVSROOT/CVSROOT/modules
like the following:

***********************'$CVSROOT/CVSROOT/modules'*********************
# blah blah

# a phony module to pull files from .../Interface/
mod1com -d prod/src/include/interface prod/src/include/interface mod01If.h
# collection of normal and phony modules to aggregate
Module01 -a mod1com prod/src/mod01 prod/src/include/mod01
# and so on for the second kit
mod2com -d prod/src/include/interface prod/src/include/interface mod02If.h
Module01 -a mod1com prod/src/mod02 prod/src/include/mod02

***********************************************************************

>  > SOURCE TREE:
>  > 
>  >  prod/
>  >    src/
>  >        mod01/
>  >           mod01A.cpp
>  >           mod01B.cpp
>  >            ...
>  >        mod02/
>  >           mod02A.cpp
>  >           mod02B.cpp
>  >            ...
>  >        include/
>  >           interface/
>  >             mod01If.h
>  >             mod02If.h
>  >              ...
>  >           mod01/
>  >             mod01A.h
>  >             mod01B.h
>  >              ...
>  >           mod02/
>  >             mod02A.h
>  >             mod02B.h
>  >              ...
>  >           ...

 - John Mills


---
This message has been sent through the ALE general discussion list.
See http://www.ale.org/mailing-lists.shtml for more info. Problems should be 
sent to listmaster at ale dot org.






More information about the Ale mailing list