org.eclipse.cdt.managedbuilder.makegen
Interface IManagedDependencyGeneratorType

All Known Subinterfaces:
IManagedDependencyGenerator, IManagedDependencyGenerator2
All Known Implementing Classes:
DefaultGCCDependencyCalculator, DefaultGCCDependencyCalculator2, DefaultGCCDependencyCalculator3, DefaultGCCDependencyCalculatorPreBuild, DefaultIndexerDependencyCalculator, DefaultNoDependencyCalculator, PDOMDependencyGenerator

public interface IManagedDependencyGeneratorType

Since:
3.1 IManagedDependencyGenerator (deprecated) and IManagedDependencyGenerator2 extend this interface. Discussion of Dependency Calculation: There are two major, and multiple minor, modes of dependency calculation supported by the MBS. The major modes are: 1. The build file generator invokes tool integrator provided methods that calculate all dependencies using whatever method the tool integrator wants. The build file generator then adds the dependencies to the build file using the appropriate build file syntax. This is a TYPE_CUSTOM dependency calculator as defined below. See the IManagedDependencyCalculator interface for more information. 2. The build file generator and the tool-chain cooperate in creating and using separate "dependency" files. In this case, dependency calculation is done at "build time", rather than at "build file generation time" as in mode #1. This currently supports the GNU concept of using .d files in GNU make. This is either a TYPE_BUILD_COMMANDS dependency calculator or a TYPE_PREBUILD_COMMANDS dependency calculator as defined below. See the IManagedDependencyCommands and IManagedDependencyPreBuild interfaces for more information.

Field Summary
static int TYPE_BUILD_COMMANDS
           
static int TYPE_COMMAND
           
static int TYPE_CUSTOM
           
static int TYPE_EXTERNAL
           
static int TYPE_INDEXER
           
static int TYPE_NODEPENDENCIES
           
static int TYPE_NODEPS
          Constants returned by getCalculatorType
static int TYPE_OLD_TYPE_LIMIT
           
static int TYPE_PREBUILD_COMMANDS
           
 
Method Summary
 int getCalculatorType()
          Returns the type of dependency generator that is implemented.
 

Field Detail

TYPE_NODEPS

static final int TYPE_NODEPS
Constants returned by getCalculatorType

See Also:
Constant Field Values

TYPE_COMMAND

static final int TYPE_COMMAND
See Also:
Constant Field Values

TYPE_INDEXER

static final int TYPE_INDEXER
See Also:
Constant Field Values

TYPE_EXTERNAL

static final int TYPE_EXTERNAL
See Also:
Constant Field Values

TYPE_OLD_TYPE_LIMIT

static final int TYPE_OLD_TYPE_LIMIT
See Also:
Constant Field Values

TYPE_NODEPENDENCIES

static final int TYPE_NODEPENDENCIES
See Also:
Constant Field Values

TYPE_BUILD_COMMANDS

static final int TYPE_BUILD_COMMANDS
See Also:
Constant Field Values

TYPE_PREBUILD_COMMANDS

static final int TYPE_PREBUILD_COMMANDS
See Also:
Constant Field Values

TYPE_CUSTOM

static final int TYPE_CUSTOM
See Also:
Constant Field Values
Method Detail

getCalculatorType

int getCalculatorType()
Returns the type of dependency generator that is implemented. TYPE_NODEPENDENCIES indicates that no dependency generator is supplied or needed. TYPE_CUSTOM indicates that a custom, "build file generation time" dependency calculator is implemented. Note that the dependency calculator will be called when the makefile is generated, and for every source file that is built by this tool in the build file, not just for those that have changed since the last build file generation. TYPE_BUILD_COMMANDS indicates that command lines or options will be returned to be used to calculate dependencies. These commands/options are added to the build file to perform dependency calculation at "build time". This currently supports compilers/tools that generate .d files either as a side-effect of tool invocation, or as a separate step that is invoked immediately before or after the tool invocation. TYPE_PREBUILD_COMMANDS indicates that a separate build step is invoked, prior to the the normal build steps, to update the dependency information. These commands are added to the build file to perform dependency calculation at "build time". Note that this step will be invoked every time a build is done in order to determine if dependency files need to be re-generated.

Returns:
int