net.sf.antcontrib.cpptasks.devstudio
Class DevStudioCompatibleLinker
java.lang.Object
net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
net.sf.antcontrib.cpptasks.compiler.AbstractLinker
net.sf.antcontrib.cpptasks.compiler.CommandLineLinker
net.sf.antcontrib.cpptasks.devstudio.DevStudioCompatibleLinker
- All Implemented Interfaces:
- Cloneable, Linker, Processor
- Direct Known Subclasses:
- CompaqVisualFortranLinker, DevStudioLinker, IntelWin32Linker
public abstract class DevStudioCompatibleLinker
- extends CommandLineLinker
Abstract base class for linkers that try to mimic the command line arguments
for the Microsoft (r) Incremental Linker
- Author:
- Curt Arnold
Method Summary |
protected void |
addBase(long base,
Vector args)
|
protected void |
addEntry(String entry,
Vector args)
|
protected void |
addFixed(Boolean fixed,
Vector args)
|
protected void |
addImpliedArgs(boolean debug,
LinkType linkType,
Vector args)
|
protected void |
addIncremental(boolean incremental,
Vector args)
|
protected void |
addMap(boolean map,
Vector args)
|
protected void |
addStack(int stack,
Vector args)
|
void |
addVersionFiles(VersionInfo versionInfo,
LinkType linkType,
File outputFile,
boolean isDebug,
File objDir,
TargetMatcher matcher)
Adds source or object files to the bidded fileset to
support version information. |
String |
getCommandFileSwitch(String commandFile)
|
File[] |
getLibraryPath()
returns the library path for the linker |
String[] |
getLibraryPatterns(String[] libnames,
LibraryTypeEnum libType)
Returns a set of filename patterns corresponding to library names. |
int |
getMaximumCommandLength()
|
String[] |
getOutputFileSwitch(String outputFile)
|
boolean |
isCaseSensitive()
Returns true if the linker is case-sensitive |
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.CommandLineLinker |
addLibrarySets, createConfiguration, decorateLinkerOption, getCommand, getIdentifier, getLibtoolLinker, getOutputFileNames, getOutputFileSwitch, getStartupObject, link, prepareArguments, prepareFilename, prepareResponseFile, quoteFilename, runCommand, setCommand |
Methods inherited from interface net.sf.antcontrib.cpptasks.compiler.Linker |
getLinker |
DevStudioCompatibleLinker
public DevStudioCompatibleLinker(String command,
String identifierArg,
String outputSuffix)
addBase
protected void addBase(long base,
Vector args)
- Specified by:
addBase
in class CommandLineLinker
addFixed
protected void addFixed(Boolean fixed,
Vector args)
- Specified by:
addFixed
in class CommandLineLinker
addImpliedArgs
protected void addImpliedArgs(boolean debug,
LinkType linkType,
Vector args)
- Specified by:
addImpliedArgs
in class CommandLineLinker
addIncremental
protected void addIncremental(boolean incremental,
Vector args)
- Specified by:
addIncremental
in class CommandLineLinker
addMap
protected void addMap(boolean map,
Vector args)
- Specified by:
addMap
in class CommandLineLinker
addStack
protected void addStack(int stack,
Vector args)
- Specified by:
addStack
in class CommandLineLinker
addEntry
protected void addEntry(String entry,
Vector args)
- Specified by:
addEntry
in class CommandLineLinker
getCommandFileSwitch
public String getCommandFileSwitch(String commandFile)
- Specified by:
getCommandFileSwitch
in class CommandLineLinker
getLibraryPath
public File[] getLibraryPath()
- Description copied from interface:
Linker
- returns the library path for the linker
getLibraryPatterns
public String[] getLibraryPatterns(String[] libnames,
LibraryTypeEnum libType)
- Description copied from interface:
Linker
- Returns a set of filename patterns corresponding to library names.
For example, "advapi32" would be expanded to "advapi32.dll" by
DevStudioLinker and to "libadvapi32.a" and "libadvapi32.so" by
GccLinker.
- Parameters:
libnames
- array of library names
getMaximumCommandLength
public int getMaximumCommandLength()
- Specified by:
getMaximumCommandLength
in class CommandLineLinker
getOutputFileSwitch
public String[] getOutputFileSwitch(String outputFile)
- Specified by:
getOutputFileSwitch
in class CommandLineLinker
isCaseSensitive
public boolean isCaseSensitive()
- Description copied from interface:
Linker
- Returns true if the linker is case-sensitive
addVersionFiles
public void addVersionFiles(VersionInfo versionInfo,
LinkType linkType,
File outputFile,
boolean isDebug,
File objDir,
TargetMatcher matcher)
throws IOException
- Adds source or object files to the bidded fileset to
support version information.
- Specified by:
addVersionFiles
in interface Linker
- Overrides:
addVersionFiles
in class AbstractLinker
- Parameters:
versionInfo
- version informationlinkType
- link typeisDebug
- true if debug buildoutputFile
- name of generated executableobjDir
- directory for generated filesmatcher
- bidded fileset
- Throws:
IOException
Copyright © 2001-2011 Ant-Contrib Project. All Rights Reserved.