PROGRAM = ../oth_cuda.exe

OBJS    =          \
Main.obj           \
info_gpu.obj       \
check_gpu.obj      \
memory_gpu.obj     \
solve.obj          \
bicgstab.obj       \
copyV.obj          \
pbcX.obj           \
pbcY.obj           \
pbcZ.obj           \
prodmv.obj         \
matrixEx.obj       \
matrixEy.obj       \
matrixEz.obj       \
prodmvEx.obj       \
prodmvEy.obj       \
prodmvEz.obj       \
blas1c.obj         \
cuda_memory.obj    \
../sol/input_data.obj     \
../sol/input2.obj         \
../sol/monitor.obj        \
../sol/memory.obj         \
../sol/setup.obj          \
../sol/setupIndex.obj     \
../sol/arrayIndex.obj     \
../sol/setupMaterial.obj  \
../sol/setupBg.obj        \
../sol/setup2.obj         \
../sol/rhs.obj            \
../sol/planewaveEx.obj    \
../sol/planewaveEy.obj    \
../sol/planewaveEz.obj    \
../sol/planewave.obj      \
../sol/copyE.obj          \
../sol/eyee.obj           \
../sol/hyee.obj           \
../sol/cyee.obj           \
../sol/outputChars.obj    \
../sol/outputZin.obj      \
../sol/outputSpara.obj    \
../sol/outputCross.obj    \
../sol/outputCoupling.obj \
../sol/outputPloss.obj    \
../sol/ingeometry.obj     \
../sol/geomlines.obj      \
../sol/farfield.obj       \
../sol/writeout.obj       \
../sol/utils.obj          \
../sol/cputime.obj        \
../sol/plot3dGeom.obj     \
../sol/ev3d.obj

CC      = nvcc.exe
CFLAGS  = -O2 -I../include -allow-unsupported-compiler -Xcompiler "/wd4819 /wd4324 /W4"
LDFLAGS = -O2
LIBS    =

$(PROGRAM): $(OBJS)
	@echo "Loading $(PROGRAM) ... "
	@$(CC) -o $(PROGRAM) $(LDFLAGS) $(OBJS) $(LIBS)

.SUFFIXES: .cu

#planewaveEx.obj: ../sol/planewaveEx.c
#	$(CC) -c $(CFLAGS) $?
#planewaveEy.obj: ../sol/planewaveEy.c
#	$(CC) -c $(CFLAGS) $?
#planewaveEz.obj: ../sol/planewaveEz.c
#	$(CC) -c $(CFLAGS) $?
#outputPloss.obj: ../sol/outputPloss.c
#	$(CC) -c $(CFLAGS) $?

.cu.obj:
	$(CC) -c $(CFLAGS) $<

clean:
	del *.obj
