when to use include on core functions?

CMake offers some functions to use without any includes:

  • project
  • add_executable

some other functions require an include before being used:

is there any indication on when a module must be included prior to using a function and when not?

P.S.: on further inspection it seems that everything documented under Documentation » cmake-modules requires an include, everything else does not. Is that correct?

I’d probably say the other way around: everything listed under https://cmake.org/cmake/help/latest/manual/cmake-commands.7.html is a built-in, everything else comes from modules.