Fix crash on empty CMAKE_<lang>_COMPILER value (#13901)

Since commit fd33bf93 (fix for bug 6102, allow users to change the
compiler, 2007-12-13) we keep an internal ;-list of language compiler
variable and value pairs.  Preserve empty values on expansion to ensure
that the key/value pairing remains consistent.
CPackRPM fix #13898 uses IF(DEFINED var) to avoid wrong var value logic
automoc: use a std::vector<> instead a std::list

Alex
automoc: use the header extensions from cmMakefile

Instead of having an own set of C header extensions, use
cmMakefile::GetHeaderExtensions() (#13904)

Alex
Eclipse: also detect include dirs and macro for clang (#13823)

Alex
Merge topic 'empty-compiler-crash'

ccfeefa Fix crash on empty CMAKE_<lang>_COMPILER value (#13901)
Merge topic 'CPackRPM-fixSomeRPMSpecificVarHandling'

9be3da1 CPackRPM fix #13898 uses IF(DEFINED var) to avoid wrong var value logic
Merge topic 'UseMakefileHeaderExtensions'

27e14a8 automoc: use the header extensions from cmMakefile
10511aa automoc: use a std::vector<> instead a std::list
Merge topic 'EclipseDetectClangIncludeDirs'

a396b6e Eclipse: also detect include dirs and macro for clang (#13823)