ECMGenerateExportHeader: do sanity check for version argument values
To prevent accidental use of the C++-side hex number-style version variants on the cmake side where human-readable style is used instead (which can happen due to the similar names of the cmake variables/arguments and C++ macros which screws up developers' brain) we better do some proper input checks also on the arguments EXCLUDE_DEPRECATED_BEFORE_AND_AT and DEPRECATED_BASE_VERSION
Monday's report was the issue of "EXCLUDE_DEPRECATED_BEFORE_AND_AT:STRING=0x055100" which triggere this patch. I remember there was some earlier similar issue, but lost notes about that, but IIRC it was actually the same mistake, so these new checks should have worked both times.