# PLEASE CONFIGURE: ( NO BACKSLASH AT END OF LINE !!!) ######################## EMUL = 1 # run in emul mode ? VC_HOME= C:\Programme\Microsoft Visual Studio 8\VC CUDA_COMMON_HOME= C:\Programme\NVIDIA Corporation\NVIDIA CUDA SDK\common # DERIVED VARIABLES ########################################################### CL_EXE = $(VC_HOME)\BIN\cl.exe LINK_EXE = $(VC_HOME)\BIN\link.exe # FIXED VARIABLES ############################################################# XCOMPILER_FLAGS = /EHsc,/W3,/nologo,/MTd VC_FLAGS = /EHsc /W3 /nologo /MTd # SUFFIX BASED BUILD RULES #################################################### .SUFFIXES: .cu .cu.obj: # workaround, ncvv can not be called from makefile directly. this is a known # issue !IF "$(EMUL)" == "1" SET nvcc_par= -I "$(CUDA_COMMON_HOME)\inc" -ccbin "$(CL_EXE)" \ -Xcompiler $(XCOMPILER_FLAGS) -deviceemu -c $*.cu !ELSE SET nvcc_par= -I "$(CUDA_COMMON_HOME)\inc" -ccbin "$(CL_EXE)" \ -Xcompiler $(XCOMPILER_FLAGS) -c $*.cu !ENDIF nvcc_compile.bat .cpp.obj: "$(CL_EXE)" /c $(VC_FLAGS) /I "$(CUDA_COMMON_HOME)\inc" $*.cpp .c.obj: "$(CL_EXE)" /c $(VC_FLAGS) /I "$(CUDA_COMMON_HOME)\inc" $*.c # INDIVIDUAL BUILD RULES FOR PROJECT ########################################## OBJECTS= template.obj main.obj template_gold.obj MAIN=main.exe # DO NOT FORGET: YOU NEED **TABS** FOR LISTING BUILD STEPS !!! all: $(OBJECTS) "$(LINK_EXE)" /OUT:$(MAIN) /LIBPATH:"$(VC_HOME)\lib" $(OBJECTS) \ "$(CUDA_LIB_PATH)\cudart.lib" "$(CUDA_COMMON_HOME)\lib\cutil32.lib" clean: del *.obj del $(MAIN) run: all $(MAIN)