Class BorlandLinker
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.BorlandLinker
Adapter for the Borland(r) ilink32 linker
- Author:
- Curt Arnold
-
Field Summary
Fields inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidprotected voidprotected voidaddImpliedArgs(boolean debug, LinkType linkType, Vector args) protected voidaddIncremental(boolean incremental, Vector args) protected voidprotected voidvoidaddVersionFiles(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.getCommandFileSwitch(String commandFile) Retrieve an identifier that identifies the specific version of the compiler.static BorlandLinkerFile[]returns the library path for the linkerString[]getLibraryPatterns(String[] libnames, LibraryTypeEnum libType) Returns a set of filename patterns corresponding to library names.Gets the linker for the specified link type.intString[]getOutputFileSwitch(String outFile) protected StringgetStartupObject(LinkType linkType) booleanReturns true if the linker is case-sensitiveprotected String[]prepareArguments(CCTask task, String outputDir, String outputName, String[] sourceFiles, CommandLineLinkerConfiguration config) Prepares argument list for exec command.protected String[]prepareResponseFile(File outputFile, String[] args) Prepares argument list to execute the linker using a response file.Methods inherited from class net.sf.antcontrib.cpptasks.compiler.CommandLineLinker
addLibrarySets, createConfiguration, decorateLinkerOption, getCommand, getLibtoolLinker, getOutputFileNames, getOutputFileSwitch, link, prepareFilename, quoteFilename, runCommand, setCommandMethods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractLinker
bid, changeEnvironment, createConfiguration, getLibraryKeyMethods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
clone, getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, toString
-
Method Details
-
getInstance
-
addBase
- Specified by:
addBasein classCommandLineLinker
-
addFixed
- Specified by:
addFixedin classCommandLineLinker
-
addImpliedArgs
- Specified by:
addImpliedArgsin classCommandLineLinker
-
addIncremental
- Specified by:
addIncrementalin classCommandLineLinker
-
addMap
- Specified by:
addMapin classCommandLineLinker
-
addStack
- Specified by:
addStackin classCommandLineLinker
-
addEntry
- Specified by:
addEntryin classCommandLineLinker
-
getCommandFileSwitch
- Specified by:
getCommandFileSwitchin classCommandLineLinker
-
getIdentifier
Description copied from interface:ProcessorRetrieve an identifier that identifies the specific version of the compiler. Compilers with the same identifier should produce the same output files for the same input files and command line switches.- Specified by:
getIdentifierin interfaceProcessor- Overrides:
getIdentifierin classCommandLineLinker
-
getLibraryPath
Description copied from interface:Linkerreturns the library path for the linker -
getLibraryPatterns
Description copied from interface:LinkerReturns 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
-
getLinker
Description copied from interface:LinkerGets the linker for the specified link type.- Returns:
- appropriate linker or null, will return this if this linker can handle the specified link type
-
getMaximumCommandLength
public int getMaximumCommandLength()- Specified by:
getMaximumCommandLengthin classCommandLineLinker
-
getOutputFileSwitch
- Specified by:
getOutputFileSwitchin classCommandLineLinker
-
getStartupObject
- Overrides:
getStartupObjectin classCommandLineLinker
-
isCaseSensitive
public boolean isCaseSensitive()Description copied from interface:LinkerReturns true if the linker is case-sensitive -
prepareArguments
protected String[] prepareArguments(CCTask task, String outputDir, String outputName, String[] sourceFiles, CommandLineLinkerConfiguration config) Prepares argument list for exec command.- Overrides:
prepareArgumentsin classCommandLineLinker- Parameters:
task- compilation task.outputDir- linker output directoryoutputName- linker output namesourceFiles- linker input files (.obj, .o, .res)config- linker configuration- Returns:
- arguments for runTask
-
prepareResponseFile
Prepares argument list to execute the linker using a response file.- Overrides:
prepareResponseFilein classCommandLineLinker- Parameters:
outputFile- linker output fileargs- output of prepareArguments- Returns:
- arguments for runTask
- Throws:
IOException
-
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:
addVersionFilesin interfaceLinker- Overrides:
addVersionFilesin classAbstractLinker- Parameters:
versionInfo- version informationlinkType- link typeoutputFile- name of generated executableisDebug- true if debug buildobjDir- directory for generated filesmatcher- bidded fileset- Throws:
IOException
-