#
ifndef ESP_ROOT
$(error ESP_ROOT must be set -- Please fix the environment...)
endif
ifndef ESP_ARCH
$(error ESP_ARCH must be set -- Please fix the environment...)
endif
#
IDIR  = $(ESP_ROOT)/include
include $(IDIR)/$(ESP_ARCH)
LDIR  = $(ESP_ROOT)/lib
BDIR  = $(ESP_ROOT)/bin

ifeq ($(ESP_ARCH),DARWIN64) 
RPATH = -rpath @loader_path/
endif
ifeq ($(ESP_ARCH),DARWIN_ARM64)
RPATH = -rpath @loader_path/
endif


default:	$(LDIR)/theAIM.so $(BDIR)/tankCalc

$(LDIR)/theAIM.so:	theAIM.o $(LDIR)/libaimUtil.a
	-rm lib/theAIM.so
	$(CC) $(SOFLGS) -o $(LDIR)/theAIM.so theAIM.o \
		-L$(LDIR) -laimUtil -locsm -legads -ludunits2 -ldl $(RPATH) -lm

theAIM.o:	theAIM.c $(IDIR)/aimUtil.h $(IDIR)/capsTypes.h
	$(CC) -c $(COPTS) $(DEFINE) -I$(IDIR) theAIM.c

$(BDIR)/tankCalc:	tankCalc.o
	$(CC) $(COPTS) -o $(BDIR)/tankCalc tankCalc.o -lm

tankCalc.o:	tankCalc.c
	$(CC) -c $(COPTS) tankCalc.c

run:	default FORCE
	( cd examples; python session13.py )

FORCE:	;

clean:
	-rm theAIM.o tankCalc.o
	-rm -rf examples/theExample

dox:	doc/html/index.html
doc/html/index.html:	theAIM.c doc/aim_dox.cfg doc/aim_layout.xml
	(cd doc; doxygen aim_dox.cfg; cp html/customIndex.html html/index.html)

doxclean:
	(cd doc; rm -f INPUT; rm -rf html; rm -f aim.tag)

cleanall:	clean doxclean
	-rm $(LDIR)/theAIM.so $(BDIR)/tankCalc

