##############################################################################
##
##  Papadimitriou Spiros
##  spapadim@cs.cmu.edu
##
##  GNU Makefile for 
##  CS213 - Lab assignment 3
##
##  Note:  You need to use 'gmake' instead of 'make'
##
##############################################################################

NAME=unknown
VERSION=1

ASSTDIR=/afs/cs.cmu.edu/academic/class/15213-s99/L3

# Uncomment only one of the following three:
DEFINES=-DALPHA
#DEFINES=-DLINUX
#DEFINES=

CC=gcc
CFLAGS=-Wall -g $(DEFINES)

CPP=gcc -E

INCDIR=
LIBDIR=

LIBS=

OBJS=ftime.o memlib.o malloc.o driver.o dump.o

##############################################################################

all: all-target

ifeq (Makefile.depend, $(wildcard Makefile.depend))
include Makefile.depend
all-target: malloc
else
all-target: depend
	@echo Please run make once again!
endif

##############################################################################

malloc: $(OBJS)
	$(CC) $(CFLAGS) $(INCDIR) $(LIBDIR) $(OBJS) $(LIBS) -o malloc

.c.o:
	$(CC) $(CFLAGS) $(INCDIR) $(LIBDIR) -c -o $*.o $<

depend dep:
	@echo Generating dependencies...
	$(CPP) -M $(CPPFLAGS) $(INCDIR) *.c >Makefile.depend

edclean:
	-rm *.bak *~

clean: edclean
	-rm -f $(OBJS) core
	-rm -f Makefile.depend

nuke: clean
	-rm -f malloc

##############################################################################

handin:
	cp malloc.c $(ASSTDIR)/handin/malloc-$(NAME)-$(VERSION).c

update:
	cp malloc.c $(ASSTDIR)/web/submit/malloc-$(NAME).c

