shape_depend(1) shapeTools RMS determine source-include dependencies


shape depend [VERSIONS=<selection_rule>] [variants]


The shape release management system requires for each node system a file named Dependencies, listing the source-derived dependencies of the node components. shape depend automatically determines these dependencies and creates an appropriate Dependencies file. The dependencies have the form of regular Makefile target-dependents lines without associated build action.

Note: shape depend only works for development of C programs. It additionally requires a C compiler supporting the -M (generate Makefile dependencies) option. If this is not the case in your development project, you must either rewrite the action associated with the depend target (in $(SHAPELIBPATH)/stdtargets) or maintain the Dependencies files manually.

The VERSIONS macro defines the version selection rule to be used. Default is most_recent. See shape_stdrul(7) or the $(SHAPELIBPATH)/stdrules file for other possible settings. You may also use self defined version selection rules as VERSIONS rule.

If your development environment contains variant definitions, in especially variant definitions that modify the list of source components to be used during a build operation, you may also need to specify one or more variants to be set. The project wide variant raster is defined in $(SHAPELIBPATH)/stdvar. Check this file and the default variant settings in your Shapefile before invoking shape depend.


Regeneration of the Dependencies file due to structural changes of the node system has to be triggered manually. Shape RMS doesn't recognize such changes.

Variant specific Dependencies files (necessary when simultaneousky developing structurally different variants) are not supported. In this case you have to run shape depend prior to each build action.