SYCL: 3D FFT using oneMKL
[alexxy/gromacs.git] / src / gromacs / fft / CMakeLists.txt
index 13571c1564bf416487451dd268f0616a5bbc02c6..6ad355884042825c3bf52d3dd31fe395149ebc3d 100644 (file)
@@ -74,17 +74,33 @@ elseif (GMX_GPU_OPENCL)
         gpu_3dfft_ocl.cpp
         )
 elseif (GMX_GPU_SYCL)
-    if (GMX_SYCL_HIPSYCL)
-        set(3dfft_sycl_source gpu_3dfft_sycl_rocfft.cpp)
-    else()
-        set(3dfft_sycl_source gpu_3dfft.cpp gpu_3dfft_sycl.cpp)
+    if (NOT GMX_GPU_HIPSYCL AND GMX_FFT_MKL)
+            gmx_add_libgromacs_sources(
+            gpu_3dfft_sycl_mkl.cpp
+            )
+        _gmx_add_files_to_property(SYCL_SOURCES
+            gpu_3dfft_sycl_mkl.cpp
+            )
+    endif()
+    if (GMX_GPU_HIPSYCL)
+            gmx_add_libgromacs_sources(
+            gpu_3dfft_sycl_rocfft.cpp
+            )
+        _gmx_add_files_to_property(SYCL_SOURCES
+            gpu_3dfft_sycl_rocfft.cpp
+            )
     endif()
     gmx_add_libgromacs_sources(
-        # SYCL-specific sources
-        ${3dfft_sycl_source}
+        gpu_3dfft_sycl.cpp
         )
     _gmx_add_files_to_property(SYCL_SOURCES
-        ${3dfft_sycl_source}
+        gpu_3dfft_sycl.cpp
+        gpu_3dfft.cpp
+        )
+else()
+    gmx_add_libgromacs_sources(
+        # Stub sources for CPU-only build
+        gpu_3dfft.cpp
         )
 endif()