diff -r 000000000000 -r 3547b885df7e Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Thu Oct 25 16:40:22 2007 +0200 @@ -0,0 +1,57 @@ +CCFLAGS=-Wall -O3 -I./src +LDFLAGS= + +ifeq ($(OS), Windows_NT) + CCFLAGS+=-I"C:/Program Files/Python25/include" + LDFLAGS+=-L"C:\Program Files\Python25\libs" -lpython25 + MODULENAME=raytracer.pyd +else + CCFLAGS+=-fPIC -I/usr/include/python2.4 + MODULENAME=raytracermodule.so +endif + +# optimisations +#CCFLAGS+=-pipe -fomit-frame-pointer -ffast-math -msse3 + + +# TARGETS +######### + +all: python-module + +python-module: $(MODULENAME) + +tests: testvector testmatrix + +clean: + rm -f *.o $(MODULENAME) testvector testmatrix + + +# RULES +####### + +%.o: src/%.cc + $(CXX) -c -o $@ src/$*.cc $(CCFLAGS) + +test%: tests/%.cc + $(CXX) -o $@ tests/$*.cc $(CCFLAGS) + ./$@ + + +# DEPENDENCIES +############## + +# C++ raytracer +vector.o: src/vector.cc src/vector.h +matrix.o: src/matrix.cc src/matrix.h src/vector.h +noise.o: src/noise.cc src/noise.h +scene.o: src/scene.cc src/scene.h src/vector.h src/noise.h +raytracer.o: src/raytracer.cc src/raytracer.h src/scene.h src/vector.h src/noise.h + +# python module +raytracermodule.o: src/raytracermodule.cc src/raytracer.h src/scene.h src/vector.h +$(MODULENAME): raytracermodule.o raytracer.o scene.o noise.o + $(CXX) $^ -shared -o $@ $(LDFLAGS) + +# library tests +testvector: tests/vector.cc src/vector.h