################     Do Not Hand Edit     #################
################   Changes will be lost   #################
################     Edit Makefile.in     #################

LIBS = -lpcap -lm -lnsl -lm -lmysqlclient -lssl -lcrypto
LDFLAGS = -L/usr/lib/mysql -L/usr/lib


INCLUDES = -I/usr/include/pcap
LIBNET = `libnet-config --defines --libs`
SNORT_DIR = ../snort-1.7

all: pass_rule.o hogwash 

clean:
	rm -f *.o core hogwash 

pass_rule.o: pass_rule.c pass_rule.h
	gcc -c -o pass_rule.o pass_rule.c $(INCLUDES)  $(LIBNET)
snort.o: $(SNORT_DIR)/snort.c $(SNORT_DIR)/snort.h
	gcc -c -o snort.o $(SNORT_DIR)/snort.c -DHOGWASH $(INCLUDES)

hogwash: hogwash.c hogwash.h pass_rule.o snort.o 
	gcc -o ../hogwash hogwash.c pass_rule.o snort.o\
	\
	$(SNORT_DIR)/checksum.o                   \
	$(SNORT_DIR)/decode.o                     \
	$(SNORT_DIR)/log.o                        \
	$(SNORT_DIR)/mstring.o                    \
	$(SNORT_DIR)/parser.o                     \
	$(SNORT_DIR)/plugbase.o                   \
	$(SNORT_DIR)/rules.o                      \
	$(SNORT_DIR)/snprintf.o                   \
	$(SNORT_DIR)/sp_dsize_check.o             \
	$(SNORT_DIR)/sp_icmp_code_check.o         \
	$(SNORT_DIR)/sp_icmp_id_check.o           \
	$(SNORT_DIR)/sp_icmp_seq_check.o          \
	$(SNORT_DIR)/sp_icmp_type_check.o         \
	$(SNORT_DIR)/sp_ip_fragbits.o             \
	$(SNORT_DIR)/sp_ip_id_check.o             \
	$(SNORT_DIR)/sp_ip_tos_check.o            \
	$(SNORT_DIR)/sp_interface.o		\
	$(SNORT_DIR)/sp_ipoption_check.o          \
	$(SNORT_DIR)/sp_pattern_match.o           \
	$(SNORT_DIR)/sp_react.o                   \
	$(SNORT_DIR)/sp_reference.o               \
	$(SNORT_DIR)/sp_respond.o                 \
	$(SNORT_DIR)/sp_rpc_check.o               \
	$(SNORT_DIR)/sp_session.o                 \
	$(SNORT_DIR)/sp_tcp_ack_check.o           \
	$(SNORT_DIR)/sp_tcp_flag_check.o          \
	$(SNORT_DIR)/sp_tcp_seq_check.o           \
	$(SNORT_DIR)/sp_ttl_check.o               \
	$(SNORT_DIR)/spo_alert_fast.o             \
	$(SNORT_DIR)/spo_alert_full.o             \
	$(SNORT_DIR)/spo_alert_scrub.o		\
	$(SNORT_DIR)/spo_alert_smb.o              \
	$(SNORT_DIR)/spo_alert_syslog.o           \
	$(SNORT_DIR)/spo_alert_unixsock.o         \
	$(SNORT_DIR)/spo_log_tcpdump.o            \
	$(SNORT_DIR)/spo_xml.o                    \
	$(SNORT_DIR)/spp_anomsensor.o             \
	$(SNORT_DIR)/spp_defrag.o                 \
	$(SNORT_DIR)/spp_http_decode.o            \
	$(SNORT_DIR)/spp_minfrag.o                \
	$(SNORT_DIR)/spp_portscan.o               \
	$(SNORT_DIR)/spp_tcp_stream.o             \
	$(SNORT_DIR)/spo_database.o		\
	$(SNORT_DIR)/spp_uni_scrub.o		\
	$(SNORT_DIR)/unidecode.o			\
	$(SNORT_DIR)/codes.o			\
	$(INCLUDES) $(LIBS) $(LIBNET)		\
	$(LDFLAGS) -lpthread
