CC=gcc
COPT=-Wall

all: main.o nids.o sniff.o conn.o hash.o segment.o stream.o http.o
	$(CC) -o httpsniff main.o nids.o sniff.o conn.o hash.o segment.o stream.o http.o -lnids -lpcap -lnet -lglib-2.0 -lgthread-2.0 -lpthread

nonids: main.o nidsdummy.o sniff.o conn.o hash.o segment.o stream.o http.o
	$(CC) -o httpsniff main.o nidsdummy.o sniff.o conn.o hash.o segment.o stream.o http.o -lpcap

nids.o: nids.c nids.h
	$(CC) $(COPT) -c nids.c

nidsdummy.o: nidsdummy.c nids.h
	$(CC) $(COPT) -c nidsdummy.c

sniff.o: sniff.c conn.h config.h
	$(CC) $(COPT) -c sniff.c

conn.o: conn.c conn.h hash.h segment.h stream.h config.h
	$(CC) $(COPT) -c conn.c

segment.o: segment.c segment.h
	$(CC) $(COPT) -c segment.c

hash.o: hash.c hash.h conn.h config.h
	$(CC) $(COPT) -c hash.c

stream.o: stream.c stream.h config.h
	$(CC) $(COPT) -c stream.c

http.o: http.c http.h config.h
	$(CC) $(COPT) -c http.c

main.o: main.c sniff.h config.h
	$(CC) $(COPT) -c main.c

clean:
	rm -f *.o *~ httpsniff
