|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2
public class DefaultGCCDependencyCalculator2
This dependency calculator uses the GCC -MMD -MF -MP -MT options in order to generate .d files as a side effect of compilation. See bugzilla 108715 for the discussion of dependency management that led to the creation of this dependency calculator. Note also that this technique exhibits the failure modes discussed in comment #5. This dependency calculator uses the class DefaultGCCDependencyCalculator2Commands which implements the per-source command information
Field Summary |
---|
Fields inherited from interface org.eclipse.cdt.managedbuilder.makegen.IManagedDependencyGeneratorType |
---|
TYPE_BUILD_COMMANDS, TYPE_COMMAND, TYPE_CUSTOM, TYPE_EXTERNAL, TYPE_INDEXER, TYPE_NODEPENDENCIES, TYPE_NODEPS, TYPE_OLD_TYPE_LIMIT, TYPE_PREBUILD_COMMANDS |
Constructor Summary | |
---|---|
DefaultGCCDependencyCalculator2()
|
Method Summary | |
---|---|
int |
getCalculatorType()
Returns the type of dependency generator that is implemented. |
java.lang.String |
getDependencyFileExtension(IConfiguration buildContext,
ITool tool)
Returns the file extension used by dependency files created by this dependency generator. |
IManagedDependencyInfo |
getDependencySourceInfo(org.eclipse.core.runtime.IPath source,
IBuildObject buildContext,
ITool tool,
org.eclipse.core.runtime.IPath topBuildDirectory)
Returns an instance of IManagedDependencyInfo for this source file. |
IManagedDependencyInfo |
getDependencySourceInfo(org.eclipse.core.runtime.IPath source,
org.eclipse.core.resources.IResource resource,
IBuildObject buildContext,
ITool tool,
org.eclipse.core.runtime.IPath topBuildDirectory)
Returns an instance of IManagedDependencyInfo for this source file. |
boolean |
postProcessDependencyFile(org.eclipse.core.runtime.IPath dependencyFile,
IConfiguration buildContext,
ITool tool,
org.eclipse.core.runtime.IPath topBuildDirectory)
Called to allow the dependency calculator to post-process dependency files. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultGCCDependencyCalculator2()
Method Detail |
---|
public int getCalculatorType()
IManagedDependencyGeneratorType
getCalculatorType
in interface IManagedDependencyGeneratorType
public java.lang.String getDependencyFileExtension(IConfiguration buildContext, ITool tool)
IManagedDependencyGenerator2
getDependencyFileExtension
in interface IManagedDependencyGenerator2
buildContext
- The IConfiguration that contains the context of the buildtool
- The tool associated with the dependency generator.
public IManagedDependencyInfo getDependencySourceInfo(org.eclipse.core.runtime.IPath source, org.eclipse.core.resources.IResource resource, IBuildObject buildContext, ITool tool, org.eclipse.core.runtime.IPath topBuildDirectory)
IManagedDependencyGenerator2
getDependencySourceInfo
in interface IManagedDependencyGenerator2
source
- The source file for which dependencies should be calculated
The IPath can be either relative to the project directory, or absolute in the file system.resource
- The IResource corresponding to the source file, or null if the file
is not a workspace resource.buildContext
- The IConfiguration or IResourceConfiguration that
contains the context in which the source file will be builttool
- The tool associated with the source filetopBuildDirectory
- The top build directory of the configuration. This is
the working directory for the tool. This IPath is relative to the project directory.
public IManagedDependencyInfo getDependencySourceInfo(org.eclipse.core.runtime.IPath source, IBuildObject buildContext, ITool tool, org.eclipse.core.runtime.IPath topBuildDirectory)
IManagedDependencyGenerator2
getDependencySourceInfo
in interface IManagedDependencyGenerator2
source
- The source file for which dependencies should be calculated
The IPath can be either relative to the project directory, or absolute in the file system.buildContext
- The IConfiguration or IResourceConfiguration that
contains the context in which the source file will be builttool
- The tool associated with the source filetopBuildDirectory
- The top build directory of the configuration. This is
the working directory for the tool. This IPath is relative to the project directory.
public boolean postProcessDependencyFile(org.eclipse.core.runtime.IPath dependencyFile, IConfiguration buildContext, ITool tool, org.eclipse.core.runtime.IPath topBuildDirectory)
IManagedDependencyGenerator2
postProcessDependencyFile
in interface IManagedDependencyGenerator2
dependencyFile
- The dependency file
The IPath can be either relative to the top build directory, or absolute in the file system.buildContext
- The IConfiguration that contains the context of the buildtool
- The tool associated with the dependency generator. Note that this is
not necessarily the tool that created the dependency filetopBuildDirectory
- The top build directory of the project. This is
the working directory for the tool.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |