Package org.gradle.nativeplatform.tasks
Class AbstractLinkTask
java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.nativeplatform.tasks.AbstractLinkTask
- All Implemented Interfaces:
 Comparable<Task>,org.gradle.api.internal.DynamicObjectAware,org.gradle.api.internal.TaskInternal,ExtensionAware,Task,ObjectFilesToBinary,org.gradle.util.Configurable<Task>
- Direct Known Subclasses:
 LinkExecutable,LinkMachOBundle,LinkSharedLibrary
@Incubating
public abstract class AbstractLinkTask
extends DefaultTask
implements ObjectFilesToBinary
Base task for linking a native binary from object files and libraries.
- 
Nested Class Summary
Nested classes/interfaces inherited from interface org.gradle.api.Task
Task.Namer - 
Field Summary
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.gradle.nativeplatform.internal.LinkerSpecThe file where the linked binary will be located.Include the destination directory as an output, to pick up auxiliary files produced alongside the main output filegetLibs()The library files to be passed to the linker.Additional arguments passed to the linker.org.gradle.internal.operations.logging.BuildOperationLoggerFactoryThe source object files to be passed to the linker.The platform that the linked binary will run on.The tool chain used for linking.booleanCreate a debuggable binary?voidAdds a set of library files to be linked.voidlink()voidsetDebuggable(boolean debuggable) Create a debuggable binary?voidsetLibs(FileCollection libs) voidsetOutputFile(File outputFile) voidsetOutputFile(Provider<? extends RegularFile> outputFile) Sets the output file generated by the linking process via aProvider.voidsetSource(FileCollection source) voidsetTargetPlatform(NativePlatform targetPlatform) voidsetToolChain(NativeToolChain toolChain) voidAdds a set of object files to be linked.Methods inherited from class org.gradle.api.DefaultTask
newInputDirectory, newInputFile, newOutputDirectory, newOutputFileMethods inherited from class org.gradle.api.internal.AbstractTask
addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Comparable
compareToMethods inherited from interface org.gradle.api.plugins.ExtensionAware
getExtensionsMethods inherited from interface org.gradle.api.Task
configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getFinalizedBy, getGroup, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getPath, getProject, getShouldRunAfter, getTaskDependencies, getTemporaryDir, hasProperty, leftShift, mustRunAfter, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter 
- 
Constructor Details
- 
AbstractLinkTask
public AbstractLinkTask() 
 - 
 - 
Method Details
- 
getToolChain
The tool chain used for linking. - 
setToolChain
 - 
getTargetPlatform
The platform that the linked binary will run on. - 
setTargetPlatform
 - 
getDestinationDir
Include the destination directory as an output, to pick up auxiliary files produced alongside the main output file - 
getBinaryFile
The file where the linked binary will be located.- Since:
 - 4.1
 
 - 
getOutputFile
 - 
setOutputFile
 - 
setOutputFile
Sets the output file generated by the linking process via aProvider.- Parameters:
 outputFile- the output file provider to use- Since:
 - 4.1
 - See Also:
 
 - 
getLinkerArgs
Additional arguments passed to the linker.- Since:
 - 4.3
 
 - 
isDebuggable
Create a debuggable binary?- Since:
 - 4.3
 
 - 
setDebuggable
public void setDebuggable(boolean debuggable) Create a debuggable binary?- Since:
 - 4.3
 
 - 
getSource
The source object files to be passed to the linker. - 
setSource
 - 
getLibs
The library files to be passed to the linker. - 
setLibs
 - 
source
Adds a set of object files to be linked. The provided source object is evaluated as perProject.files(Object...).- Specified by:
 sourcein interfaceObjectFilesToBinary
 - 
lib
Adds a set of library files to be linked. The provided libs object is evaluated as perProject.files(Object...). - 
getOperationLoggerFactory
@Inject public org.gradle.internal.operations.logging.BuildOperationLoggerFactory getOperationLoggerFactory() - 
link
public void link() - 
createLinkerSpec
protected abstract org.gradle.nativeplatform.internal.LinkerSpec createLinkerSpec() 
 -