SDL_CONFIG=$(shell sdl-config --cflags)
SDL_LIBS=$(shell sdl-config --libs)
-CFLAGS=$(SDL_CONFIG) -Wall -O0 -g
+CFLAGS=$(SDL_CONFIG) -Wall -O2 -g
-LIBS=$(SDL_LIBS) -lm
+LIBS=$(SDL_LIBS) -lm -lrt
CC=gcc
SPARSE=sparse
CHECKPATCH=/usr/src/linux/scripts/checkpatch.pl
-TESTOBJS=main.o random.o vector.o planet.o
+PLANET_OBJS=main.o random.o vector.o planet.o camera.o quadtree.o
+PLANET_DEBUG_OBJS= $(patsubst %.o,%-debug.o,$(PLANET_OBJS))
-sdl-planet: $(TESTOBJS)
- gcc $(LIBS) -o $@ $(TESTOBJS)
+sdl-planet: $(PLANET_OBJS)
+ gcc $(LIBS) -o $@ $(PLANET_OBJS)
+
+debug-planet: $(PLANET_DEBUG_OBJS)
+ gcc $(LIBS) -o $@ $(PLANET_DEBUG_OBJS) -DDEBUG
.c.o:
@echo -e "\tCC\t" $@
$(CHECKPATCH) -f $<
endif
+%-debug.o: %.c
+ @echo -e "\tCC\t" $@
+ @$(CC) -MMD -MF .$@.d $(CFLAGS) -O0 -c $< -o $@
+
TAGS:
@echo -e "\tTAGS\t"
@etags *.[ch]
clean:
- rm -rfv $(TESTOBJS) *~ sdl-planet TAGS .*.d
+ rm -rfv $(PLANET_OBJS) $(PLANET_DEBUG_OBJS) *~ sdl-planet TAGS .*.d \
+ debug-planet
.PHONY: all clean TAGS