Only append build interface include dirs to particular targets.

We shouldn't set the property on all custom targets.
Ensure that the build interface includes have been added.

This is needed in the case that Automoc is used, as that calls
GetIncludeDirectories, which may cache the resulting include dirs
too early in the generate step.

We still need to invoke AppendBuildInterfaceIncludes
in the GlobalGenerator because the build interface includes affect
mostly the dependencies of targets (such as the automoc targets),
rather than the targets themselves, so the build interface needs
to be appended for all targets before generation is done.
Merge topic 'minor-fixes' into next

3c4b16b Ensure that the build interface includes have been added.
df74bc3 Only append build interface include dirs to particular targets.