zsh-users/zsh-completions

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

Open

#593 opened on Sep 3, 2018

View on GitHub
 (3 comments) (0 reactions) (0 assignees)Shell (693 forks)batch import
Bughelp wanted

Repository metrics

Stars
 (6,175 stars)
PR merge metrics
 (Avg merge 2d 4h) (7 merged PRs in 30d)

Description

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).

Contributor guide