- Include `config` in all `install` and `custom` snippets
- Include `target` for `custom` snippets where applicable
- Document and test inclusion of `language` in `link` snippets
Issue: #27244
We were writing "-deps" alias in the generated file
even if we didn't have any dependencies, which is excessive
and makes FASTBuild do more work then necessary.
We don't need set ExecWorkingDir since we add
a "cd" command to the script file anyway
(so the custom command will be executed in the correct directory).
Moreover, in 1.16 FASTBuild started using posix_spawn* API
instead of fork() (which is much more efficient),
but it only does so if `ExecWorkingDir` is not set.
List of changes:
1. Remove unneeded aliases
2. Don't write VS Solution on Apple
3. Use external script to perform clean
4. Fix small bug when empty environment was
resulting in invalid file.
It greatly reduces the size of .fdb file and
makes FASTBuild run much faster in different cases.