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
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.gradle.nativeplatform.internal.LinkerSpec
The 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.BuildOperationLoggerFactory
The source object files to be passed to the linker.The platform that the linked binary will run on.The tool chain used for linking.boolean
Create a debuggable binary?void
Adds a set of library files to be linked.void
link()
void
setDebuggable
(boolean debuggable) Create a debuggable binary?void
setLibs
(FileCollection libs) void
setOutputFile
(File outputFile) void
setOutputFile
(Provider<? extends RegularFile> outputFile) Sets the output file generated by the linking process via aProvider
.void
setSource
(FileCollection source) void
setTargetPlatform
(NativePlatform targetPlatform) void
setToolChain
(NativeToolChain toolChain) void
Adds a set of object files to be linked.Methods inherited from class org.gradle.api.DefaultTask
newInputDirectory, newInputFile, newOutputDirectory, newOutputFile
Methods 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, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.gradle.api.plugins.ExtensionAware
getExtensions
Methods 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:
source
in 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()
-