zsh-users/zsh-completions

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

Open

#593 opened on Sep 3, 2018

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Shell (6,175 stars) (693 forks)batch import
Bughelp wanted

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