Package org.gradle.language.nativeplatform

# Interface DependentSourceSet

All Superinterfaces:
  `Buildable`, `BuildableComponentSpec`, `ComponentSpec`, `LanguageSourceSet`, `ModelElement`, `Named`

All Known Subinterfaces:
  `CppSourceSet`, `CSourceSet`, `ObjectiveCppSourceSet`, `ObjectiveCSourceSet`

@Incubating public interface DependentSourceSet extends LanguageSourceSet
A source set that depends on one or more `NativeDependencySet`s to be built.

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.gradle.api.Named

`Named.Namer`

## Method Summary

Modifier and Type
Method
Description
`Collection<?>`
`getLibs()`
The libraries that this source set requires.
`String`
`getPreCompiledHeader()`
Returns the pre-compiled header configured for this source set.
`void`
`lib(Object library)`
Adds a library that this source set requires.
`void`
`setPreCompiledHeader(String header)`
Sets the pre-compiled header to be used when compiling sources in this source set.

### Methods inherited from interface org.gradle.api.Buildable

`getBuildDependencies`

### Methods inherited from interface org.gradle.api.BuildableComponentSpec

`builtBy, getBuildTask, hasBuildDependencies, setBuildTask`

### Methods inherited from interface org.gradle.platform.base.ComponentSpec

`getProjectPath`

### Methods inherited from interface org.gradle.language.base.LanguageSourceSet

`generatedBy, getParentName, getSource`

### Methods inherited from interface org.gradle.model.ModelElement

`getDisplayName, getName`

## Method Details

### getLibs

Collection<?> getLibs()
The libraries that this source set requires.

### lib

void lib(Object library)
Adds a library that this source set requires. This method accepts the following types:

- A `NativeLibrarySpec`
- A `NativeDependencySet`
- A `LanguageSourceSet`
- A `Map` containing the library selector.

The Map notation supports the following String attributes:

- project: the path to the project containing the library (optional, defaults to current project)
- library: the name of the library (required)
- linkage: the library linkage required ['shared'/'static'] (optional, defaults to 'shared')

### setPreCompiledHeader

void setPreCompiledHeader(String header)
Sets the pre-compiled header to be used when compiling sources in this source set.

Parameters:
  `header` - the header to precompile

### getPreCompiledHeader

String getPreCompiledHeader()
Returns the pre-compiled header configured for this source set.

Returns:
  the pre-compiled header