# Paths

BOG_DIR=../../../bog

vpath %.h ${BOG_DIR}/src
vpath %.cu ${BOG_DIR}/src

# Includes

include ${BOG_DIR}/common.mk

# Variables

sun_normal_%.o : BLOCK_SIZE=$*

EXTRA_LDFLAGS += -lGLU -lGL -lGLEW -lSDL -lhdf5 -lpng -lglfw -lpython2.7
EXTRA_NVCCFLAGS += -DBLOCK_SIZE=${BLOCK_SIZE} -DLINEAR_TEXTURE
INCLUDES += -I${BOG_DIR}/src -I/usr/include/python2.7/ -I/usr/lib64/python2.7/site-packages/numpy/core/include/

TARGETS = sun_normal_32 \
     sun_normal_64 \
     sun_normal_96 \
     sun_normal_128 \
     sun_normal_160 \
     sun_normal_192 \
     sun_normal_224 \
     sun_normal_256 \
     sun_normal_288 \
     sun_normal_320 \
     sun_normal_352 \
     sun_normal_384 \
     sun_normal_416 \
     sun_normal_448 \
     sun_normal_480 \
     sun_normal_512 \
     sun_normal_576 \
     sun_normal_640 \
     sun_normal_704 \
     sun_normal_768 \
     sun_normal_832 \
     sun_normal_896 \
     sun_normal_960

# Rules & targets

all: ${TARGETS}

sun_normal_%.o : sun_normal.cu sun_normal_extra.cu \
                 bog_draw.cu bog_io.cu bog_kernel.cu bog_device.cu \
                 bog_init.cu bog_memory.cu
	$(NVCC) $(NVCCFLAGS) $(EXTRA_NVCCFLAGS) $(GENCODE_FLAGS) $(INCLUDES) -o $@ -c $<

sun_normal_% : sun_normal_%.o 
	$(GCC) $(CCFLAGS) -o $@ $+ $(LDFLAGS) $(EXTRA_LDFLAGS)

clean:
	rm -f ${TARGETS} *.o

