public final class XpidlCompiler extends CommandLineCompiler
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID
Modifier and Type | Method and Description |
---|---|
protected void |
addImpliedArgs(Vector 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 args,
Vector relativeArgs,
StringBuffer includePathId)
Adds command line arguments for include paths.
|
protected void |
addWarningSwitch(Vector 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, parseIncludes, resolveInclude
bid, clone, getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, isWindows, toString
public static XpidlCompiler getInstance()
protected void addImpliedArgs(Vector 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 addWarningSwitch(Vector 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 environmentprotected Parser createParser(File source)
createParser
in class AbstractCompiler
source
- source fileprotected int getArgumentCountPerInputFile()
getArgumentCountPerInputFile
in class CommandLineCompiler
public String[] getOutputFileNames(String inputFile, VersionInfo versionInfo)
getOutputFileNames
in interface Processor
getOutputFileNames
in class AbstractCompiler
inputFile
- String input file nameversionInfo
- version info, not used by this compiler.protected 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 int getMaximumCommandLength()
getMaximumCommandLength
in class CommandLineCompiler
protected int getMaximumInputFilesPerCommand()
getMaximumInputFilesPerCommand
in class CommandLineCompiler
protected void addIncludes(String baseDirPath, File[] includeDirs, Vector args, Vector relativeArgs, StringBuffer includePathId)
baseDirPath
- String base directoryincludeDirs
- File[] include directoriesargs
- Vector command line argumentsrelativeArgs
- Vector arguments for configuration identificationincludePathId
- StringBuffer buffer for configuration identificationprotected String getIncludeDirSwitch(String includeDir)
getIncludeDirSwitch
in class CommandLineCompiler
includeDir
- String include directoryprotected 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 void getUndefineSwitch(StringBuffer buffer, String define)
getUndefineSwitch
in class CommandLineCompiler
buffer
- StringBuffer command line argumentdefine
- String macro nameprotected File[] getEnvironmentIncludePath()
getEnvironmentIncludePath
in class CommandLineCompiler
public Linker getLinker(LinkType type)
type
- LinkType linker, returns ld.public 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 int getTotalArgumentLengthForInputFile(File outputDir, String inputFile)
getTotalArgumentLengthForInputFile
in class CommandLineCompiler
outputDir
- File output directoryinputFile
- String input filepublic String getIdentifier()
getIdentifier
in interface Processor
getIdentifier
in class CommandLineCompiler
Copyright © 2002–2016 The Apache Software Foundation. All rights reserved.