public final class XpidlCompiler extends CommandLineCompiler
objDir, workDir
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID
Modifier and Type | Method and Description |
---|---|
protected void |
addImpliedArgs(Vector<String> args,
boolean debug,
boolean multithreaded,
boolean exceptions,
LinkType linkType,
Boolean rtti,
OptimizationEnum optimization)
Add arguments for debug, etc.
|
protected void |
addIncludes(String baseDirPath,
File[] includeDirs,
Vector<String> args,
Vector<String> relativeArgs,
StringBuffer includePathId)
Adds command line arguments for include paths.
|
protected void |
addWarningSwitch(Vector<String> args,
int level)
Add arguments for specified warning level.
|
Processor |
changeEnvironment(boolean newEnvironment,
org.apache.tools.ant.types.Environment env)
Change enviroment (deprecated).
|
void |
compile(CCTask task,
File outputDir,
String[] sourceFiles,
String[] args,
String[] endArgs,
boolean relentless,
CommandLineCompilerConfiguration config,
ProgressMonitor monitor)
Compiles an .idl file into the corresponding .h and .xpt files.
|
protected Parser |
createParser(File source)
Gets dependency parser.
|
protected int |
getArgumentCountPerInputFile()
Gets number of command line arguments per input file.
|
protected void |
getDefineSwitch(StringBuffer buffer,
String define,
String value)
Gets switch to define preprocessor macro.
|
protected File[] |
getEnvironmentIncludePath()
Gets standard include paths.
|
String |
getIdentifier()
Gets compiler identifier.
|
protected String |
getIncludeDirSwitch(String includeDir)
Gets include directory switch.
|
protected String |
getInputFileArgument(File outputDir,
String filename,
int index)
Gets input file arguments.
|
static XpidlCompiler |
getInstance()
Gets singleton instance of compiler.
|
Linker |
getLinker(LinkType type)
Gets linker associated with this type.
|
int |
getMaximumCommandLength()
Gets maximum length of command line.
|
protected int |
getMaximumInputFilesPerCommand()
Gets maximum number of input files processed per command.
|
String[] |
getOutputFileNames(String inputFile,
VersionInfo versionInfo)
Gets output file names.
|
protected int |
getTotalArgumentLengthForInputFile(File outputDir,
String inputFile)
Get total command line length due to the input file.
|
protected void |
getUndefineSwitch(StringBuffer buffer,
String define)
Gets switch to undefine preprocessor macro.
|
addIncludes, buildDefineArguments, createConfiguration, getCommand, getCommandWithPath, getIncludeDirSwitch, getLibtool, getLibtoolCompiler, runCommand, setCommand
canParse, createConfiguration, getBaseOutputName, getOutputSuffix, parseIncludes, resolveInclude, setObjDir, setWorkDir
bid, clone, getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, isWindows, toString
public static XpidlCompiler getInstance()
protected void addImpliedArgs(Vector<String> args, boolean debug, boolean multithreaded, boolean exceptions, LinkType linkType, Boolean rtti, OptimizationEnum optimization)
addImpliedArgs
in class CommandLineCompiler
args
- Vector command argument listdebug
- boolean build for debug if truemultithreaded
- boolean build for multithreading if trueexceptions
- boolean enable exceptions if truelinkType
- LinkType output and runtime typertti
- Boolean enable run-time type identification if trueoptimization
- OptimizationEnum optimizationprotected void addIncludes(String baseDirPath, File[] includeDirs, Vector<String> args, Vector<String> relativeArgs, StringBuffer includePathId)
baseDirPath
- String base directoryincludeDirs
- File[] include directoriesargs
- Vector command line argumentsrelativeArgs
- Vector arguments for configuration identificationincludePathId
- StringBuffer buffer for configuration identificationprotected void addWarningSwitch(Vector<String> args, int level)
addWarningSwitch
in class CommandLineCompiler
args
- Vector command line argumentslevel
- int warning level valuepublic Processor changeEnvironment(boolean newEnvironment, org.apache.tools.ant.types.Environment env)
changeEnvironment
in interface Processor
changeEnvironment
in class AbstractProcessor
newEnvironment
- boolean use new environment.env
- Environment environmentpublic void compile(CCTask task, File outputDir, String[] sourceFiles, String[] args, String[] endArgs, boolean relentless, CommandLineCompilerConfiguration config, ProgressMonitor monitor)
compile
in class CommandLineCompiler
task
- current cc taskoutputDir
- output directorysourceFiles
- source filesargs
- command line arguments that appear before input filesendArgs
- command line arguments that appear after input filesrelentless
- if true, do not stop at first compilation errorconfig
- compiler configurationmonitor
- progress monitorprotected Parser createParser(File source)
createParser
in class AbstractCompiler
source
- source fileprotected int getArgumentCountPerInputFile()
getArgumentCountPerInputFile
in class CommandLineCompiler
protected void getDefineSwitch(StringBuffer buffer, String define, String value)
getDefineSwitch
in class CommandLineCompiler
buffer
- StringBuffer command line argumentdefine
- String macro namevalue
- String macro value, may be null.protected File[] getEnvironmentIncludePath()
getEnvironmentIncludePath
in class CommandLineCompiler
public String getIdentifier()
getIdentifier
in interface Processor
getIdentifier
in class CommandLineCompiler
protected String getIncludeDirSwitch(String includeDir)
getIncludeDirSwitch
in class CommandLineCompiler
includeDir
- String include directoryprotected String getInputFileArgument(File outputDir, String filename, int index)
getInputFileArgument
in class CommandLineCompiler
outputDir
- File output directoryfilename
- String input file name.index
- int argument index,
0 to getNumberOfArgumentsPerInputFile() -1public Linker getLinker(LinkType type)
type
- LinkType linker, returns ld.public int getMaximumCommandLength()
getMaximumCommandLength
in class CommandLineCompiler
protected int getMaximumInputFilesPerCommand()
getMaximumInputFilesPerCommand
in class CommandLineCompiler
public String[] getOutputFileNames(String inputFile, VersionInfo versionInfo)
getOutputFileNames
in interface Processor
getOutputFileNames
in class CommandLineCompiler
inputFile
- String input file nameversionInfo
- version info, not used by this compiler.protected int getTotalArgumentLengthForInputFile(File outputDir, String inputFile)
getTotalArgumentLengthForInputFile
in class CommandLineCompiler
outputDir
- File output directoryinputFile
- String input fileprotected void getUndefineSwitch(StringBuffer buffer, String define)
getUndefineSwitch
in class CommandLineCompiler
buffer
- StringBuffer command line argumentdefine
- String macro nameCopyright © 2005-2016 NAR Maven Plugin developers. All Rights Reserved.