###########################################
##       Main Executable MAKEFILE       ###
###########################################

# Path export
export SYSTEMC=$(SYSTEMC_PATH)
export SYSTEMC_LIB=$(SYSTEMC_LIB_PATH)
export XERCES=$(XERCES_PATH)

# Common Paths
export DSRC_PATH=$(CURDIR)/../../../src
export DOBJ_PUB=obj_pub
export DOBJ_GEN=obj_gen
export DEXE=exe

# FoRTReSS Library Path for Eclipse
export CLIB_PATH=/opt/eclipse/templates/lib/x86_64

# ForTReSS Executable
export FORTRESS_DIR=FoRTReSS
export FORTRESS_EXE_NAME=FoRTReSS
export FORTRESS_EXEC=$(FORTRESS_DIR)/exe/$(FORTRESS_EXE_NAME)

# RecoSim Executable
export RECOSIM_DIR=RecoSim
export RECOSIM_EXE_NAME=RecoSim
export RECOSIM_EXEC=$(RECOSIM_DIR)/exe/$(RECOSIM_EXE_NAME)

# Compilation options
export CXX = g++
export LD = g++

all: $(FORTRESS_EXEC) $(RECOSIM_EXEC)

$(FORTRESS_EXEC):
	@(cd $(FORTRESS_DIR) && $(MAKE))

$(RECOSIM_EXEC):
	@(cd $(RECOSIM_DIR) && $(MAKE))

.PHONY: clean mrproper $(FORTRESS_EXEC) $(RECOSIM_EXEC)

clean:
	@(cd $(FORTRESS_DIR) && $(MAKE) $@)
	@(cd $(RECOSIM_DIR) && $(MAKE) $@)

mrproper: clean
	@(cd $(FORTRESS_DIR) && $(MAKE) $@)
	@(cd $(RECOSIM_DIR) && $(MAKE) $@)
