CC = gcc
CFLAGS = -O2
LIBS = -lpthread

dns: dns.c csapp.h csapp.c
	$(CC) $(CFLAGS) -o dns $(LIBS) dns.c csapp.c

echoclient: echoclient.c csapp.h csapp.c
	$(CC) $(CFLAGS) -o echoclient $(LIBS) echoclient.c csapp.c

echoserveri: echoserveri.c csapp.h csapp.c
	$(CC) $(CFLAGS) -o echoserveri $(LIBS) echoserveri.c csapp.c

badcnt: badcnt.c csapp.c csapp.h
	$(CC) $(CFLAGS) -o badcnt $(LIBS) badcnt.c csapp.c

oldbadcnt: oldbadcnt.c csapp.c csapp.h
	$(CC) $(CFLAGS) -o oldbadcnt $(LIBS) oldbadcnt.c csapp.c


goodcnt: goodcnt.c csapp.c csapp.h
	$(CC) $(CFLAGS) -o goodcnt $(LIBS) goodcnt.c csapp.c

deadcnt: deadcnt.c csapp.c csapp.h
	$(CC) $(CFLAGS) -o deadcnt $(LIBS) deadcnt.c csapp.c

cnt.s: cnt.c
	$(CC) $(CFLAGS) -S cnt.c

cnt.d: cnt.c
	$(CC) $(CFLAGS) -c cnt.c	
	objdump -D cnt.o > cnt.d