From 99aa0e96f5fbd12cb516411455ceb882a10f7bce Mon Sep 17 00:00:00 2001
From: kutscher <kutscher@irmb.tu-bs.de>
Date: Thu, 12 Dec 2019 15:07:27 +0100
Subject: [PATCH] improves compatibility with VS 2019 and lower compute
 capabilities and fixes string include

---
 CMakeLists.txt                               | 9 ++++++---
 src/GksGpu/Definitions/AccumulatorDataType.h | 4 ++--
 src/VirtualFluids_GPU/Output/FileWriter.h    | 1 +
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c1f922247..3d672df90 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -92,15 +92,18 @@ sharedLibs()
 
 include(${CMAKE_SOURCE_DIR}/${cmakeMacroPath}/general/FindCompiler.cmake)
 configure_file(src/VirtualFluidsDefinitions.in.h VirtualFluidsDefinitions.h)
-if(MSVC)
+IF(MSVC)
   SET( CMAKE_CXX_FLAGS "/FI${CMAKE_BINARY_DIR}/VirtualFluidsDefinitions.h ${CMAKE_CXX_FLAGS}" )
 ELSE(MSVC)
   SET( CMAKE_CXX_FLAGS "-include ${CMAKE_BINARY_DIR}/VirtualFluidsDefinitions.h ${CMAKE_CXX_FLAGS}" )
 ENDIF(MSVC)
 
 # only use this with device of CC larger than 6.0
-set(CMAKE_CUDA_FLAGS " -arch=sm_60" CACHE STRING "" FORCE)
-
+IF(VF_DOUBLE_ACCURACY)
+	set(CMAKE_CUDA_FLAGS " -arch=sm_60" CACHE STRING "" FORCE)
+ELSE(VF_DOUBLE_ACCURACY)	
+	set(CMAKE_CUDA_FLAGS "" CACHE STRING "" FORCE)
+ENDIF(VF_DOUBLE_ACCURACY)
 set(CMAKE_CUDA_FLAGS_DEBUG " -G" CACHE STRING "" FORCE)
 
 
diff --git a/src/GksGpu/Definitions/AccumulatorDataType.h b/src/GksGpu/Definitions/AccumulatorDataType.h
index 83657c0b3..cda429e49 100644
--- a/src/GksGpu/Definitions/AccumulatorDataType.h
+++ b/src/GksGpu/Definitions/AccumulatorDataType.h
@@ -40,7 +40,7 @@
 //! precision accumulator can prevent undeterministic behavior
 //! that stems from the order of addition to the accumulator.
 
-//typedef float realAccumulator;
-typedef double realAccumulator;
+typedef float realAccumulator;
+//typedef double realAccumulator;
 
 #endif
diff --git a/src/VirtualFluids_GPU/Output/FileWriter.h b/src/VirtualFluids_GPU/Output/FileWriter.h
index c39d0acd6..6576a0877 100644
--- a/src/VirtualFluids_GPU/Output/FileWriter.h
+++ b/src/VirtualFluids_GPU/Output/FileWriter.h
@@ -34,6 +34,7 @@
 #define FILE_WRITER_H
 
 #include <vector>
+#include <string>
 
 #include "DataWriter.h"
 
-- 
GitLab