PROG = hashtbl OBJS = $(PROG).o hashfuncs.o CC = gcc DBGFLAGS = -g -O0 ifdef DEBUG CFLAGS = $(DBGFLAGS) -Wall -std=c99 else CFLAGS = -Wall -std=c99 -O2 -march=native -mtune=native endif LDFLAGS = -lm $(PROG): $(OBJS) $(CC) -o $(PROG) $(OBJS) $(LDFLAGS) $(PROG).o: $(PROG).c hashtbl.h hashfuncs.h $(CC) -c $(CFLAGS) $(PROG).c hashfuncs.o: hashfuncs.c hashfuncs.h $(CC) -c $(CFLAGS) hashfuncs.c .PHONY: clean clean: rm -f *.o ./$(PROG).exe