Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / BUILDER / makefile / private / api / cuda / cuda_mkl.mk
diff --git a/WCudaMSE/BUILDER/makefile/private/api/cuda/cuda_mkl.mk b/WCudaMSE/BUILDER/makefile/private/api/cuda/cuda_mkl.mk
new file mode 100755 (executable)
index 0000000..5d48779
--- /dev/null
@@ -0,0 +1,104 @@
+# Version      : 0.0.6\r
+# Author       : Cedric.Bilat@he-arc.ch\r
+#\r
+#\r
+# https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/\r
+#\r
+\r
+ifndef __API_CUDA_MKL_MK__\r
+__API_CUDA_MKL_MK__=true\r
+\r
+##########################################\r
+#              MKL     Cuda                                     #\r
+##########################################\r
+\r
+\r
+#########################\r
+#               WINDOWS                #\r
+#########################\r
+\r
+ifeq ($(OS),Win)\r
+\r
+############\r
+# Visual   #\r
+############\r
+\r
+ifeq ($(COMPILATEUR),VISUAL)\r
+\r
+       #compil \r
+       NVCCFLAGS+= -I$(subst ;, -I,${MKL_INCLUDE})\r
+       \r
+       #link\r
+       NVCCLDFLAGS+= mkl_intel_lp64_dll.lib\r
+       NVCCLDFLAGS+= mkl_core_dll.lib\r
+       NVCCLDFLAGS+= mkl_intel_thread_dll.lib\r
+       \r
+       NVCCLDFLAGS+= -L$(subst ;, -L,${MKL_LIB64}) \r
+       \r
+       #runtime\r
+       API_BIN+=${MKL_BIN}\r
+               \r
+endif\r
+\r
+endif\r
+\r
+\r
+\r
+#########################\r
+#               LINUX                  #\r
+#########################\r
+\r
+ifeq ($(OS),Linux)\r
+\r
+############\r
+# GCC   #\r
+############\r
+\r
+ifeq  ($(COMPILATEUR),g++)\r
+\r
+       #compilation\r
+       #NVCCFLAGS+= -I/opt/intel/mkl/include\r
+       NVCCFLAGS+= -I$(subst :, -I,${MKL_INC})\r
+       \r
+       NVCCFLAGS+= -DMKL_ILP64 \r
+       #TODO a tester\r
+       #Intel fourni 2 fft, la sienne et une implementation de la libraire FFTW\r
+       #POur linker la version FFTW, utilisez les flag ci-dessous\r
+       #NVCCFLAGS+= -lfftw3_omp \r
+       #NVCCFLAGS+= -lfftw3\r
+       \r
+       \r
+       \r
+       #link\r
+       #NVCCLDFLAGS+= -L/opt/intel/mkl/lib/intel64 \r
+       NVCCLDFLAGS+= -L$(subst :, -L,${MKL_LIB}) \r
+       NVCCLDFLAGS+= -l$(subst :, -l,${MKL_LIB_GCC_LIBRARIES}) \r
+       \r
+       #NVCCLDFLAGS+= -lmkl_intel_ilp64\r
+       #NVCCLDFLAGS+= -lmkl_gnu_thread\r
+       #NVCCLDFLAGS+= -lmkl_core\r
+\r
+       #NVCCLDFLAGS+= -ldl\r
+       #NVCCLDFLAGS+= -lpthread\r
+       #NVCCLDFLAGS+= -lm\r
+       \r
+       #runtime\r
+       API_BIN+= $(MKL_LIB)\r
+               \r
+endif\r
+\r
+############\r
+# ARM   #\r
+############\r
+\r
+ifeq  ($(ARCH),arm)\r
+       #pas possible\r
+endif\r
+\r
+endif\r
+\r
+##########################################\r
+#                       END                                     #\r
+##########################################\r
+\r
+endif#__API_CUDA_MKL_MK__\r