Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • CMake CMake
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,871
    • Issues 3,871
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 19
    • Merge requests 19
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • External wiki
    • External wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • CMake
  • CMakeCMake
  • Issues
  • #18628
Closed
Open
Created Nov 24, 2018 by Daniel Pfeifer@purpleKarrotDeveloper

install: Add sane set of defaults for COMPONENT parameter

If the user does not specify a COMPONENT for a target type, the install() command currently uses the value "Unspecified".

Documentation and examples of the install(TARGETS) command use the components "Libraries" and "Development".

Documentation and examples of the install(EXPORT) command use the components "Runtime" and "Development".

I propose to use the following defaults instead of "Unspecified":

  • TARGET ARCHIVE COMPONENT: "Development"
  • TARGET LIBRARY COMPONENT: "Runtime"
  • TARGET LIBRARY NAMELINK_COMPONENT: "Development"
  • TARGET RUNTIME COMPONENT: "Runtime"
  • EXPORT COMPONENT: "Development"

Then, drop the COMPONENT from simple examples. Use the component names "Runtime" and "Development" consistently in the documentation.

This is a breaking change for projects that currently expect things to end up in the "Unspecified" component. This may require a policy.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking