Interface Linker
-
- All Superinterfaces:
Processor
- All Known Implementing Classes:
AbstractArLibrarian
,AbstractLdLinker
,AbstractLinker
,aCCLinker
,ADSLibrarian
,ADSLinker
,BorlandLibrarian
,BorlandLinker
,C89Linker
,ClxxLibrarian
,ClxxLinker
,CommandLineLinker
,CompaqVisualFortranLibrarian
,CompaqVisualFortranLinker
,DevStudioCompatibleLibrarian
,DevStudioCompatibleLinker
,DevStudioLibrarian
,DevStudioLinker
,ForteCCLinker
,GccLibrarian
,GccLibrarian
,GccLibrarian
,GccLinker
,GccLinker
,GccLinker
,GppLinker
,GppLinker
,GppLinker
,IccLinker
,IntelLinux32Linker
,IntelLinux64Linker
,IntelWin32Librarian
,IntelWin32Linker
,LdLinker
,LdLinker
,LdLinker
,OpenWatcomCLinker
,OpenWatcomFortranLinker
,OpenWatcomLibrarian
,OpenWatcomLinker
,OS390Linker
,VisualAgeLinker
public interface Linker extends Processor
A linker for executables, and static and dynamic libraries.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addVersionFiles(VersionInfo versionInfo, LinkType linkType, java.io.File outputFile, boolean isDebug, java.io.File objDir, TargetMatcher matcher)
Adds source or object files to the bidded fileset to support version information.java.lang.String
getLibraryKey(java.io.File libname)
Extracts the significant part of a library name to ensure there aren't collisionsjava.io.File[]
getLibraryPath()
returns the library path for the linkerjava.lang.String[]
getLibraryPatterns(java.lang.String[] libnames, LibraryTypeEnum libraryType)
Returns a set of filename patterns corresponding to library names.Linker
getLinker(LinkType linkType)
Gets the linker for the specified link type.boolean
isCaseSensitive()
Returns true if the linker is case-sensitive-
Methods inherited from interface net.sf.antcontrib.cpptasks.compiler.Processor
bid, changeEnvironment, createConfiguration, getIdentifier, getOutputFileNames
-
-
-
-
Method Detail
-
getLibraryKey
java.lang.String getLibraryKey(java.io.File libname)
Extracts the significant part of a library name to ensure there aren't collisions
-
getLibraryPath
java.io.File[] getLibraryPath()
returns the library path for the linker
-
getLibraryPatterns
java.lang.String[] getLibraryPatterns(java.lang.String[] libnames, LibraryTypeEnum libraryType)
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.- Parameters:
libnames
- array of library names
-
isCaseSensitive
boolean isCaseSensitive()
Returns true if the linker is case-sensitive
-
addVersionFiles
void addVersionFiles(VersionInfo versionInfo, LinkType linkType, java.io.File outputFile, boolean isDebug, java.io.File objDir, TargetMatcher matcher) throws java.io.IOException
Adds source or object files to the bidded fileset to support version information.- Parameters:
versionInfo
- version informationlinkType
- link typeisDebug
- true if debug buildoutputFile
- name of generated executableobjDir
- directory for generated filesmatcher
- bidded fileset- Throws:
java.io.IOException
-
-