Genex: Remove unnecessary check of context->Makefile

The context->Makefile is never NULL, but our checks for it convince
Clang scan-build that it might be NULL.  Then it warns about later
unchecked uses.  Drop the unnecessary checks.
Genex: Do not consider 'head' when evaluating build properties

When $<TARGET_PROPERTY> names a build property like COMPILE_DEFINITIONS
but not the usage requirement (INTERFACE_) version of it, the value
should be that used to build the target.  It should not be influenced by
a dependent 'head' target like usage requirements are.

Extend the CompileDefinitions test with a case covering the corrected
behavior.

Reviewed-by: Stephen Kelly <steveire@gmail.com>
Merge topic 'genex-context-makefile-non-null'

c6acbc90 Genex: Remove unnecessary check of context->Makefile
Merge topic 'genex-build-property-no-head'

3f476bea Genex: Do not consider 'head' when evaluating build properties