public class GccLinker extends AbstractLdLinker
Modifier and Type | Field and Description |
---|---|
private static java.lang.String[] |
discardFiles |
private static GccLinker |
dllLinker |
private static GccLinker |
instance |
private java.io.File[] |
libDirs |
private static java.lang.String[] |
libtoolObjFiles |
private static java.lang.String[] |
linkerOptions |
private static GccLinker |
machBundleLinker |
private static GccLinker |
machDllLinker |
private static java.lang.String[] |
objFiles |
DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID
Modifier | Constructor and Description |
---|---|
protected |
GccLinker(java.lang.String command,
java.lang.String[] extensions,
java.lang.String[] ignoredExtensions,
java.lang.String outputPrefix,
java.lang.String outputSuffix,
boolean isLibtool,
GccLinker libtoolLinker) |
Modifier and Type | Method and Description |
---|---|
protected void |
addImpliedArgs(boolean debug,
LinkType linkType,
java.util.Vector args) |
protected java.lang.Object |
clone() |
java.lang.String |
decorateLinkerOption(java.lang.StringBuffer buf,
java.lang.String arg)
Allows drived linker to decorate linker option.
|
static GccLinker |
getInstance() |
java.io.File[] |
getLibraryPath()
Returns library path.
|
Linker |
getLinker(LinkType type)
Gets the linker for the specified link type.
|
void |
link(CCTask task,
java.io.File outputFile,
java.lang.String[] sourceFiles,
CommandLineLinkerConfiguration config)
Performs a link using a command line linker
|
private void |
superlink(CCTask task,
java.io.File outputFile,
java.lang.String[] sourceFiles,
CommandLineLinkerConfiguration config) |
addBase, addEntry, addFixed, addIncremental, addLibraryPatterns, addLibrarySets, addMap, addStack, getCommandFileSwitch, getDynamicLibFlag, getEnvironmentIncludePath, getLibraryKey, getLibraryPatterns, getMaximumCommandLength, getOutputFileNames, getOutputFileSwitch, getStaticLibFlag, isCaseSensitive, isHPUX, prepareArguments
createConfiguration, getCommand, getIdentifier, getLibtoolLinker, getOutputFileSwitch, getStartupObject, prepareFilename, prepareResponseFile, quoteFilename, runCommand, setCommand
addVersionFiles, bid, changeEnvironment, createConfiguration
getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, toString
private static final java.lang.String[] discardFiles
private static final java.lang.String[] objFiles
private static final GccLinker dllLinker
private static final GccLinker instance
private static final java.lang.String[] libtoolObjFiles
private static java.lang.String[] linkerOptions
private static final GccLinker machBundleLinker
private static final GccLinker machDllLinker
private java.io.File[] libDirs
protected GccLinker(java.lang.String command, java.lang.String[] extensions, java.lang.String[] ignoredExtensions, java.lang.String outputPrefix, java.lang.String outputSuffix, boolean isLibtool, GccLinker libtoolLinker)
public static GccLinker getInstance()
protected void addImpliedArgs(boolean debug, LinkType linkType, java.util.Vector args)
addImpliedArgs
in class AbstractLdLinker
protected java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class AbstractProcessor
java.lang.CloneNotSupportedException
public java.lang.String decorateLinkerOption(java.lang.StringBuffer buf, java.lang.String arg)
decorateLinkerOption
in class CommandLineLinker
buf
- buffer that may be used and abused in the decoration process,
must not be null.arg
- linker argumentpublic java.io.File[] getLibraryPath()
getLibraryPath
in interface Linker
getLibraryPath
in class AbstractLdLinker
public Linker getLinker(LinkType type)
Linker
public void link(CCTask task, java.io.File outputFile, java.lang.String[] sourceFiles, CommandLineLinkerConfiguration config) throws org.apache.tools.ant.BuildException
CommandLineLinker
link
in class CommandLineLinker
org.apache.tools.ant.BuildException
private void superlink(CCTask task, java.io.File outputFile, java.lang.String[] sourceFiles, CommandLineLinkerConfiguration config) throws org.apache.tools.ant.BuildException
org.apache.tools.ant.BuildException