X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Frasterize;a=blobdiff_plain;f=Makefile;h=1dee42f0110eb896d8a4ce9ca83d0d0d5b159b00;hp=b3e118f57f6faadb104bbb4f92ee613f6944f09b;hb=HEAD;hpb=0f2508a4f227523a6b7e54798487af19d06a6ce9 diff --git a/Makefile b/Makefile index b3e118f..1dee42f 100644 --- a/Makefile +++ b/Makefile @@ -1,33 +1,46 @@ -PROJECT = project1 -SRCS = main.c common.c list.c pixmap.c scene.c tri.c +PROJECT = rasterize +IUSE = BACKFACE_CULLING BLENDING DEPTH_TEST EXTRA_INLINE NDEBUG \ + CALC_NORMALS LIGHTING=3 SMOOTH_COLOR TEXTURING -VIEWER = feh +VIEWER = feh CC = gcc -CFLAGS = -std=c99 -O0 -ggdb -CPPFLAGS= -MMD -DDEBUG +EXEEXT = +CFLAGS = -std=c99 -O2 -g -pg +CPPFLAGS= -MMD $(IUSE:%=-D%) LDLIBS = -lm -OBJS = $(SRCS:%.c=%.o) -DEPS = $(OBJS:%.o=%.d) +SRCS = main.c array.c common.c list.c model.c raster.c rbtree.c scene.c +OBJS = $(SRCS:%.c=%.o) +DEPS = $(OBJS:%.o=%.d) +PROG = $(PROJECT)$(EXEEXT) -all: $(PROJECT) +all: $(PROG) -$(PROJECT): $(OBJS) +$(PROG): $(OBJS) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) clean: - rm -f $(PROJECT) $(OBJS) $(DEPS) + rm -f $(PROG) $(OBJS) $(DEPS) distclean: clean - rm -f scene.ppm scene.bmp + rm -f tags gmon.out -run: $(PROJECT) +realclean: distclean + rm -rf frames .*.raw .*.obj $(PROJECT).zip + +dist: + git archive HEAD --prefix=$(PROJECT)/ --output=$(PROJECT).zip + +run: $(PROG) ./$< && $(VIEWER) scene.ppm -debug: $(PROJECT) +debug: $(PROG) gdb ./$< -include $(DEPS) +$(OBJS): Makefile + +.PHONY: all clean distclean dist run debug