diff --git a/src/gpu/GridGenerator/CMakeLists.txt b/src/gpu/GridGenerator/CMakeLists.txt
index 408de5368df43a20b23af13eb5c4ad0ce8b16227..feb01cadcafa356749f2d338b371de4f2ad57709 100644
--- a/src/gpu/GridGenerator/CMakeLists.txt
+++ b/src/gpu/GridGenerator/CMakeLists.txt
@@ -15,10 +15,12 @@ endif()
 # suppress warning 3123, 3126: calling a __host__ function from __host__ __device__ is not allowed
 # suppress warning 3152: __host__ function redeclared with __host__ __device__, hence treated as a __host__ __device__ function
 # suppress warning 3125, 3127: calling a constexpr __host__ function from a __host__ __device__ function
-target_compile_options(${library_name} PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:-Xcudafe "--diag_suppress=3123 --diag_suppress=3126 --diag_suppress=3152 --diag_suppress=3125 --diag_suppress=3127" >)
+set(cuda_warnings_suppressions "--diag_suppress=3123 --diag_suppress=3126 --diag_suppress=3152 --diag_suppress=3125 --diag_suppress=3127")
 
 # suppress warning 3311: unrecognized #pragma in device code
 if(NOT MSVC)
-    target_compile_options(${library_name} PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:-Xcudafe "--diag_suppress=3311" >)
+    set(cuda_warnings_suppressions "${cuda_warnings_suppressions} --diag_suppress=3311")
 endif()
 
+target_compile_options(${library_name} PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:-Xcudafe ${cuda_warnings_suppressions} >)
+