include ../nessus.tmpl


GTKLIBS= -g $(GTKCONFIG_LIBS) $(GLIBCONFIG_LIBS)
INCLUDE = ${include} $(GTKCONFIG_CFLAGS) $(GLIBCONFIG_CFLAGS) -Igdchart0.94b -Igdchart0.94b/gd1.3
LIBS = `$(NESSUSCONFIG) --libs` $(X_LIBS) $(X_CFLAGS) $(GTKLIBS) \
	$(RUN_LIBS) $(C_R_LIB) gdchart0.94b/gd1.3/libgd.a -lm

NESSUS_INCLUDE=`./cflags`	

OBJS = auth.o \
       comm.o \
       sighand.o \
       xstuff.o \
       cli.o \
       parser.o \
       plugin_infos.o \
       preferences.o \
       families.o \
       attack.o \
       report.o \
       report_utils.o \
       nsr_output.o  \
       html_output.o \
       latex_output.o \
       text_output.o \
       xml_output.o \
       html_graph_output.o \
       splash_screen.o \
       error_dialog.o \
       password_dialog.o \
       monitor_dialog.o \
       prefs_dialog.o \
       prefs_dialog_misc.o \
       prefs_dialog_scan_opt.o \
       prefs_dialog_user.o \
       prefs_dialog_auth.o \
       prefs_dialog_plugins_prefs.o \
       prefs_plugins.o \
       prefs_target.o \
       prefs_about.o \
       prefs_kb.o \
       netmap.o \
       detached_index.o \
       read_target_file.o \
       gdchart0.94b/gdc.o \
       gdchart0.94b/price_conv.o \
       gdchart0.94b/gdc_pie.o \
       gdchart0.94b/gdchart.o \
       nessus.o

all : ${make_bindir}/nessus


${make_bindir}/nessus : nessus
	test -d ${make_bindir} || mkdir ${make_bindir}
	cp nessus ${make_bindir}

        
cflags : 
	@echo "$(NESSUS_CFLAGS) $(NESSUS_DEFS) $(INCLUDE)"  | sed 's/\"/\\\"/g' > cflags.tmp
	@echo "echo \"`cat cflags.tmp`\"" > cflags
	@rm cflags.tmp
	@chmod +x cflags

nessus : cflags $(OBJS) 
	$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS)  -o nessus $(LIBS)

detached_index.o : detached_index.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c detached_index.c
splash_screen.o : splash_screen.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c splash_screen.c 

preferences.o : preferences.c preferences.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c preferences.c 

prefs_dialog.o : prefs_dialog/prefs_dialog.c prefs_dialog/prefs_dialog.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog.c 

prefs_dialog_misc.o : prefs_dialog/prefs_dialog_misc.c prefs_dialog/prefs_dialog_misc.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog_misc.c 

prefs_dialog_scan_opt.o : prefs_dialog/prefs_dialog_scan_opt.c\
 prefs_dialog/prefs_dialog_scan_opt.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog_scan_opt.c 

prefs_target.o : prefs_dialog/prefs_target.c\
 prefs_dialog/prefs_target.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_target.c 

prefs_dialog_user.o : prefs_dialog/prefs_dialog_user.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog_user.c 

prefs_dialog_auth.o : prefs_dialog/prefs_dialog_auth.c         
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog_auth.c 

prefs_plugins.o : prefs_dialog/prefs_plugins.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_plugins.c 

prefs_dialog_plugins_prefs.o : prefs_dialog/prefs_dialog_plugins_prefs.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_dialog_plugins_prefs.c 

prefs_kb.o : prefs_dialog/prefs_kb.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_kb.c

error_dialog.o : error_dialog.c error_dialog.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c error_dialog.c 

families.o : families.c families.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c families.c 

plugin_infos.o : plugin_infos.c plugin_infos.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c plugin_infos.c 

main_window.o : main_window.c main_window.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c main_window.c 

nsr_output.o : nsr_output.c nsr_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c nsr_output.c 

html_output.o : html_output.c html_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c html_output.c 

text_output.o : text_output.c text_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c text_output.c 

xml_output.o : xml_output.c xml_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c xml_output.c

latex_output.o : latex_output.c latex_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c latex_output.c 

html_graph_output.o : html_graph_output.c html_graph_output.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c html_graph_output.c 

monitor_dialog.o : monitor_dialog.c monitor_dialog.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c monitor_dialog.c 

report_utils.o : report_utils.h report_utils.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c report_utils.c 
nessus.o : nessus.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c nessus.c 

sighand.o : sighand.c sighand.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c sighand.c 

auth.o : auth.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c auth.c 

comm.o : comm.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c comm.c 

report.o : report.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c report.c 

parser.o : parser.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c parser.c 

attack.o : attack.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c attack.c 

password_dialog.o : password_dialog.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c password_dialog.c 
xstuff.o : xstuff.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c xstuff.c 
cli.o : cli.c cli.h
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c cli.c
read_target_file.o : read_target_file.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c read_target_file.c 

prefs_about.o : prefs_dialog/prefs_about.c
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c prefs_dialog/prefs_about.c 

netmap.o : netmap.c 
	$(CC) $(CFLAGS) $(NESSUS_INCLUDE) -c netmap.c 

gdchart0.94b/gdc.o :
	cd gdchart0.94b && $(MAKE)

gdchart0.94b/gdchart.o :
	cd gdchart0.94b && $(MAKE)

gdchart0.94b/price_conv.o :
	cd gdchart0.94b && $(MAKE)

gdchart0.94b/gdc_pie.o :
	cd gdchart0.94b && $(MAKE)
clean :
	rm -f *.o nessus *~ cflags prefs_dialog/*.o
	cd gdchart0.94b && $(MAKE) clean
