diff --git a/CMakeLists.txt b/CMakeLists.txt index 46d87203..1daaf26f 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -43,6 +43,18 @@ option (USE_ACC "Use OpenACC" OFF) option (USE_PSPLINE "Use PSPLINE interpolation" ON) option (USE_FIO "Use FIO interpolation support" OFF) +set (VALID_PRECISIONS "FLOAT" "DOUBLE") +set (HDF5_PRECISION "DOUBLE" CACHE STRING "FLOAT,DOUBLE") +set_property (CACHE HDF5_PRECISION PROPERTY STRINGS ${VALID_PRECISIONS}) + +if (HDF5_PRECISION STREQUAL "DOUBLE") + add_compile_options(-DHDF5_DOUBLE_PRESICION) +elseif (HDF5_PRECISION STREQUAL "FLOAT") + add_compile_options(-DHDF5_FLOAT_PRESICION) +else () + message (FATAL_ERROR "HDF5_PRECISION value \"${HDF5_PRECISION}\" option set to something other than FLOAT or DOUBLE.") +endif () + #------------------------------------------------------------------------------- # Sanitizer options #------------------------------------------------------------------------------- diff --git a/build.sh b/build.sh index 3cbe4709..b434d4e0 100755 --- a/build.sh +++ b/build.sh @@ -12,7 +12,7 @@ cmake -DCMAKE_BUILD_TYPE:String=$BUILD_TYPE \ -DUSE_PSPLINE=ON \ -DUSE_FIO=OFF \ -DKORC_TEST=OFF \ - -DCMAKE_Fortran_FLAGS="-DHDF5_DOUBLE_PRESICION -malign-double -fconvert='big-endian'" \ + -DCMAKE_Fortran_FLAGS="-malign-double -fconvert='big-endian'" \ -DCMAKE_C_FLAGS="-malign-double" \ -DCMAKE_CXX_FLAGS="-malign-double" \ -DCMAKE_Fortran_FLAGS_DEBUG="-g3 -ffpe-trap=zero,overflow -fbacktrace" \