################################
##       Main MAKEFILE       ###
################################

# Path export
export SYSTEMC = FORTRESS_SYSTEMC_PATH
export SYSTEMC_LIB = FORTRESS_SYSTEMC_LIB_PATH
export XERCES = FORTRESS_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=FORTRESS_CLIB_PATH

# 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) $@)
