Browse Source

doc/tutorial/Makefile: improve rules
- opencl and cuda are detected separetely

Nathalie Furmento 14 years ago
parent
commit
ec8e3e42af
1 changed files with 12 additions and 6 deletions
  1. 12 6
      doc/tutorial/Makefile

+ 12 - 6
doc/tutorial/Makefile

@@ -17,22 +17,28 @@
 CFLAGS          +=      $$(pkg-config --cflags libstarpu)
 LDFLAGS         +=      $$(pkg-config --libs libstarpu)
 
-HAS_CUDA	=	$(shell pkg-config --libs libstarpu|grep cuda)
+HAS_CUDA	=	$(shell pkg-config --libs libstarpu|grep -i cuda)
 NVCC		?=	nvcc
+HAS_OPENCL	=	$(shell pkg-config --libs libstarpu|grep -i opencl)
 
 %.o: %.cu
 	nvcc $(CFLAGS) $< -c
 
 all: hello_world vector_scal
 
-ifeq ($(strip $(HAS_CUDA)),)
-vector_scal: vector_scal.o vector_scal_cpu.o 
+VECTOR_SCAL_PREREQUISITES	=	vector_scal.o vector_scal_cpu.o 
+ifneq ($(strip $(HAS_CUDA)),)
+VECTOR_SCAL_PREREQUISITES	+=	vector_scal_cuda.o
+VECTOR_SCAL_COMPILER		=	$(NVCC)
 else
-vector_scal: vector_scal.o vector_scal_cpu.o vector_scal_cuda.o vector_scal_opencl.o
-	$(NVCC) $(LDFLAGS) $^ -o $@
+VECTOR_SCAL_COMPILER		=	$(CC)
+endif
+ifneq ($(strip $(HAS_OPENCL)),)
+VECTOR_SCAL_PREREQUISITES += vector_scal_opencl.o
 endif
 
-
+vector_scal: $(VECTOR_SCAL_PREREQUISITES)
+	$(VECTOR_SCAL_COMPILER) $(LDFLAGS) $^ -o $@
 
 clean:
 	rm -f hello_world vector_scal *.o