Next: , Previous: Regular modules, Up: modules



C.1.3 Ampersand modules

A module definition can refer to other modules by including &module in its definition.

     mname [ options ] &module...

Then getting the module creates a subdirectory for each such module, in the directory containing the module. For example, if modules contains

     ampermod &first-dir

then a checkout will create an ampermod directory which contains a directory called first-dir, which in turns contains all the directories and files which live there. For example, the command

     $ cvs co ampermod

will create the following files:

     ampermod/first-dir/file1
     ampermod/first-dir/file2
     ampermod/first-dir/sdir/sfile

There is one quirk/bug: the messages that cvs prints omit the ampermod, and thus do not correctly display the location to which it is checking out the files:

     $ cvs co ampermod
     cvs checkout: Updating first-dir
     U first-dir/file1
     U first-dir/file2
     cvs checkout: Updating first-dir/sdir
     U first-dir/sdir/sfile
     $

Do not rely on this buggy behavior; it may get fixed in a future release of cvs.