net.sf.antcontrib.cpptasks.compiler

Class AbstractCompiler

public abstract class AbstractCompiler extends AbstractProcessor implements Compiler

An abstract compiler implementation.

Author: Adam Murdoch Curt Arnold

Constructor Summary
protected AbstractCompiler(String[] sourceExtensions, String[] headerExtensions, String outputSuffix)
Method Summary
protected booleancanParse(File sourceFile)
Checks file name to see if parse should be attempted Default implementation returns false for files with extensions '.dll', 'tlb', '.res'
protected abstract CompilerConfigurationcreateConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, CompilerDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)
ProcessorConfigurationcreateConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, ProcessorDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)
protected abstract ParsercreateParser(File sourceFile)
protected StringgetBaseOutputName(String inputFile)
String[]getOutputFileNames(String inputFile, VersionInfo versionInfo)
DependencyInfoparseIncludes(CCTask task, File source, File[] includePath, File[] sysIncludePath, File[] envIncludePath, File baseDir, String includePathIdentifier)
Returns dependency info for the specified source file
protected booleanresolveInclude(String includeName, File[] includePath, Vector onThisPath)

Constructor Detail

AbstractCompiler

protected AbstractCompiler(String[] sourceExtensions, String[] headerExtensions, String outputSuffix)

Method Detail

canParse

protected boolean canParse(File sourceFile)
Checks file name to see if parse should be attempted Default implementation returns false for files with extensions '.dll', 'tlb', '.res'

createConfiguration

protected abstract CompilerConfiguration createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, CompilerDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)

createConfiguration

public ProcessorConfiguration createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, ProcessorDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)

createParser

protected abstract Parser createParser(File sourceFile)

getBaseOutputName

protected String getBaseOutputName(String inputFile)

getOutputFileNames

public String[] getOutputFileNames(String inputFile, VersionInfo versionInfo)

parseIncludes

public final DependencyInfo parseIncludes(CCTask task, File source, File[] includePath, File[] sysIncludePath, File[] envIncludePath, File baseDir, String includePathIdentifier)
Returns dependency info for the specified source file

Parameters: task task for any diagnostic output source file to be parsed includePath include path to be used to resolve included files sysIncludePath sysinclude path from build file, files resolved using sysInclude path will not participate in dependency analysis envIncludePath include path from environment variable, files resolved with envIncludePath will not participate in dependency analysis baseDir used to produce relative paths in DependencyInfo includePathIdentifier used to distinguish DependencyInfo's from different include path settings

resolveInclude

protected boolean resolveInclude(String includeName, File[] includePath, Vector onThisPath)
Copyright ? 2001-2011 Ant-Contrib project. All Rights Reserved.