Interface VisualStudioProject

All Superinterfaces:
Buildable, Named

public interface VisualStudioProject extends Named, Buildable
A visual studio project, created from one or more native binaries.

The content and location of the generate project file can be modified by the supplied methods:

  plugins {
      id 'cpp'
      id 'visual-studio'
  }

  model {
      visualStudio {
          projects.all {
              projectFile.location = "vs/${name}.vcxproj"
              projectFile.withXml {
                  asNode().appendNode('PropertyGroup', [Label: 'Custom'])
                          .appendNode('ProjectDetails', "Project is named ${project.name}")
              }
          }
      }
  }
 
  • Method Details

    • getProjectFile

      @Incubating XmlConfigFile getProjectFile()
      Configuration for the generated project file.
    • getFiltersFile

      @Incubating XmlConfigFile getFiltersFile()
      Configuration for the generated filters file.
    • getBuildDependencies

      @Incubating TaskDependency getBuildDependencies()
      Description copied from interface: Buildable
      Returns a dependency which contains the tasks which build this artifact. All Buildable implementations must ensure that the returned dependency object is live, so that it tracks changes to the dependencies of this buildable.
      Specified by:
      getBuildDependencies in interface Buildable
      Returns:
      The dependency. Never returns null. Returns an empty dependency when this artifact is not built by any tasks.
    • getName

      String getName()
      Description copied from interface: Named
      The object's name.

      Must be constant for the life of the object.

      Specified by:
      getName in interface Named
      Returns:
      The name. Never null.