# Sniffit Makefile 
#   - Maintained by: Brecht Claerhout
#

.PHONY : clean

#Some Vars
SNIFFIT    = sniffit.0.3.7.c
CC         = @CC@
LIBS       = @LIBS@
DEFS	   = @DEFS@
OS_OPT     = @OS_OPT@
OBJ_FLAG   = $(CFLAGS) -w -c
#OBJ_OPT    = -I./libpcap -L./libpcap
EXE_FLAG   = $(CFLAGS) -w -o sniffit
EXE_OPT    = -lpcap
EXE_OBJ    = sn_packets.o sn_generation.o sn_interface.o sn_cfgfile.o \
             sn_logfile.o sn_resolv.o
DEP_FILES  = sn_config.h ./libpcap/pcap.h sn_data.h sn_defines.h sn_plugins.h \
             sn_analyse.c sn_conn_desc.c \
             sn_packets.o \
             sn_generation.o sn_interface.o sn_cfgfile.o sn_logfile.o \
             sn_resolv.o

all: sniffit
	@echo "Succesfull compilation..."

sniffit: $(SNIFFIT) $(DEP_FILES)
#	cd libpcap; make; cd ..
	$(CC) $(EXE_FLAG) $(SNIFFIT) $(EXE_OBJ) $(EXE_OPT) $(LIBS) $(DEFS) $(OS_OPT) 
	strip sniffit

sn_cfgfile.o: sn_cfgfile.h sn_cfgfile.c sn_defines.h sn_structs.h sn_config.h
	$(CC) $(OBJ_FLAG) sn_cfgfile.c $(OBJ_OPT) $(DEFS)

sn_logfile.o: sn_logfile.h sn_logfile.c sn_defines.h sn_structs.h sn_config.h
	$(CC) $(OBJ_FLAG) $(GEN_OPT) sn_logfile.c $(OBJ_OPT) $(DEFS)

sn_packets.o: sn_packets.h sn_packets.c sn_defines.h sn_structs.h sn_config.h
	$(CC) $(OBJ_FLAG) $(GEN_OPT) sn_packets.c $(OBJ_OPT) $(DEFS)

sn_interface.o: sn_interface.h sn_interface.c sn_defines.h sn_structs.h \
                sn_generation.h sn_generation.c sn_config.h
	$(CC) $(OBJ_FLAG) $(GEN_OPT) sn_interface.c $(OBJ_OPT) $(DEFS)

sn_generation.o: sn_generation.h sn_generation.c sn_defines.h sn_structs.h \
                 sn_config.h
	$(CC) $(OBJ_FLAG) $(GEN_OPT) sn_generation.c $(OBJ_OPT) $(DEFS)

sn_resolv.o: sn_resolv.h sn_resolv.c sn_defines.h
	$(CC) $(OBJ_FLAG) $(GEN_OPT) sn_resolv.c $(OBJ_OPT) $(DEFS)

#Clean up everthing...
clean:
#	cd libpcap; make clean; rm -f config.cache; cd ..
	rm -f Makefile
	rm -f config.cache
	rm -f config.status
	rm -f config.log
#	rm -f ./libpcap/config.cache
#	rm -f ./libpcap/config.status
#	rm -f ./libpcap/config.log
	rm -f *.o sniffit 


syntax highlighted by Code2HTML, v. 0.9.1