Class CppLibraryPlugin

  • All Implemented Interfaces:
    Plugin<Project>

    public abstract class CppLibraryPlugin
    extends java.lang.Object
    implements Plugin<Project>

    A plugin that produces a native library from C++ source.

    Assumes the source files are located in `src/main/cpp`, public headers are located in `src/main/public` and implementation header files are located in `src/main/headers`.

    Adds a CppLibrary extension to the project to allow configuration of the library.

    Since:
    4.1
    • Constructor Summary

      Constructors 
      Constructor Description
      CppLibraryPlugin​(org.gradle.language.internal.NativeComponentFactory componentFactory, org.gradle.language.nativeplatform.internal.toolchains.ToolChainSelector toolChainSelector, org.gradle.api.internal.attributes.ImmutableAttributesFactory attributesFactory, TargetMachineFactory targetMachineFactory)
      CppLibraryPlugin.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void apply​(Project project)
      Apply this plugin to the given target object.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CppLibraryPlugin

        @Inject
        public CppLibraryPlugin​(org.gradle.language.internal.NativeComponentFactory componentFactory,
                                org.gradle.language.nativeplatform.internal.toolchains.ToolChainSelector toolChainSelector,
                                org.gradle.api.internal.attributes.ImmutableAttributesFactory attributesFactory,
                                TargetMachineFactory targetMachineFactory)
        CppLibraryPlugin.
        Since:
        4.2
    • Method Detail

      • apply

        public void apply​(Project project)
        Description copied from interface: Plugin
        Apply this plugin to the given target object.
        Specified by:
        apply in interface Plugin<Project>
        Parameters:
        project - The target object