Large Refactor of CMake build system [FIXED]

<big fat snip>
....
Attached are 2 potential patches which resolve the issue we're hitting
(I let someone else decide which one or modify as needed)

Summary:
libomp_check_linker_flag rewrites src_to_link.c and CMakeLists.txt in
build directory for test project, but cmake does not rebuild the
project. The root cause is that on some filesystems (ext3, reiserfs)
timestamp resoultion is 1 second. So cmake does not rebuild test
project if check takes less than 1 second.

Comments: These checks are somewhat stupid and it would be nice to be
able to disable them. I don't know of any other llvm project
essentially doing this
write small CMake file just for testing; run cmake; test; etc

Solution:
The work-around is to build test projects in different subdirs.

One patch uses variable name instead of flag name for subdirectory
names, to avoid use of special symbols in directory name (-- , /).

Please decide and push ASAP.

openmp_llvm_check(1).patch (790 Bytes)

openmp_llvm_check.patch (793 Bytes)

+Jonathan

ping - I posted a trivial 1 line patch and it's almost 1 day later.
Nobody has time to review and push?

I am not sympathetic to this being the default clang runtime if that's
how things are around here.

Maybe someone can give me commit access and I do it?

That patch was committed earlier today in
http://llvm.org/viewvc/llvm-project?rev=243017&view=rev and merged to
3.7 in http://llvm.org/viewvc/llvm-project?rev=243021&view=rev

I'm sorry this thread didn't get updated. Many thanks for the
investigation and fix.

- Hans