QtAutogen: Use config without prefix in map key.

This is used by IDE generators to select config-specific includes
and defines.
Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER.
QtAutoUic: Handle new -include command line parameter.
QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property.

Transitively consume the property from linked dependents.

Implement configuration-specific support by following the pattern
set out for compile definitions and includes in cmQtAutoGenerators.

Implement support for origin-tracking with CMAKE_DEBUG_TARGET_PROPERTIES.

This is motivated by the needs of KDE, which provides a separate
translation system based on gettext instead of the Qt linguist
translation system. The Qt uic tool provides command line options
for configuring the method used to translate text, and to add an
include directive to the generated file to provide the method.

 http://thread.gmane.org/gmane.comp.kde.devel.frameworks/7930/focus=7992

Implement the interface to provide the uic options as a usage-requirement
on the KI18n target, as designed for KDE.
Merge topic 'INTERFACE_AUTOUIC_OPTIONS' into next

98093c4 QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property.
02542b4 QtAutoUic: Handle new -include command line parameter.
1242f4e Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER.
754b321 QtAutogen: Use config without prefix in map key.
Don't load Clang-CXX from AppleClang-CXX.

The Clang-CXX module is going to get version-specific checks, and
the version system for AppleClang is not the same as Clang.
Add some COMPILE_OPTIONS for specifying C++ dialect.

These are compiler-specific, compiler version specific, extension specific
and standard version specific.
cmTarget: Add CXX_STANDARD and CXX_EXTENSION target properties.

These are used to determine whether to add -std=c++11, -std=gnu++11
etc flags on the compile line.
Record the compilers capable of the cxx_delegating_constructors feature.

Add a feature test using the compiler macros and the preprocessor to
determine available features. Add a unit test which outputs the
feature test file compiled. Record the list of features in
the SystemInformation unit test.

Add a CMAKE_CXX_COMPILE_FEATURES variable which contains all features
known to the loaded compiler, and a CMAKE_CXX_KNOWN_FEATURES variable
containing all features known to CMake. Add language standard specific
variables for internal use to determine the standard-specific compile
flags to use. Add internal variables matching CMAKE_PP_NAME_<feature>
for each feature. Those variables are used as preprocessor defines.
Record compilers capable of the gnuxx_typeof feature.
Record compilers capable of msvcxx_sealed feature.

Clang-cl is capable of this feature, but that is not yet released,
nor have I tested it.
Add target_compile_features command.

This can be used to set the compiler features required by particular
targets. An error is issued at CMake time if the compiler does not
support the required feature. If a language dialect flag is required
by the features used, that will be added automatically.
cmTarget: Make COMPILE_FEATURES available as a target property.
cmTarget: Allow populating COMPILE_FEATURES using generator expressions.
cmTarget: Transitively evaluate compiler features.

Extend the interface of the target_compile_features command with
PUBLIC and INTERFACE keywords. Populate the INTERFACE_COMPILER_FEATURES
target property if they are set. Consume the INTERFACE_COMPILER_FEATURES
target property from linked dependent targets to determine the final
required compiler features and the compile flag, if needed.
cmTargetPropCommandBase: Change the interface to return bool.

This is needed for the target_compile_features command, which
may fail at configure time if an invalid feature is specified.
Base the target_compile_features command on cmTargetPropCommandBase.

This gives us 'free' handling of IMPORTED, ALIAS, INTERFACE,
non-compilable and missing targets.
Merge topic 'target_compile_features' into next

a6a5d78 Base the target_compile_features command on cmTargetPropCommandBase.
326b3ba cmTargetPropCommandBase: Change the interface to return bool.
f88006a cmTarget: Transitively evaluate compiler features.
be18777 cmTarget: Allow populating COMPILE_FEATURES using generator expressions.
0b157e6 cmTarget: Make COMPILE_FEATURES available as a target property.
0ef3fe8 Add target_compile_features command.
a05f35b Record compilers capable of msvcxx_sealed feature.
aeb2c59 Record compilers capable of the gnuxx_typeof feature.
7cefaf9 Record the compilers capable of the cxx_delegating_constructors feature.
7460f97 cmTarget: Add CXX_STANDARD and CXX_EXTENSION target properties.
4c6b785 Add some COMPILE_OPTIONS for specifying C++ dialect.
a49043f Don't load Clang-CXX from AppleClang-CXX.