# CppBinary

interface CppBinary : ComponentWithObjectFiles, ComponentWithDependencies, BuildableComponent(source)

A binary built from C++ source and linked from the resulting object files.

#### Since

4.2

#### Inheritors

CppStaticLibrary
CppSharedLibrary
CppExecutable
CppTestExecutable

## Properties

DEBUGGABLE_ATTRIBUTE
Link copied to clipboard
val DEBUGGABLE_ATTRIBUTE: Attribute<Boolean>
The dependency resolution attribute use to indicate whether a binary is debuggable or not.
LINKAGE_ATTRIBUTE
Link copied to clipboard
val LINKAGE_ATTRIBUTE: Attribute<Linkage>
The dependency resolution attribute use to indicate which linkage a binary uses.
OPTIMIZED_ATTRIBUTE
Link copied to clipboard
val OPTIMIZED_ATTRIBUTE: Attribute<Boolean>
The dependency resolution attribute use to indicate whether a binary is optimized or not.

## Functions

getBaseName
Link copied to clipboard
abstract fun getBaseName(): Provider<String>
Returns the base name of this component.
getCompileIncludePath
Link copied to clipboard
abstract fun getCompileIncludePath(): FileCollection
Returns the header directories to use to compile this binary.
getCompileTask
Link copied to clipboard
abstract fun getCompileTask(): Provider<CppCompile>
Returns the compile task for this binary.
getCppSource
Link copied to clipboard
abstract fun getCppSource(): FileCollection
Returns the C++ source files of this binary.
getDependencies
Link copied to clipboard
abstract fun getDependencies(): ComponentDependencies
Returns the dependencies of this component.
getLinkLibraries
Link copied to clipboard
abstract fun getLinkLibraries(): FileCollection
Returns the link libraries to use to link this binary.
getName
Link copied to clipboard
abstract fun getName(): String
The object's name.
getObjects
Link copied to clipboard
abstract fun getObjects(): FileCollection
Returns the object files created for this component.
getRuntimeLibraries
Link copied to clipboard
abstract fun getRuntimeLibraries(): FileCollection
Returns the runtime libraries required by this binary.
getTargetMachine
Link copied to clipboard
abstract fun getTargetMachine(): TargetMachine
Returns the target machine for this component.
getTargetPlatform
Link copied to clipboard
abstract fun getTargetPlatform(): CppPlatform
Returns the target platform for this component.
getToolChain
Link copied to clipboard
abstract fun getToolChain(): NativeToolChain
Returns the tool chain for this component.
isDebuggable
Link copied to clipboard
abstract fun isDebuggable(): Boolean
Returns true if this component has debugging enabled.
isOptimized
Link copied to clipboard
abstract fun isOptimized(): Boolean
Returns true if this component is optimized.