tAdded new raytracer makefile - sphere - GPU-based 3D discrete element method algorithm with optional fluid coupling
 (HTM) git clone git://src.adamsgaard.dk/sphere
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) LICENSE
       ---
 (DIR) commit 0baac7842d73086a1e98f426473e9439a9af602e
 (DIR) parent 10800d34259399b383022bcd6aa50811023445c5
 (HTM) Author: Anders Damsgaard <adc@geo.au.dk>
       Date:   Mon,  3 Sep 2012 13:59:11 +0200
       
       Added new raytracer makefile
       
       Diffstat:
         M raytracer/Makefile                  |      48 ++++++++++++++++++-------------
       
       1 file changed, 28 insertions(+), 20 deletions(-)
       ---
 (DIR) diff --git a/raytracer/Makefile b/raytracer/Makefile
       t@@ -1,20 +1,27 @@
        NVCC=nvcc
        CC=g++
       -LINK=g++
       +LD=g++
        
       -CFLAGS=-c -Wall -O3 -fopenmp
       +CCFLAGS=-c -Wall -O3 -fopenmp
        LDFLAGS=-fopenmp
        
       -CSOURCES=main.cpp io.cpp rt_kernel_cpu.cpp
       -NVCCSOURCES=rt_kernel.cu
       +# Verbose compile?
       +#NVCCFLAGS+=--verbose
        
       -COBJECTS=$(CSOURCES:.cpp=.o)
       -CPUOBJECTS=$(CPUSOURCES:.cpp=.o)
       -NVCCOBJECTS=$(NVCCSOURCES:.cu=.o)
       -OBJECTS=$(COBJECTS) $(NVCCOBJECTS)
       +# Profile code?
       +#NVCCFLAGS+=-pg
        
       -EXECUTABLE=rt
       +# Debugable code?
       +#CCFLAGS+=-g
       +#NVCCFLAGS+=-g -G
       +
       +CCFILES=main.cpp o-ppm.cpp rt-kernel-cpu.cpp
       +CUFILES=rt-kernel.cu
       +CCOBJECTS=$(CCFILES:.cpp=.o)
       +CUOBJECTS=$(CUFILES:.cu=.o)
       +OBJECTS=$(CCOBJECTS) $(CUOBJECTS)
        
       +EXECUTABLE=rt
        
        # NVCC debug compilation
        NVCCFLAGS+=-use_fast_math -gencode arch=compute_20,code=sm_20
       t@@ -66,15 +73,20 @@ INCLUDES += -I$(CUDA_SDK)/common/inc
        #LIBS += -L$(CUDA_SDK)/lib #-lcutil_$(LIB_ARCH)
        LIBS += -L$(CUDA_SDK)/lib -lcutil_$(LIB_ARCH)
        
       -
        $(EXECUTABLE): $(OBJECTS)
       -        $(LINK) $(CXX_ARCH_FLAGS) $(LDFLAGS) $(LIBS) $^ -o $(EXECUTABLE)
       +        $(LD) $(CXX_ARCH_FLAGS) $(LDFLAGS) $(LIBS) $(OBJECTS) -o $(EXECUTABLE)
       +
       +main.o: main.cpp
       +        $(CC) $(CCFLAGS) $(INCLUDES) -c $< -o $@
       +
       +o-ppm.o: o-ppm.cpp
       +        $(CC) $(CCFLAGS) $(INCLUDES) -c $< -o $@
        
       -$(NVCCOBJECTS): $(NVCCSOURCES)
       -        $(NVCC) $(NVCCFLAGS) -c $(INCLUDES) $< -o $@
       +rt-kernel-cpu.o: rt-kernel-cpu.cpp
       +        $(CC) $(CCFLAGS) $(INCLUDES) -c $< -o $@
        
       -.cpp.o: $(COBJECTS) 
       -        $(CC) $(CFLAGS) $(CXX_ARCH_FLAGS) -c $(INCLUDES) $< -o $@
       +rt-kernel.o: rt-kernel.cu
       +        $(NVCC) $(NVCCFLAGS) $(INCLUDES) -c $< -o $@
        
        clean:
                rm -f doc/*.{log,aux,bbl,blg,out,gz}
       t@@ -82,9 +94,5 @@ clean:
                rm -f $(EXECUTABLE)
        
        edit:
       -        vim -p Makefile $(CSOURCES) $(NVCCSOURCES) header.h rt_kernel.h rt_kernel_cpu.h 
       +        vim -p Makefile $(CCFILES) $(CUFILES) *.h
        
       -run:
       -        ./rt GPU np5000.bin 800 800 out.ppm
       -        convert out.ppm out.png
       -        #open out.png