terp - the ANT Tasks
v1.3.337

com.codemesh.terp.ant.compiler.cpp
Class MultithreadedOption

java.lang.Object
  extended by com.codemesh.terp.ant.compiler.AbstractCompilerOption<C>
      extended by com.codemesh.terp.ant.compiler.BooleanCompilerOption<CppCompiler>
          extended by com.codemesh.terp.ant.compiler.cpp.MultithreadedOption
All Implemented Interfaces:
CompilerOption<CppCompiler>

public class MultithreadedOption
extends BooleanCompilerOption<CppCompiler>

The option type specifying the thread model. This option has some stand-alone consequences with a few compilers and it influences the impact of other compiler options with other compilers. For Sun Studio C++ and aCC, it adds the -mt switch if enabled. For all but the Microsoft C++ compiler, it defines _REENTRANT. For the Microsoft compiler, it influences the choice of C++ runtime library that is linked with. For MinGW, it adds the -mthreads option.

See Also:
RuntimeOption

Constructor Summary
MultithreadedOption()
           
 
Method Summary
 void addCommands(java.util.List<java.lang.String> commandList, CppCompiler compiler, CompilerPhase phase)
          Adds the compiler switches repreesnted by this option to the list of switches.
 boolean appliesTo(CppCompiler compiler, CompilerPhase phase)
          Returns true if this compiler option applies to the given compiler and compiler phase.
 
Methods inherited from class com.codemesh.terp.ant.compiler.BooleanCompilerOption
getValue, isEnabled, setValue
 
Methods inherited from class com.codemesh.terp.ant.compiler.AbstractCompilerOption
expand, expand, getIf, getProject, getUnless, quoteIfNecessary, satisfies, setIf, setProject, setUnless
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultithreadedOption

public MultithreadedOption()
Method Detail

addCommands

public void addCommands(java.util.List<java.lang.String> commandList,
                        CppCompiler compiler,
                        CompilerPhase phase)
Adds the compiler switches repreesnted by this option to the list of switches. Some compiler options may result in more than one switch being added to a compiler invocation. Other compiler options may result in different options being added in different phases (compilation vs. linking) of the build.

This method is called by the compiler repeatedly with different values for the compiler phase to account for these possibilities.

Parameters:
commandList - the list to which the compiler switches represented by this option (if any) are added.
compiler - the compiler for which we're doing this.
phase - the compiler phase in wihch we're doing this.

appliesTo

public boolean appliesTo(CppCompiler compiler,
                         CompilerPhase phase)
Returns true if this compiler option applies to the given compiler and compiler phase. Not every option has switches to contribute for every compiler and every compilation phase. This method allows a quick, inexpensive check to filter out potentially more expensive calls later on.

Parameters:
compiler - the compiler for which we're asking.
phase - the compiler phase we're executing.
Returns:

terp - the ANT Tasks
v1.3.337

Copyright © 2008-2016 by Codemesh, Inc. All Rights Reserved.