Revert "hunt down more place where a wildcard was used at the begin of a MATCHES regex"

This reverts commit d0560bdd512fd7647dcd80f7ebe23f5d3fa4b957.

This was wrong, the first pattern was actually used.
Merge topic 'matches-cleanup' into next

f1e80199 Revert "hunt down more place where a wildcard was used at the begin of a MATCHES regex"
Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex)

The matches have already been calculated and can simply be taken from
CMAKE_MATCH_n variables. This avoids multiple compilations of the same or very
similar regular expressions.
Replace string(REGEX REPLACE) with string(REPLACE) where possible

The simple replacement is much faster.
Remove .* expressions from beginning and end of MATCHES regexs

All these expressions work the same:
  "foo"
  ".*foo.*"
  "^.*foo.*$"

This assumes that the "Intel*" expressions were meant to be "Intel.*".
Use CMAKE_SYSTEM_NAME instead of CMAKE_SYSTEM where sufficient
Replace MATCHES ".+" tests with NOT STREQUAL ""
Replace MATCHES test on numbers with EQUAL test

The MATCHES tests were actually wrong, as "a4b" and "42" would also cause a
match when it should not.
Merge topic 'matches-cleanup' into next

f21ac16e Replace MATCHES test on numbers with EQUAL test
7eacbaed Replace MATCHES ".+" tests with NOT STREQUAL ""
3a71d34c Use CMAKE_SYSTEM_NAME instead of CMAKE_SYSTEM where sufficient
b0b4b460 Remove .* expressions from beginning and end of MATCHES regexs
5bd48ac5 Replace string(REGEX REPLACE) with string(REPLACE) where possible
2622bc3f Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex)
cmELF: fix signedness warning on OpenBSD

OpenBSD defines Elf64_Dyn::d_tag to be of an unsigned type, which differs from
what most other platforms do and what is the case for 32 bit. To have the tag
as unsigned makes sense, but this causes a compilation warning:

/.../CMake/Source/cmELF.cxx: In member function 'const cmELF::StringEntry* cmELFInternalImpl<Types>::GetDynamicSectionString(int) [with Types = cmELFTypes64]':
/.../CMake/Source/cmELF.cxx:945:   instantiated from here
/.../CMake/Source/cmELF.cxx:668: warning: comparison between signed and unsigned integer expressions

Add an explicit typedef to cast the value to for 32 and 64 bit. That type is
unsigned and has the proper length for both platforms so no information is
lost. Explicitely cast both arguments before comparing them to avoid the
warning in all situations.
Merge topic 'openbsd-sign-warning' into next

63a9103d cmELF: fix signedness warning on OpenBSD