net.sf.antcontrib.cpptasks

Class ProcessorDef

public abstract class ProcessorDef extends DataType

An abstract compiler/linker definition.

Author: Curt Arnold

Field Summary
protected booleannewEnvironment
Constructor Summary
protected ProcessorDef()
Constructor
Method Summary
protected voidaddConfiguredProcessorArg(CommandLineArgument arg)
Adds a or
protected voidaddConfiguredProcessorParam(ProcessorParam param)
Adds a or
voidaddEnv(Variable var)
Add an environment variable to the launched process.
voidaddFileset(ConditionalFileSet srcSet)
Adds a source file set.
protected static BooleanbooleanValueOf(boolean val)
Returns the equivalent Boolean object for the specified value Equivalent to Boolean.valueOf in JDK 1.4
ProcessorConfigurationcreateConfiguration(CCTask task, LinkType linkType, ProcessorDef baseDef, TargetDef targetPlatform, VersionInfo versionInfo)
Creates a configuration
CommandLineArgument[]getActiveProcessorArgs()
Prepares list of processor arguments ( compilerarg, linkerarg ) that are active for the current project settings.
ProcessorParam[]getActiveProcessorParams()
Prepares list of processor arguments ( compilerarg, linkerarg) that are active for the current project settings.
booleangetDebug(ProcessorDef[] defaultProviders, int index)
Gets boolean indicating debug build
protected ProcessorDef[]getDefaultProviders(ProcessorDef baseDef)
Creates an chain of objects which provide default values in descending order of significance.
ProcessorDefgetExtends()
Gets the ProcessorDef specified by the extends attribute
booleangetInherit()
Gets the inherit attribute.
booleangetLibtool()
protected ProcessorgetProcessor()
Obtains the appropriate processor (compiler, linker)
protected ProcessorgetProcessor(LinkType linkType)
Obtains the appropriate processor (compiler, linker) based on the LinkType.
booleangetRebuild(ProcessorDef[] defaultProviders, int index)
Gets a boolean value indicating whether all targets must be rebuilt regardless of dependency analysis.
booleanhasFileSets()
Returns true if the processor definition contains embedded file set definitions
booleanisActive()
Determine if this def should be used.
voidsetClassname(String className)
Sets the class name for the adapter.
voidsetDebug(boolean debug)
If set true, all targets will be built for debugging.
voidsetDescription(String desc)
Sets a description of the current data type.
voidsetExtends(Reference extendsRef)
Specifies that this element extends the element with id attribute with a matching value.
voidsetId(String id)
Sets an id that can be used to reference this element.
voidsetIf(String propName)
Sets the property name for the 'if' condition.
voidsetInherit(boolean inherit)
If inherit has the default value of true, defines, includes and other settings from the containing cc element will be inherited.
voidsetLibtool(boolean libtool)
Set use of libtool.
voidsetNewenvironment(boolean newenv)
Do not propagate old environment when new environment variables are specified.
protected voidsetProcessor(Processor processor)
Sets the processor
voidsetRebuild(boolean rebuild)
If set true, all targets will be unconditionally rebuilt.
voidsetRefid(Reference ref)
Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location.
voidsetUnless(String propName)
Set the property name for the 'unless' condition.
voidvisitFiles(FileVisitor visitor)
This method calls the FileVistor's visit function for every file in the processors definition

Field Detail

newEnvironment

protected boolean newEnvironment

Constructor Detail

ProcessorDef

protected ProcessorDef()
Constructor

Method Detail

addConfiguredProcessorArg

protected void addConfiguredProcessorArg(CommandLineArgument arg)
Adds a or

Parameters: arg command line argument, must not be null

Throws: NullPointerException if arg is null BuildException if this definition is a reference

addConfiguredProcessorParam

protected void addConfiguredProcessorParam(ProcessorParam param)
Adds a or

Parameters: param command line argument, must not be null

Throws: NullPointerException if arg is null BuildException if this definition is a reference

addEnv

public void addEnv(Variable var)
Add an environment variable to the launched process.

addFileset

public void addFileset(ConditionalFileSet srcSet)
Adds a source file set. Files in these set will be processed by this configuration and will not participate in the auction.

Parameters: srcSet Fileset identifying files that should be processed by this processor

Throws: BuildException if processor definition is a reference

booleanValueOf

protected static Boolean booleanValueOf(boolean val)
Returns the equivalent Boolean object for the specified value Equivalent to Boolean.valueOf in JDK 1.4

Parameters: val boolean value

Returns: Boolean.TRUE or Boolean.FALSE

createConfiguration

public ProcessorConfiguration createConfiguration(CCTask task, LinkType linkType, ProcessorDef baseDef, TargetDef targetPlatform, VersionInfo versionInfo)
Creates a configuration

Parameters: baseDef reference to def from containing cc element, may be null

Returns: configuration

getActiveProcessorArgs

