Skip to content

cmake completion for --find-package lacks required -D arguments #593

@pseyfert

Description

@pseyfert

The current cmake completion does not suggest the -D arguments that are required when running --find-package.
See also stackoverflow.

Essentially, when one uses --find-package, also -DNAME must be set. Otherwise cmake complains:

CMake Error at /usr/share/cmake-3.12/Modules/CMakeFindPackageMode.cmake:33 (message):
  Name of the package to be searched not specified.  Set the CMake variable
  NAME, e.g.  -DNAME=JPEG .

Further down the line one gets

CMake Error at /usr/share/cmake-3.12/Modules/CMakeFindPackageMode.cmake:37 (message):
  COMPILER_ID argument not specified.  In doubt, use GNU.

then

CMake Error at /usr/share/cmake-3.12/Modules/CMakeFindPackageMode.cmake:41 (message):
  LANGUAGE argument not specified.  Use C, CXX or Fortran.

and eventually

CMake Error at /usr/share/cmake-3.12/Modules/CMakeFindPackageMode.cmake:45 (message):
  MODE argument not specified.  Use either EXIST, COMPILE or LINK.

I.e. --find-package implies that -DNAME=, -DLANGUAGE=, -DCOMPILER_ID=
and -DMODE= are provided. The possible values are spelled out in the error
messages above.

I don't see how to add that myself to the current completion (given time constraints and priorities).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions