Package net.sf.antcontrib.cpptasks
Class CompilerDef
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
net.sf.antcontrib.cpptasks.ProcessorDef
net.sf.antcontrib.cpptasks.CompilerDef
- All Implemented Interfaces:
Cloneable
A compiler definition. compiler elements may be placed either as children of
a cc element or the project element. A compiler element with an id attribute
may be referenced from compiler elements with refid or extends attributes.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Vector
The source file sets.private Boolean
private final Vector
private Boolean
private OptimizationEnum
private final Vector
private Boolean
private final Vector
private int
Fields inherited from class net.sf.antcontrib.cpptasks.ProcessorDef
newEnvironment
Fields inherited from class org.apache.tools.ant.types.DataType
checked, ref
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a compiler command-line arg.void
Adds a compiler command-line arg.void
Adds a defineset.Creates an include path.Specifies precompilation prototype file and exclusions.Creates a system include path.void
execute()
String[]
Returns the compiler-specific include path.private String[]
getActivePaths
(Vector paths) getActivePrecompile
(CompilerDef ccElement) String[]
final boolean
getExceptions
(CompilerDef[] defaultProviders, int index) boolean
getMultithreaded
(CompilerDef[] defaultProviders, int index) final OptimizationEnum
getOptimization
(CompilerDef[] defaultProviders, int index) Obtains the appropriate processor (compiler, linker)final Boolean
getRtti
(CompilerDef[] defaultProviders, int index) int
getWarnings
(CompilerDef[] defaultProviders, int index) void
setClassname
(String classname) Sets the default compiler adapter.void
setExceptions
(boolean exceptions) Enables or disables exception support.void
setMultithreaded
(boolean multithreaded) Enables or disables generation of multithreaded code.void
setName
(CompilerEnum name) Sets compiler type.void
setOptimize
(OptimizationEnum value) Sets optimization level.protected void
setProcessor
(Processor proc) Sets the processorvoid
setRtti
(boolean rtti) Enables or disables run-time type information.void
setWarnings
(WarningLevelEnum level) Enumerated attribute with the values "none", "severe", "default", "production", "diagnostic", and "aserror".Methods inherited from class net.sf.antcontrib.cpptasks.ProcessorDef
addConfiguredProcessorArg, addConfiguredProcessorParam, addEnv, addFileset, booleanValueOf, createConfiguration, getActiveProcessorArgs, getActiveProcessorParams, getDebug, getDefaultProviders, getExtends, getInherit, getLibtool, getProcessor, getRebuild, hasFileSets, isActive, setDebug, setDescription, setExtends, setId, setIf, setInherit, setLibtool, setNewenvironment, setRebuild, setRefid, setUnless, visitFiles
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes, toString
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setLocation, setProject
-
Field Details
-
defineSets
The source file sets. -
exceptions
-
rtti
-
includePaths
-
multithreaded
-
precompileDefs
-
sysIncludePaths
-
optimization
-
warnings
private int warnings
-
-
Constructor Details
-
CompilerDef
public CompilerDef()
-
-
Method Details
-
addConfiguredCompilerArg
Adds a compiler command-line arg. -
addConfiguredCompilerParam
Adds a compiler command-line arg. -
addConfiguredDefineset
Adds a defineset. -
createIncludePath
Creates an include path. -
createPrecompile
Specifies precompilation prototype file and exclusions.- Throws:
org.apache.tools.ant.BuildException
-
createSysIncludePath
Creates a system include path. Locations and timestamps of files located using the system include paths are not used in dependency analysis. Standard include locations should not be specified. The compiler adapters should recognized the settings from the appropriate environment variables or configuration files. -
execute
public void execute() throws org.apache.tools.ant.BuildException- Throws:
org.apache.tools.ant.BuildException
-
getActiveDefines
-
getActiveIncludePaths
Returns the compiler-specific include path. -
getActivePaths
-
getActivePrecompile
-
getActiveSysIncludePaths
-
getExceptions
-
getRtti
-
getOptimization
-
getMultithreaded
-
getProcessor
Description copied from class:ProcessorDef
Obtains the appropriate processor (compiler, linker)- Overrides:
getProcessor
in classProcessorDef
- Returns:
- processor
-
getWarnings
-
setClassname
Sets the default compiler adapter. Use the "name" attribute when the compiler is a supported compiler.- Overrides:
setClassname
in classProcessorDef
- Parameters:
classname
- fully qualified classname which implements CompilerAdapter- Throws:
org.apache.tools.ant.BuildException
-
setExceptions
public void setExceptions(boolean exceptions) Enables or disables exception support.- Parameters:
exceptions
- if true, exceptions are supported.
-
setRtti
public void setRtti(boolean rtti) Enables or disables run-time type information.- Parameters:
rtti
- if true, run-time type information is supported.
-
setMultithreaded
public void setMultithreaded(boolean multithreaded) Enables or disables generation of multithreaded code. Unless specified, multithreaded code generation is enabled.- Parameters:
multithreaded
- If true, generated code may be multithreaded.
-
setName
Sets compiler type.Supported compilers
gcc (default) GCC C++ compiler g++ GCC C++ compiler c++ GCC C++ compiler g77 GNU Fortran compiler msvc Microsoft Visual C++ bcc Borland C++ Compiler msrc Microsoft Resource Compiler brc Borland Resource Compiler df Compaq Visual Fortran Compiler midl Microsoft MIDL Compiler icl Intel C++ compiler for Windows (IA-32) ecl Intel C++ compiler for Windows (IA-64) icc Intel C++ compiler for Linux (IA-32) ecc Intel C++ compiler for Linux (IA-64) CC Sun ONE C++ compiler aCC HP aC++ C++ Compiler os390 OS390 C Compiler os400 Icc Compiler sunc89 Sun C89 C Compiler xlC VisualAge C Compiler uic Qt user interface compiler moc Qt meta-object compiler wcl OpenWatcom C/C++ compiler wfl OpenWatcom FORTRAN compiler - Throws:
org.apache.tools.ant.BuildException
-
setProcessor
Description copied from class:ProcessorDef
Sets the processor- Overrides:
setProcessor
in classProcessorDef
- Parameters:
proc
- processor, may not be null.- Throws:
org.apache.tools.ant.BuildException
- if ProcessorDef is a reference
-
setWarnings
Enumerated attribute with the values "none", "severe", "default", "production", "diagnostic", and "aserror". -
setOptimize
Sets optimization level.- Parameters:
value
- optimization level
-