net.sf.antcontrib.cpptasks.os390
Class OS390Linker

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.os390.OS390Linker

public final class OS390Linker
extends CommandLineLinker

Adapter for the IBM (R) OS/390 (tm) Linker

Author:
Hiram Chirino (cojonudo14@hotmail.com)

Method Summary
protected  void addBase(long base, 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)
           
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 OS390Linker getDataSetInstance()
           
static OS390Linker getInstance()
           
 java.io.File[] getLibraryPath()
          returns the library path for the linker
 java.lang.String[] getLibraryPatterns(java.lang.String[] libnames)
          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 getOutputFileName(java.lang.String baseName)
          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
 
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.CommandLineLinker
createConfiguration, decorateLinkerOption, getCommand, getIdentifier, getLibtoolLinker, getStartupObject, prepareArguments, prepareFilename, prepareResponseFile, quoteFilename
 
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractLinker
bid, createConfiguration, getLibraryKey
 
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
getIdentifier, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getInstance

public static OS390Linker getInstance()

getDataSetInstance

public static OS390Linker getDataSetInstance()

getLibraryPath

public java.io.File[] getLibraryPath()
Description copied from interface: Linker
returns the library path for the linker

getOutputFileName

public java.lang.String getOutputFileName(java.lang.String baseName)
Description copied from interface: Processor
Output file name (no path components) corresponding to source file
Overrides:
getOutputFileName in class CommandLineLinker
Tags copied from interface: Processor
Parameters:
inputFile - input file
Returns:
output file name or null if no output file or name not determined by input file

addFixed

protected void addFixed(java.lang.Boolean fixed,
                        java.util.Vector args)
Overrides:
addFixed in class CommandLineLinker

addMap

protected void addMap(boolean map,
                      java.util.Vector args)
Overrides:
addMap in class CommandLineLinker

addBase

protected void addBase(long base,
                       java.util.Vector args)
Overrides:
addBase in class CommandLineLinker

addIncremental

protected void addIncremental(boolean incremental,
                              java.util.Vector args)
Overrides:
addIncremental in class CommandLineLinker

addStack

protected void addStack(int stack,
                        java.util.Vector args)
Overrides:
addStack in class CommandLineLinker

getLinker

public Linker getLinker(LinkType linkType)
Description copied from interface: Linker
Gets the linker for the specified link type.
Tags copied from interface: Linker
Returns:
appropriate linker or null, will return this if this linker can handle the specified link type

addImpliedArgs

protected void addImpliedArgs(boolean debug,
                              LinkType linkType,
                              java.util.Vector args)
Overrides:
addImpliedArgs in class CommandLineLinker

getCommandFileSwitch

public java.lang.String getCommandFileSwitch(java.lang.String commandFile)
Overrides:
getCommandFileSwitch in class CommandLineLinker

getOutputFileSwitch

protected java.lang.String[] getOutputFileSwitch(CCTask task,
                                                 java.lang.String outputFile)
Overrides:
getOutputFileSwitch in class CommandLineLinker

getOutputFileSwitch

public java.lang.String[] getOutputFileSwitch(java.lang.String outputFile)
Overrides:
getOutputFileSwitch in class CommandLineLinker

getMaximumCommandLength

public int getMaximumCommandLength()
Overrides:
getMaximumCommandLength in class CommandLineLinker

getLibraryPatterns

public java.lang.String[] getLibraryPatterns(java.lang.String[] libnames)
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.
Tags copied from interface: Linker
Parameters:
libnames - array of library names

isCaseSensitive

public boolean isCaseSensitive()
Description copied from interface: Linker
Returns true if the linker is case-sensitive

addLibrarySets

protected java.lang.String[] addLibrarySets(CCTask task,
                                            LibrarySet[] libsets,
                                            java.util.Vector preargs,
                                            java.util.Vector midargs,
                                            java.util.Vector endargs)
Overrides:
addLibrarySets in class CommandLineLinker

link

public void link(CCTask task,
                 java.io.File outputFile,
                 java.lang.String[] sourceFiles,
                 CommandLineLinkerConfiguration config)
          throws org.apache.tools.ant.BuildException
Description copied from class: CommandLineLinker
Performs a link using a command line linker
Overrides:
link in class CommandLineLinker

runCommand

protected int runCommand(CCTask task,
                         java.io.File workingDir,
                         java.lang.String[] cmdline)
                  throws org.apache.tools.ant.BuildException
Description copied from class: CommandLineLinker
This method is exposed so test classes can overload and test the arguments without actually spawning the compiler
Overrides:
runCommand in class CommandLineLinker


Copyright © 2001-2002 Ant-Contrib project. All Rights Reserved.