| find_program | |
| ------------ | |
| .. |FIND_XXX| replace:: find_program | |
| .. |NAMES| replace:: NAMES <name>... [NAMES_PER_DIR] | |
| .. |SEARCH_XXX| replace:: program | |
| .. |SEARCH_XXX_DESC| replace:: program | |
| .. |prefix_XXX_SUBDIR| replace:: ``<prefix>/[s]bin`` | |
| .. |entry_XXX_SUBDIR| replace:: ``<entry>/[s]bin`` | |
| .. |FIND_XXX_REGISTRY_VIEW_DEFAULT| replace:: ``BOTH`` | |
| .. |FIND_PACKAGE_ROOT_PREFIX_PATH_XXX| replace:: | |
| |FIND_PACKAGE_ROOT_PREFIX_PATH_XXX_SUBDIR| | |
| .. |CMAKE_PREFIX_PATH_XXX| replace:: | |
| |CMAKE_PREFIX_PATH_XXX_SUBDIR| | |
| .. |CMAKE_XXX_PATH| replace:: :variable:`CMAKE_PROGRAM_PATH` | |
| .. |CMAKE_XXX_MAC_PATH| replace:: :variable:`CMAKE_APPBUNDLE_PATH` | |
| .. |ENV_CMAKE_PREFIX_PATH_XXX| replace:: | |
| |ENV_CMAKE_PREFIX_PATH_XXX_SUBDIR| | |
| .. |ENV_CMAKE_XXX_PATH| replace:: :envvar:`CMAKE_PROGRAM_PATH` | |
| .. |ENV_CMAKE_XXX_MAC_PATH| replace:: :envvar:`CMAKE_APPBUNDLE_PATH` | |
| .. |SYSTEM_ENVIRONMENT_PATH_XXX| replace:: The directories in ``PATH`` itself. | |
| .. |SYSTEM_ENVIRONMENT_PATH_WINDOWS_XXX| replace:: \ | |
| .. |CMAKE_SYSTEM_PREFIX_PATH_XXX| replace:: | |
| |CMAKE_SYSTEM_PREFIX_PATH_XXX_SUBDIR| | |
| .. |CMAKE_SYSTEM_XXX_PATH| replace:: | |
| :variable:`CMAKE_SYSTEM_PROGRAM_PATH` | |
| .. |CMAKE_SYSTEM_XXX_MAC_PATH| replace:: | |
| :variable:`CMAKE_SYSTEM_APPBUNDLE_PATH` | |
| .. |CMAKE_FIND_ROOT_PATH_MODE_XXX| replace:: | |
| :variable:`CMAKE_FIND_ROOT_PATH_MODE_PROGRAM` | |
| .. include:: include/FIND_XXX.rst | |
| When more than one value is given to the ``NAMES`` option this command by | |
| default will consider one name at a time and search every directory | |
| for it. The ``NAMES_PER_DIR`` option tells this command to consider one | |
| directory at a time and search for all names in it. | |
| The set of files considered to be programs is platform-specific: | |
| * On Windows, filename suffixes are considered in order ``.com``, ``.exe``, | |
| and no suffix. | |
| * On non-Windows systems, no filename suffix is considered, but files | |
| must have execute permission (see policy :policy:`CMP0109`). | |
| To search for scripts, specify an extension explicitly: | |
| .. code-block:: cmake | |
| if(WIN32) | |
| set(_script_suffix .bat) | |
| else() | |
| set(_script_suffix .sh) | |
| endif() | |
| find_program(MY_SCRIPT NAMES my_script${_script_suffix}) |