public abstract class AbstractCompiler extends AbstractProcessor implements Compiler
Modifier and Type | Field and Description |
---|---|
protected File |
objDir |
protected File |
workDir |
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID
Modifier | Constructor and Description |
---|---|
protected |
AbstractCompiler(String[] sourceExtensions,
String[] headerExtensions,
String outputSuffix) |
Modifier and Type | Method and Description |
---|---|
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'
|
protected abstract CompilerConfiguration |
createConfiguration(CCTask task,
LinkType linkType,
ProcessorDef[] baseConfigs,
CompilerDef specificConfig,
TargetDef targetPlatform,
VersionInfo versionInfo) |
ProcessorConfiguration |
createConfiguration(CCTask task,
LinkType linkType,
ProcessorDef[] baseConfigs,
ProcessorDef specificConfig,
TargetDef targetPlatform,
VersionInfo versionInfo)
Returns the compiler configuration for
|
protected abstract Parser |
createParser(File sourceFile) |
protected String |
getBaseOutputName(String inputFile) |
String[] |
getOutputFileNames(String inputFile,
VersionInfo versionInfo)
Output file name (no path components) corresponding to source file
|
String |
getOutputSuffix() |
DependencyInfo |
parseIncludes(CCTask task,
File source,
File[] includePath,
File[] sysIncludePath,
File[] envIncludePath,
File baseDir,
String includePathIdentifier)
Returns dependency info for the specified source file
|
protected boolean |
resolveInclude(String includeName,
File[] includePath,
Vector onThisPath) |
void |
setObjDir(File objDir) |
void |
setWorkDir(File workDir) |
bid, changeEnvironment, clone, getHeaderExtensions, getIdentifier, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, isWindows, toString
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
bid, changeEnvironment, getIdentifier, getLinker
protected boolean canParse(File sourceFile)
protected abstract CompilerConfiguration createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, CompilerDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)
public ProcessorConfiguration createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, ProcessorDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)
Processor
createConfiguration
in interface Processor
baseConfigs
- When specificConfig corresponds to a specificConfig
- A public String[] getOutputFileNames(String inputFile, VersionInfo versionInfo)
Processor
getOutputFileNames
in interface Processor
inputFile
- input filepublic final DependencyInfo parseIncludes(CCTask task, File source, File[] includePath, File[] sysIncludePath, File[] envIncludePath, File baseDir, String includePathIdentifier)
task
- task for any diagnostic outputsource
- file to be parsedincludePath
- include path to be used to resolve included filessysIncludePath
- sysinclude path from build file, files resolved using
sysInclude path will not participate in dependency analysisenvIncludePath
- include path from environment variable, files resolved with
envIncludePath will not participate in dependency analysisbaseDir
- used to produce relative paths in DependencyInfoincludePathIdentifier
- used to distinguish DependencyInfo's from different include
path settingsprotected boolean resolveInclude(String includeName, File[] includePath, Vector onThisPath)
public final String getOutputSuffix()
public void setWorkDir(File workDir)
public void setObjDir(File objDir)
Copyright © 2005-2016 NAR Maven Plugin developers. All Rights Reserved.