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.
Method Summary |
int |
getCalculatorType()
Returns the type of dependency generator that is implemented. |
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
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