cmake: Allow setting default generator by environment variable
This allows setting a custom default generator in an environment variable
as well as the
If a CMake cache is present, the cached generator is used. If no environment variable and no cache is present, the CMake default generator is used.
I couldn't find any reason for this feature to don't exist. It's convenient.