Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
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.borland.BorlandLibrarian
public class BorlandLibrarian
extends CommandLineLinker
Field Summary |
Fields inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor | |
DEFAULT_DISCARD_BID , DEFAULT_PROCESS_BID |
Method Summary | |
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected String |
|
String |
|
static BorlandLibrarian | |
File[] |
|
String[] |
|
Linker | |
int | |
String[] |
|
boolean |
|
void |
|
protected String[] |
|
protected String[] |
|
protected String |
|
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.CommandLineLinker | |
addBase , addEntry , addFixed , addImpliedArgs , addIncremental , addLibrarySets , addMap , addStack , createConfiguration , decorateLinkerOption , getCommand , getCommandFileSwitch , getIdentifier , getLibtoolLinker , getMaximumCommandLength , getOutputFileNames , getOutputFileSwitch , getOutputFileSwitch , getStartupObject , link , prepareArguments , prepareFilename , prepareResponseFile , quoteFilename , runCommand , setCommand |
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractLinker | |
addVersionFiles , bid , changeEnvironment , createConfiguration , createConfiguration , getLibraryKey , getOutputFileNames |
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor | |
bid , changeEnvironment , clone , getHeaderExtensions , getIdentifier , getIdentifier , getOSArch , getOSName , getSourceExtensions , isDarwin , toString |
protected void addBase(long base, Vector args)
- Overrides:
- addBase in interface CommandLineLinker
protected void addEntry(String entry, Vector args)
- Overrides:
- addEntry in interface CommandLineLinker
protected void addFixed(Boolean fixed, Vector args)
- Overrides:
- addFixed in interface CommandLineLinker
protected void addImpliedArgs(boolean debug, LinkType linkType, Vector args)
- Overrides:
- addImpliedArgs in interface CommandLineLinker
protected void addIncremental(boolean incremental, Vector args)
- Overrides:
- addIncremental in interface CommandLineLinker
protected void addMap(boolean map, Vector args)
- Overrides:
- addMap in interface CommandLineLinker
protected void addStack(int stack, Vector args)
- Overrides:
- addStack in interface CommandLineLinker
protected String getCommandFileSwitch(String cmdFile)
- Overrides:
- getCommandFileSwitch in interface CommandLineLinker
public String getIdentifier()
Gets identifier for the linker. TLIB will lockup when attempting to get version information. Since the Librarian version isn't critical just return a stock response.
- Specified by:
- getIdentifier in interface Processor
- Overrides:
- getIdentifier in interface CommandLineLinker
public File[] getLibraryPath()
returns the library path for the linker
- Specified by:
- getLibraryPath in interface Linker
public String[] getLibraryPatterns(String[] libnames, LibraryTypeEnum libType)
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.
- Specified by:
- getLibraryPatterns in interface Linker
- Parameters:
libnames
- array of library names
public Linker getLinker(LinkType type)
Gets the linker for the specified link type.
- Returns:
- appropriate linker or null, will return this if this linker can handle the specified link type
public int getMaximumCommandLength()
- Overrides:
- getMaximumCommandLength in interface CommandLineLinker
public String[] getOutputFileSwitch(String outFile)
- Overrides:
- getOutputFileSwitch in interface CommandLineLinker
public boolean isCaseSensitive()
Returns true if the linker is case-sensitive
- Specified by:
- isCaseSensitive in interface Linker
public void link(CCTask task, File outputFile, String[] sourceFiles, CommandLineLinkerConfiguration config) throws BuildException
Builds a library
- Overrides:
- link in interface CommandLineLinker
protected String[] prepareArguments(CCTask task, String outputDir, String outputName, String[] sourceFiles, CommandLineLinkerConfiguration config)
Prepares argument list for exec command.
- Overrides:
- prepareArguments in interface CommandLineLinker
- Parameters:
sourceFiles
- linker input files (.obj, .o, .res)
- Returns:
- arguments for runTask
protected String[] prepareResponseFile(File outputFile, String[] args) throws IOException
Prepares argument list to execute the linker using a response file.
- Overrides:
- prepareResponseFile in interface CommandLineLinker
- Parameters:
outputFile
- linker output fileargs
- output of prepareArguments
- Returns:
- arguments for runTask
protected String quoteFilename(StringBuffer buf, String filename)
Encloses problematic file names within quotes.
- Overrides:
- quoteFilename in interface CommandLineLinker
- Parameters:
buf
- string bufferfilename
- source file name