
INC	:= -I$(CUDA_HOME)/include -I. -Iheaders
LIB	:= -L$(CUDA_HOME)/lib64 -lcudart -lcurand

NVCCFLAGS	:= -lineinfo -arch=sm_89 --ptxas-options=-v --use_fast_math --default-stream per-thread

mcqmc06:	mcqmc06.cu mcqmc06_device.cu mlmc.cpp mlmc_test.cpp Makefile
	nvcc -o mcqmc06 mcqmc06.cu mcqmc06_device.cu $(INC) $(LIB) $(NVCCFLAGS)

mcqmc06_device.o:	mcqmc06_device.cu Makefile
	nvcc -c mcqmc06_device.cu -o mcqmc06_device.o $(INC) $(NVCCFLAGS)

mcqmc06.o:	mcqmc06.cu Makefile
	nvcc -c mcqmc06.cu -o mcqmc06.o $(INC) $(NVCCFLAGS)

reduction_test:	reduction_test.cu Makefile
	nvcc reduction_test.cu -o reduction_test $(INC) $(NVCCFLAGS) $(LIB)

clean:
	rm -f *.o mcqmc06 reduction_test
