Comparable<Task>
, org.gradle.api.internal.DynamicObjectAware
, org.gradle.api.internal.TaskInternal
, ExtensionAware
, Task
, org.gradle.util.Configurable<Task>
AbstractNativePCHCompileTask
, AbstractNativeSourceCompileTask
@Incubating public abstract class AbstractNativeCompileTask extends DefaultTask
Task.Namer
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
Constructor | Description |
---|---|
AbstractNativeCompileTask() |
Modifier and Type | Method | Description |
---|---|---|
void |
compile(IncrementalTaskInputs inputs) |
|
protected void |
configureSpec(org.gradle.nativeplatform.toolchain.internal.NativeCompileSpec spec) |
|
protected abstract org.gradle.nativeplatform.toolchain.internal.NativeCompileSpec |
createCompileSpec() |
|
ListProperty<String> |
getCompilerArgs() |
Additional arguments to provide to the compiler.
|
protected org.gradle.api.internal.file.FileCollectionFactory |
getFileCollectionFactory() |
|
protected FileCollection |
getHeaderDependencies() |
The set of dependent headers, read from
getHeaderDependenciesFile() }. |
RegularFileProperty |
getHeaderDependenciesFile() |
The file containing the header dependency analysis.
|
protected Collection<String> |
getIncludePaths() |
|
ConfigurableFileCollection |
getIncludes() |
Returns the header directories to be used for compilation.
|
protected org.gradle.language.nativeplatform.internal.incremental.IncrementalCompilerBuilder |
getIncrementalCompilerBuilder() |
|
Map<String,String> |
getMacros() |
Macros that should be defined for the compiler.
|
DirectoryProperty |
getObjectFileDir() |
The directory where object files will be generated.
|
protected org.gradle.internal.operations.logging.BuildOperationLoggerFactory |
getOperationLoggerFactory() |
|
ConfigurableFileCollection |
getSource() |
Returns the source files to be compiled.
|
NativePlatform |
getTargetPlatform() |
The platform being targeted.
|
NativeToolChain |
getToolChain() |
The tool chain used for compilation.
|
void |
includes(Object includeRoots) |
Add directories where the compiler should search for header files.
|
boolean |
isDebuggable() |
Should the compiler generate debuggable code?
|
boolean |
isOptimized() |
Should the compiler generate optimized code?
|
boolean |
isPositionIndependentCode() |
Should the compiler generate position independent code?
|
void |
setDebuggable(boolean debug) |
Should the compiler generate debuggable code?
|
void |
setMacros(Map<String,String> macros) |
|
void |
setOptimized(boolean optimize) |
Should the compiler generate optimized code?
|
void |
setPositionIndependentCode(boolean positionIndependentCode) |
|
void |
setTargetPlatform(NativePlatform targetPlatform) |
|
void |
setToolChain(NativeToolChain toolChain) |
|
void |
source(Object sourceFiles) |
Adds a set of source files to be compiled.
|
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
newInputDirectory, newInputFile, newOutputDirectory, newOutputFile
@Inject protected org.gradle.language.nativeplatform.internal.incremental.IncrementalCompilerBuilder getIncrementalCompilerBuilder()
@Inject protected org.gradle.internal.operations.logging.BuildOperationLoggerFactory getOperationLoggerFactory()
@Inject protected org.gradle.api.internal.file.FileCollectionFactory getFileCollectionFactory()
public void compile(IncrementalTaskInputs inputs)
protected void configureSpec(org.gradle.nativeplatform.toolchain.internal.NativeCompileSpec spec)
protected abstract org.gradle.nativeplatform.toolchain.internal.NativeCompileSpec createCompileSpec()
@Internal public NativeToolChain getToolChain()
public void setToolChain(NativeToolChain toolChain)
public NativePlatform getTargetPlatform()
public void setTargetPlatform(NativePlatform targetPlatform)
@Input public boolean isPositionIndependentCode()
public void setPositionIndependentCode(boolean positionIndependentCode)
@Input public boolean isDebuggable()
public void setDebuggable(boolean debug)
@Input public boolean isOptimized()
public void setOptimized(boolean optimize)
@OutputDirectory public DirectoryProperty getObjectFileDir()
@Internal("The paths for include directories are tracked via the includePaths property, the contents are tracked via discovered inputs") public ConfigurableFileCollection getIncludes()
@Input @Optional protected Collection<String> getIncludePaths()
public void includes(Object includeRoots)
@InputFiles @PathSensitive(RELATIVE) public ConfigurableFileCollection getSource()
public void source(Object sourceFiles)
Project.files(Object...)
.@Input public Map<String,String> getMacros()
@Input public ListProperty<String> getCompilerArgs()
@Internal public RegularFileProperty getHeaderDependenciesFile()
@Optional @InputFiles @PathSensitive(NAME_ONLY) protected FileCollection getHeaderDependencies()
getHeaderDependenciesFile()
}.
This is used for up-to-date checks only.