public CommandLineArgument[] getActiveProcessorArgs()
Prepares list of processor arguments ( compilerarg, linkerarg ) that are active for the current project settings.

Returns: active compiler arguments

getActiveProcessorParams

public ProcessorParam[] getActiveProcessorParams()
Prepares list of processor arguments ( compilerarg, linkerarg) that are active for the current project settings.

Returns: active compiler arguments

getDebug

public boolean getDebug(ProcessorDef[] defaultProviders, int index)
Gets boolean indicating debug build

Parameters: defaultProviders array of ProcessorDef's in descending priority index index to first element in array that should be considered

Returns: if true, built targets for debugging

getDefaultProviders

protected final ProcessorDef[] getDefaultProviders(ProcessorDef baseDef)
Creates an chain of objects which provide default values in descending order of significance.

Parameters: baseDef corresponding ProcessorDef from CCTask, will be last element in array unless inherit = false

Returns: default provider array

getExtends

public ProcessorDef getExtends()
Gets the ProcessorDef specified by the extends attribute

Returns: Base ProcessorDef, null if extends is not specified

Throws: BuildException if reference is not same type object

getInherit

public final boolean getInherit()
Gets the inherit attribute. If the inherit value is true, this processor definition will inherit default values from the containing cc element.

Returns: if true then properties from the containing element are used.

getLibtool

public boolean getLibtool()

getProcessor

protected Processor getProcessor()
Obtains the appropriate processor (compiler, linker)

Returns: processor

getProcessor

protected Processor getProcessor(LinkType linkType)
Obtains the appropriate processor (compiler, linker) based on the LinkType.

Returns: processor

getRebuild

public boolean getRebuild(ProcessorDef[] defaultProviders, int index)
Gets a boolean value indicating whether all targets must be rebuilt regardless of dependency analysis.

Parameters: defaultProviders array of ProcessorDef's in descending priority index index to first element in array that should be considered

Returns: true if all targets should be rebuilt.

hasFileSets

public boolean hasFileSets()
Returns true if the processor definition contains embedded file set definitions

Returns: true if processor definition contains embedded filesets

isActive

public boolean isActive()
Determine if this def should be used. Definition will be active if the "if" variable (if specified) is set and the "unless" variable (if specified) is not set and that all reference or extended definitions are active

Returns: true if processor is active

Throws: IllegalStateException if not properly initialized BuildException if "if" or "unless" variable contains suspicious values "false" or "no" which indicates possible confusion

setClassname

public void setClassname(String className)
Sets the class name for the adapter. Use the "name" attribute when the tool is supported.

Parameters: className full class name

setDebug

public void setDebug(boolean debug)
If set true, all targets will be built for debugging.

Parameters: debug true if targets should be built for debugging

Throws: BuildException if processor definition is a reference

setDescription

public void setDescription(String desc)
Sets a description of the current data type.

setExtends

public void setExtends(Reference extendsRef)
Specifies that this element extends the element with id attribute with a matching value. The configuration will be constructed from the settings of this element, element referenced by extends, and the containing cc element.

Parameters: extendsRef Reference to the extended processor definition.

Throws: BuildException if this processor definition is a reference

setId

public void setId(String id)
Sets an id that can be used to reference this element.

Parameters: id id

setIf

public void setIf(String propName)
Sets the property name for the 'if' condition. The configuration will be ignored unless the property is defined. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") will throw an exception when evaluated.

Parameters: propName name of property

setInherit

public void setInherit(boolean inherit)
If inherit has the default value of true, defines, includes and other settings from the containing cc element will be inherited.

Parameters: inherit new value

Throws: BuildException if processor definition is a reference

setLibtool

public void setLibtool(boolean libtool)
Set use of libtool. If set to true, the "libtool " will be prepended to the command line

Parameters: libtool If true, use libtool.

setNewenvironment

public void setNewenvironment(boolean newenv)
Do not propagate old environment when new environment variables are specified.

setProcessor

protected void setProcessor(Processor processor)
Sets the processor

Parameters: processor processor, may not be null.

Throws: BuildException if ProcessorDef is a reference NullPointerException if processor is null

setRebuild

public void setRebuild(boolean rebuild)
If set true, all targets will be unconditionally rebuilt.

Parameters: rebuild if true, rebuild all targets.

Throws: BuildException if processor definition is a reference

setRefid

public void setRefid(Reference ref)
Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location. If specified, no other attributes or child content should be specified, other than "if", "unless" and "description".

Parameters: ref Reference to other element

setUnless

public void setUnless(String propName)
Set the property name for the 'unless' condition. If named property is set, the configuration will be ignored. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") of the behavior will throw an exception when evaluated.

Parameters: propName name of property

visitFiles

public void visitFiles(FileVisitor visitor)
This method calls the FileVistor's visit function for every file in the processors definition

Parameters: visitor object whose visit method is called for every file

Copyright ? 2001-2011 Ant-Contrib project. All Rights Reserved.