Made g_tune_pme work correctly when ir->init_step > 0

For .tpr files with ir->init_step > 0, the benchmarks do not have the
correct number of steps. This fix sets init_step to zero for the benchmark .tpr
files but keeps the original init_step value for the launch .tpr file.
Benchmarking should now work correctly for .tpr files any init_step value,
regardless whether the .cpt file was provided to g_tune_pme or not.

Change-Id: I9d44647d4c71e1514709ee4d6477bd416f455f42
Fix g_msd -mol

Fixes #774

Change-Id: I6fa564754bcbc898a5da6428729775c669cd72d2
Remove double declaration in headers

Change-Id: Ibaaee5b8bb8c6b3f4cf12c34efd2229f346a838f
Fix bugs in gmxCFlags

The first argument to GMX_TEST_CFLAG needs to be unique, otherwise the
test is skipped and the respective options never gets added.

Change-Id: Iaf6f30511735b5b9459520ca72ed5eda6b3b5ec5
Fix GMX_TEST_CFLAG bug with acceleration flags

If a cmake error occured (e.g. fftw not found) between a flag being
tested (e.g. -msse4.1) and the flags being set, then those flags
weren't set. Neither on the first run with the error, nor later
because in later runs GROMACS_C_FLAGS_SET would already be set.

Fixes #1037

Change-Id: Ibc555d885bab5bec04a1aa5b10f06351e6aa6f38
always mark as advanced leftover FindCUDA variables

If the user turned off GMX_GPU after a failed configure pass, some
variables were still left behind. Now these variables are marked as
advanced unconditionally.

Change-Id: Ia20ad5a164b6a8b43801ad1d83bc03332da5f6c1
Merge "Remove double declaration in headers" into release-4-6
SSE4.1 single-precision kernels

Kernels using SSE4.1 instructions on modern Intel and AMD x86 CPUs.
These are not a whole lot faster than SSE2 right now in default
interactions, but for generalized born they probably are due to
better selection instructions. Padding and other properties are
similar to the SSE2 kernels just commited.

Change-Id: I3d6c09c70d16006128320ca24079f7f3851a882e
Add CMAKE_PREFIX_PATH to cmake-gui

CMAKE_PREFIX_PATH didn't show up in ccmake, because it wasn't in
the cache by default. Given that it is the easiest way to specify
external dependendencies it should show up. Also prior one had to go
to the advanced settings to specify the path to FFTW. Modified
the FFTW message to explain that CMAKE_PREFIX_PATH is also an
option. This makes it possible to set it (if it isn't found
automatically)without having to open the advanced settings.

Change-Id: Ib36ab004aac8f65d2a145d67b72b8c8f4fa065c8
Minor updates to CMake usage

Change-Id: Ie917ccd041c7576afb82ddef7b82598f462c7548
Merge "SSE4.1 single-precision kernels" into release-4-6
Merge changes Ibc555d88,Iaf6f3051 into release-4-6

* changes:
  Fix GMX_TEST_CFLAG bug with acceleration flags
  Fix bugs in gmxCFlags
Fix CXX/C mismatch of flag/macro for gmxCFlags

Change-Id: Ieb87927e24688a29af284b46be3359bbc57d8891
Merge release-4-5-patches into release-4-6

Conflicts:
	src/tools/gmx_tune_pme.c

Change-Id: I924851995261a7777def8a5dea168597aabf0e0d
Fix CXX/C mismatch of flag/macro for gmxCFlags

Change-Id: Ieb87927e24688a29af284b46be3359bbc57d8891
Merge "Fix g_msd -mol" into release-4-6
unset MPI detection leftover cache variables

The MPI_INFO_BIN and MPINAME_BIN variables can be left in the cache
as non-advanced variables because these are results of find_file search.

Change-Id: Id4978ab75680eab6246f25e02e3785412b6d75ac
Speed up mdlib compilation by reordering file globs

Change-Id: I5672fe6001b19e872636a06c6ed15281e00d0ab2
Fixed LJ-14 error in free energy

This bug was introduced when I implemented the new separate
1,4-evaluation of free energies, and failed to take the
now-included 6.0 & 12.0 prefactors in c6 & c12 into account.
The net effect is merely that it altered the softcore power
slightly, which caused it to deviate somewhat from the reference
value in the regression testing.

Change-Id: I70fb7e6da7186b0f10b654d060e1e1275f3676e9
Implemented RMS-based force tolerance in gmxcheck

This patch reduces the number of false force errors
in trajectory comparisions significantly by scaling
the absolute tolerance by the RMS of the force
components. In addition, this also makes the abstol
argument independent of units. This new routine is
used for forces, virials and pressure, but not
coordinates or velocities.

Change-Id: I86b2a8cfe0612a2e7ec45f425d71b501c5d333be