Package: org.gradle.nativebinaries.tasks

## [Groovy] Class AbstractLinkTask

- org.gradle.nativebinaries.tasks.AbstractLinkTask

- All Implemented Interfaces and Traits:
    ObjectFilesToBinary

      @Incubating
      abstract class AbstractLinkTask
      extends DefaultTask

- - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `FileCollection` | `libs` The library files to be passed to the linker.
    `List<String>` | `linkerArgs` Additional arguments passed to the linker.
    `File` | `outputFile` The file where the linked binary will be located.
    `FileCollection` | `source` The source object files to be passed to the linker.
    `Platform` | `targetPlatform`
    `ToolChain` | `toolChain` The tool chain used for linking.

  - ### Constructor Summary

    Constructors
    Constructor and description
    `AbstractLinkTask ()`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `protected LinkerSpec` | `createLinkerSpec()`
    `File` | `getDestinationDir()`
    `def` | `getOutputType()`
    `void` | `lib(Object libs)` Adds a set of library files to be linked.
    `void` | `link()`
    `void` | `source(Object source)` Adds a set of object files to be linked.

- - ### Property Detail

    - #### @InputFiles FileCollection libs

      The library files to be passed to the linker.

    - #### @Input List<String> linkerArgs

      Additional arguments passed to the linker.

    - #### @OutputFile File outputFile

      The file where the linked binary will be located.

    - #### @InputFiles FileCollection source

      The source object files to be passed to the linker.

    - #### Platform targetPlatform

    - #### ToolChain toolChain

      The tool chain used for linking.

  - ### Constructor Detail

    - #### @Inject AbstractLinkTask()

  - ### Method Detail

    - #### protected LinkerSpec createLinkerSpec()

    - #### @OutputDirectory File getDestinationDir()

    - #### @Input def getOutputType()

    - #### void lib(Object libs)

      Adds a set of library files to be linked. The provided libs object is evaluated as per Project.files.

    - #### @TaskAction void link()

    - #### void source(Object source)

      Adds a set of object files to be linked. The provided source object is evaluated as per Project.files.