Getting Started Documentation Glish Learn More Programming Contact Us
Version 1.9 Build 1556
News FAQ
Search Home


next up previous contents index
Next: gmake Up: System generation Previous: configure

Subsections



depend

Produce a dependency list for AIPS++ class implementation files.

Synopsis

depend -p package file1 [file2...]

Description

depend produces a list of dependencies of AIPS++ class implementation files in relation to their included header files. The dependency lists and timestamp files for each package/module are stored in $ARCHAUXD (AIPS++ system directories are described in §1.1.3). The depencency lists have names of the form package-module.list. The module name may be empty to indicate class implementation files which reside in the implement directory itself.

depend works for system compilations only, dependency analysis for programmer compilations is handled separately.

The implement makefile (p[*]) includes the dependency list associated with the package and module of the directory that it is processing. Thus, depend is normally invoked automatically by the implement makefile as part of the process of updating the files included by it. The list of files passed to depend in that case consists of all .cc files for the module and all .h files newer than the .time timestamp file produced by depend on its last execution.

Beware that invoking depend manually with an incomplete list of files could invalidate the dependency analysis.

The C++ header and implementation files may be specified in full or in brief. For example, in full:

   /aips++/code/aips/implement/Foo.cc
   /aips++/code/aips/implement/Foo.h
   /aips++/code/include/aips/Foo.h

   /aips++/code/aips/implement/module/Bar.cc
   /aips++/code/aips/implement/module/Bar.h
   /aips++/code/include/aips/module/Bar.h

(the last two are the same file) or in brief:

   Foo.cc
   aips/Foo.h

   module/Bar.cc
   aips/module/Bar.h

Note that the implementation files must correspond to the package-module combination specified via the -p option, but the header files may belong to any package and so must have a package and module name associated with them.

Options

-p package[-module]
The AIPS++ package-module combination. There is no default for the package name. An empty module name indicates the implement directory itself.

Notes

Diagnostics

Status return values
0: success
1: initialization error

Examples

depend should not be invoked manually (as explained above). It is used by the implement makefile (p[*]).

Files

$ARCHAUXD/package-module.list
...the dependency list for a package and module.

$ARCHAUXD/package-module.time
...timestamp file for the dependency list.

See also

AIPS++ system directories (§1.1.3).
makefiles (p[*]), GNU makefiles used to rebuild AIPS++.

Author

Original: 1993/01/25 by Mark Calabretta, ATNF


next up previous contents index
Next: gmake Up: System generation Previous: configure   Contents   Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc., Washington, D.C.

Return to AIPS++ Home Page
2006-10-15