# top-level Azara makefile

# type 'make' or 'make all' to create help files and compile all programs
# type 'make help' to create help files
# (help files need to be created before code compiled)
# type 'make nongui' to compile non-graphical non-python programs
# type 'make gui' to compile graphical programs
# type 'make DataRows' to compile python shared library
# type 'make clean' to remove all *.o
# type 'make realclean' to remove all *.o and all programs

all: help nongui DataRows gui

help: \
	help_program

nongui: \
	process_program \
	plot2_nog_program \
	peak_program \
	extract_program \
	project_program \
	unblock_program \
	contours_program \
	combine_program \
	deflate_program \
	reflate_program \
	utility_program \
	connect_program \
	azara_program

gui: \
	plot2_program \
	plot1_program

DataRows: \
	DataRows

process_program:
	cd process; $(MAKE)

plot2_program:
	cd plot2; $(MAKE) plot2

plot2_nog_program:
	cd plot2; $(MAKE) plot2_nog

plot1_program:
	cd plot1; $(MAKE)

peak_program:
	cd peak; $(MAKE)

extract_program:
	cd extract; $(MAKE)

project_program:
	cd project; $(MAKE)

unblock_program:
	cd unblock; $(MAKE)

contours_program:
	cd contours; $(MAKE)

combine_program:
	cd combine; $(MAKE)

deflate_program:
	cd deflate; $(MAKE)

reflate_program:
	cd reflate; $(MAKE)

utility_program:
	cd utility; $(MAKE)

connect_program:
	cd connect; $(MAKE)

help_program:
	cd help; $(MAKE)

azara_program:
	cd azara; $(MAKE)

DataRows:
	cd DataRows; $(MAKE)

clean: \
	global_clean \
	process_clean \
	peak_clean \
	extract_clean \
	project_clean \
	unblock_clean \
	contours_clean \
	combine_clean \
	deflate_clean \
	reflate_clean \
	utility_clean \
	connect_clean \
	help_clean \
	azara_clean \
	DataRows_clean \
	plot2_clean \
	plot1_clean \

global_clean:
	cd global; $(MAKE) clean

process_clean:
	cd process; $(MAKE) clean

plot2_clean:
	cd plot2; $(MAKE) clean

plot1_clean:
	cd plot1; $(MAKE) clean

peak_clean:
	cd peak; $(MAKE) clean

extract_clean:
	cd extract; $(MAKE) clean

project_clean:
	cd project; $(MAKE) clean

unblock_clean:
	cd unblock; $(MAKE) clean

contours_clean:
	cd contours; $(MAKE) clean

combine_clean:
	cd combine; $(MAKE) clean

deflate_clean:
	cd deflate; $(MAKE) clean

reflate_clean:
	cd reflate; $(MAKE) clean

utility_clean:
	cd utility; $(MAKE) clean

connect_clean:
	cd connect; $(MAKE) clean

help_clean:
	cd help; $(MAKE) clean

azara_clean:
	cd azara; $(MAKE) clean

DataRows_clean:
	cd DataRows; $(MAKE) clean

realclean: \
	global_realclean \
	process_realclean \
	peak_realclean \
	extract_realclean \
	project_realclean \
	unblock_realclean \
	contours_realclean \
	combine_realclean \
	deflate_realclean \
	reflate_realclean \
	utility_realclean \
	connect_realclean \
	help_realclean \
	azara_realclean \
	DataRows_realclean \
	plot2_realclean \
	plot1_realclean

global_realclean:
	cd global; $(MAKE) realclean

process_realclean:
	cd process; $(MAKE) realclean

plot2_realclean:
	cd plot2; $(MAKE) realclean

plot1_realclean:
	cd plot1; $(MAKE) realclean

peak_realclean:
	cd peak; $(MAKE) realclean

extract_realclean:
	cd extract; $(MAKE) realclean

project_realclean:
	cd project; $(MAKE) realclean

unblock_realclean:
	cd unblock; $(MAKE) realclean

contours_realclean:
	cd contours; $(MAKE) realclean

combine_realclean:
	cd combine; $(MAKE) realclean

deflate_realclean:
	cd deflate; $(MAKE) realclean

reflate_realclean:
	cd reflate; $(MAKE) realclean

utility_realclean:
	cd utility; $(MAKE) realclean

connect_realclean:
	cd connect; $(MAKE) realclean

help_realclean:
	cd help; $(MAKE) realclean

azara_realclean:
	cd azara; $(MAKE) realclean

DataRows_realclean:
	cd DataRows; $(MAKE) realclean

