# Package org.gradle.nativeplatform

Classes that model aspects of native component projects.

- Interface Summary
  Interface | Description
  --- | ---
  BuildType | Specifies a build-type for a native binary.
  BuildTypeContainer | A container of `BuildType`s.
  Flavor | Defines a custom variant that differentiate a `NativeBinary`.
  FlavorContainer | A container of `Flavor`s.
  NativeBinary | Represents a particular binary artifact.
  NativeBinarySpec | Represents a binary artifact that is the result of building a native component.
  NativeComponentExtension | The configuration for native components generated by this build.
  NativeComponentSpec | Definition of a software component that is to be built by Gradle to run a on JVM platform.
  NativeDependencySet | Models a collection of native type dependencies.
  NativeExecutable | An executable native component that is built by Gradle.
  NativeExecutableBinary | A binary artifact for a `NativeExecutable`, targeted at a particular platform with specific configuration.
  NativeExecutableBinarySpec | An binary built by Gradle for a native application.
  NativeExecutableBinarySpec.TasksCollection | Provides access to key tasks used for building the binary.
  NativeExecutableSpec | Definition of a native executable component that is to be built by Gradle.
  NativeLibrary | A library component that is built by a gradle project.
  NativeLibraryBinary | A physical representation of a `NativeLibrary` component.
  NativeLibraryBinarySpec | Represents a binary artifact that is the result of building a native library component.
  NativeLibraryRequirement | A dependency on a native library within the build.
  NativeLibrarySpec | Definition of a native library component that is to be built by Gradle.
  PrebuiltLibraries | A container of `PrebuiltLibrary` instances.
  PrebuiltLibrary | A library component that is not built by gradle.
  PrebuiltSharedLibraryBinary | A shared library that exists at a known location on the filesystem.
  PrebuiltStaticLibraryBinary | A static library that exists at a known location on the filesystem.
  PreprocessingTool | A tool that permits configuration of the C preprocessor.
  Repositories | The repositories that Gradle will search for prebuilt libraries.
  SharedLibraryBinary | A `NativeLibrary` that has been compiled and linked as a shared library.
  SharedLibraryBinarySpec | A shared library binary built by Gradle for a native library.
  SharedLibraryBinarySpec.TasksCollection | Provides access to key tasks used for building the binary.
  StaticLibraryBinary | A `NativeLibrary` that has been compiled and archived into a static library.
  StaticLibraryBinarySpec | A static library binary built by Gradle for a native library.
  StaticLibraryBinarySpec.TasksCollection | Provides access to key tasks used for building the binary.
  TargetedNativeComponent | A native component that can be configured to target certain variant dimensions.
  TargetMachine | Represents a combination of operating system and cpu architecture that a variant might be built for.
  TargetMachineBuilder | A builder for configuring the architecture of a `TargetMachine` objects.
  TargetMachineFactory | A factory for creating `TargetMachine` objects.
  Tool | Configuration of the arguments of a ToolChain executable.

- Class Summary
  Class | Description
  --- | ---
  MachineArchitecture | Represents a target architecture of a component.
  NativeExecutableFileSpec | Specifies how to build and where to place a native executable file.
  NativeInstallationSpec | Specifies the installation location for a native executable.
  ObjectFile | LanguageOutputType marking object file output type.
  OperatingSystemFamily | Represents the operating system of a configuration.

- Enum Summary
  Enum | Description
  --- | ---
  Linkage | Specify how a native library should be linked into another binary.