
CXX = g++
CXXFLAGS = -Wall -g -Ipthreads/include
LDFLAGS = -g -Lpthreads/lib
LIBS = -lpthread

EXE = thttpd

OBJS =	Config.o  Http.o Server.o Stream.o String.o Table.o \
	error.o file.o main.o util.o

all:	$(EXE) io

.SUFFIXES: .cc

.cc.o:
	$(CXX) $(CXXFLAGS) -c $< -o $@

$(EXE):	$(OBJS)
	$(CXX) $(LDFLAGS) $(OBJS) $(LIBS) -o $(EXE)

io:	io.c
	gcc -o io io.c

clean:
	rm -f $(OBJS) $(EXE) io

Config.o : Config.cc threads.h util.h error.h Config.h Table.h Stream.h String.h
Http.o : Http.cc threads.h util.h file.h Http.h Stream.h String.h Config.h Table.h
Server.o : Server.cc threads.h error.h util.h Server.h
Stream.o : Stream.cc threads.h error.h util.h Stream.h String.h
String.o : String.cc threads.h String.h util.h
Table.o : Table.cc threads.h util.h Table.h
error.o : error.cc threads.h error.h
file.o : file.cc threads.h file.h util.h error.h Stream.h String.h Config.h \
  Table.h
main.o : main.cc threads.h util.h error.h Server.h Stream.h String.h Http.h \
  Config.h Table.h
util.o : util.cc threads.h util.h String.h

