Fix SIMD configuration management
commit8d223faa4b9684a390bf48ce6c23c4f0de1909ce
authorMark Abraham <mark.j.abraham@gmail.com>
Wed, 25 May 2016 06:40:10 +0000 (25 08:40 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Tue, 28 Jun 2016 10:27:06 +0000 (28 12:27 +0200)
treeffa62f3cb808ba38f482fc72eee875f8c71b8a02
parentd5bd278b11bccc0e3d1a5bd4ee417c570fea133c
Fix SIMD configuration management

Subsequent runs of cmake gave inconsistent diagnostic messages because
SUGGEST_BINUTILS_UPDATE was not set on subsequent runs because we were
caching the result of logic, as well as caching the results of
compilation tests. This made life confusing, e.g. when compiling with
gcc on MacOS with clang assembler not available.

Instead, we now re-run the fast logic (quietly, if this is a
subsequent run).

Improved the handling of ${VARIABLE}, because there was no need to use
FORCE because the semantics of an unset variable in CMake just work.
There was also no need for such variables to be put into the cache,
and we were using one more variable than we needed to use. This meant
it was no longer worth implementing the redundant hints about perhaps
updating the binutils package, nor suppressing the redundant special
status-line output.

Noted some TODOs for future simplification. Changed the use of SIMD to
SOURCE, since this utility code doesn't have to relate to SIMD flags.

Change-Id: Id9605ccff0903c55e2621ddd8af10c8da523bebe
cmake/gmxFindFlagsForSource.cmake
cmake/gmxManageSimd.cmake