ea3b0a1cd7ccdb22bb65fb9656f54d89d713da55
[alexxy/gromacs.git] / cmake / gmxBuildTypeReference.cmake
1 # Custom build type "Reference", to be used for creating new
2 # reference values in the Gromacs regression tests.
3 set( CMAKE_CXX_FLAGS_REFERENCE "-O0 -g" CACHE STRING "C++ flags for regressiontests reference runs." FORCE)
4 set( CMAKE_C_FLAGS_REFERENCE "-O0 -g" CACHE STRING "C flags for regressiontests reference runs." FORCE)
5 mark_as_advanced( CMAKE_CXX_FLAGS_REFERENCE CMAKE_C_FLAGS_REFERENCE)
6
7 # turn off all fancy options for the regressiontests reference build
8 if("${CMAKE_BUILD_TYPE}" STREQUAL "Reference")
9     set(GMX_GPU OFF CACHE BOOL "Disabled for regressiontests reference builds" FORCE)
10     set(GMX_OPENMP OFF CACHE BOOL "Disabled for regressiontests reference builds" FORCE)
11     set(GMX_CPU_ACCELERATION "None" CACHE STRING "Disabled for regressiontests reference builds" FORCE)
12     set(GMX_FFT_LIBRARY "fftpack" CACHE STRING "Use fftpack for regressiontests reference builds" FORCE)
13     set(GMX_SOFTWARE_INVSQRT OFF CACHE BOOL "Disabled for regressiontests reference builds" FORCE)
14     set(GMX_THREAD_MPI OFF OFF CACHE BOOL "Disabled for regressiontests reference builds" FORCE)
15
16     if(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR NOT "${C_COMPILER_VERSION}" MATCHES "4.7")
17         message(WARNING "Reference values for regressiontests should use Gromacs compiled with "
18                         "gcc-4.7, but your configuration is using ${CMAKE_C_COMPILER_ID}-${C_COMPILER_VERSION}.")
19     endif()
20 endif()