public final class IccLinker extends CommandLineLinker
| Modifier and Type | Field and Description |
|---|---|
private static IccLinker |
datasetLinker |
private static IccLinker |
dllLinker |
private static IccLinker |
instance |
private boolean |
isADatasetLinker |
(package private) java.io.File |
outputFile |
private java.lang.String |
outputPrefix |
(package private) CCTask |
task |
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID| Modifier | Constructor and Description |
|---|---|
private |
IccLinker() |
private |
IccLinker(java.lang.String outputPrefix,
java.lang.String outputSuffix) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addBase(long base,
java.util.Vector args) |
protected void |
addEntry(java.lang.String entry,
java.util.Vector args) |
protected void |
addFixed(java.lang.Boolean fixed,
java.util.Vector args) |
protected void |
addImpliedArgs(boolean debug,
LinkType linkType,
java.util.Vector args) |
protected void |
addIncremental(boolean incremental,
java.util.Vector args) |
private static int |
addLibraryPatterns(java.lang.String[] libnames,
java.lang.StringBuffer buf,
java.lang.String prefix,
java.lang.String extension,
java.lang.String[] patterns,
int offset) |
protected java.lang.String[] |
addLibrarySets(CCTask task,
LibrarySet[] libsets,
java.util.Vector preargs,
java.util.Vector midargs,
java.util.Vector endargs) |
protected void |
addMap(boolean map,
java.util.Vector args) |
protected void |
addStack(int stack,
java.util.Vector args) |
java.lang.String |
getCommandFileSwitch(java.lang.String commandFile) |
static IccLinker |
getDataSetInstance() |
static IccLinker |
getInstance() |
java.io.File[] |
getLibraryPath()
returns the library path for the linker
|
java.lang.String[] |
getLibraryPatterns(java.lang.String[] libnames,
LibraryTypeEnum libType)
Returns a set of filename patterns corresponding to library names.
|
Linker |
getLinker(LinkType linkType)
Gets the linker for the specified link type.
|
int |
getMaximumCommandLength() |
java.lang.String[] |
getOutputFileNames(java.lang.String baseName,
VersionInfo versionInfo)
Output file name (no path components) corresponding to source file
|
protected java.lang.String[] |
getOutputFileSwitch(CCTask task,
java.lang.String outputFile) |
java.lang.String[] |
getOutputFileSwitch(java.lang.String outputFile) |
boolean |
isCaseSensitive()
Returns true if the linker is case-sensitive
|
void |
link(CCTask task,
java.io.File outputFile,
java.lang.String[] sourceFiles,
CommandLineLinkerConfiguration config)
Performs a link using a command line linker
|
protected int |
runCommand(CCTask task,
java.io.File workingDir,
java.lang.String[] cmdline)
This method is exposed so test classes can overload
and test the arguments without actually spawning the
compiler
|
createConfiguration, decorateLinkerOption, getCommand, getIdentifier, getLibtoolLinker, getStartupObject, prepareArguments, prepareFilename, prepareResponseFile, quoteFilename, setCommandaddVersionFiles, bid, changeEnvironment, createConfiguration, getLibraryKeyclone, getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, toStringprivate static final IccLinker datasetLinker
private static final IccLinker dllLinker
private static final IccLinker instance
private boolean isADatasetLinker
java.io.File outputFile
private java.lang.String outputPrefix
CCTask task
private IccLinker()
private IccLinker(java.lang.String outputPrefix,
java.lang.String outputSuffix)
public static IccLinker getDataSetInstance()
public static IccLinker getInstance()
protected void addBase(long base,
java.util.Vector args)
addBase in class CommandLineLinkerprotected void addFixed(java.lang.Boolean fixed,
java.util.Vector args)
addFixed in class CommandLineLinkerprotected void addImpliedArgs(boolean debug,
LinkType linkType,
java.util.Vector args)
addImpliedArgs in class CommandLineLinkerprotected void addIncremental(boolean incremental,
java.util.Vector args)
addIncremental in class CommandLineLinkerprotected java.lang.String[] addLibrarySets(CCTask task, LibrarySet[] libsets, java.util.Vector preargs, java.util.Vector midargs, java.util.Vector endargs)
addLibrarySets in class CommandLineLinkerprotected void addMap(boolean map,
java.util.Vector args)
addMap in class CommandLineLinkerprotected void addStack(int stack,
java.util.Vector args)
addStack in class CommandLineLinkerprotected void addEntry(java.lang.String entry,
java.util.Vector args)
addEntry in class CommandLineLinkerpublic java.lang.String getCommandFileSwitch(java.lang.String commandFile)
getCommandFileSwitch in class CommandLineLinkerpublic java.io.File[] getLibraryPath()
Linkerpublic java.lang.String[] getLibraryPatterns(java.lang.String[] libnames,
LibraryTypeEnum libType)
Linkerlibnames - array of library namesprivate static int addLibraryPatterns(java.lang.String[] libnames,
java.lang.StringBuffer buf,
java.lang.String prefix,
java.lang.String extension,
java.lang.String[] patterns,
int offset)
public Linker getLinker(LinkType linkType)
Linkerpublic int getMaximumCommandLength()
getMaximumCommandLength in class CommandLineLinkerprotected java.lang.String[] getOutputFileSwitch(CCTask task, java.lang.String outputFile)
getOutputFileSwitch in class CommandLineLinkerpublic java.lang.String[] getOutputFileSwitch(java.lang.String outputFile)
getOutputFileSwitch in class CommandLineLinkerpublic boolean isCaseSensitive()
Linkerpublic void link(CCTask task, java.io.File outputFile, java.lang.String[] sourceFiles, CommandLineLinkerConfiguration config) throws org.apache.tools.ant.BuildException
CommandLineLinkerlink in class CommandLineLinkerorg.apache.tools.ant.BuildExceptionprotected int runCommand(CCTask task, java.io.File workingDir, java.lang.String[] cmdline) throws org.apache.tools.ant.BuildException
CommandLineLinkerrunCommand in class CommandLineLinkerorg.apache.tools.ant.BuildExceptionpublic java.lang.String[] getOutputFileNames(java.lang.String baseName,
VersionInfo versionInfo)
ProcessorgetOutputFileNames in interface ProcessorgetOutputFileNames in class CommandLineLinkerbaseName - input file