api / org.gradle.language.plugins / NativeBasePlugin

NativeBasePlugin

@Incubating open class NativeBasePlugin : Plugin<ProjectInternal>

A common base plugin for the native plugins.

Expects plugins to register the native components in the Project#getComponents() container, and defines a number of rules that act on these components to configure them.

Since
4.5

Constructors

<init>

NativeBasePlugin()

A common base plugin for the native plugins.

Expects plugins to register the native components in the Project#getComponents() container, and defines a number of rules that act on these components to configure them.

  • Configures the {@value LifecycleBasePlugin#ASSEMBLE_TASK_NAME} task to build the development binary of the main component, if present. Expects the main component to be of type ProductionComponent and ComponentWithBinaries.
  • Adds an "assemble" task for each binary of the main component.
  • Adds tasks to compile and link an executable. Currently requires component implements internal API ConfigurableComponentWithExecutable.
  • Adds tasks to compile and link a shared library. Currently requires component implements internal API ConfigurableComponentWithSharedLibrary.
  • Adds tasks to compile and create a static library. Currently requires component implements internal API ConfigurableComponentWithStaticLibrary.
  • Adds outgoing configuration and artifacts for link file. Currently requires component implements internal API ConfigurableComponentWithLinkUsage.
  • Adds outgoing configuration and artifacts for runtime file. Currently requires component implements internal API ConfigurableComponentWithRuntimeUsage.
  • Maven publications. Currently requires component implements internal API PublicationAwareComponent.

Functions

apply

open fun apply(project: ProjectInternal): Unit