################################
##     FoRTReSS MAKEFILE     ###
################################

DSRC_PUB=./src
DSRC_GEN=./src_gen

CFLAGS=-Wno-reorder -O2 -s 
CXXFLAGS=-I$(DSRC_PUB) -I$(DSRC_GEN) -I$(XERCES)/include $(CFLAGS)
LDFLAGS=-L$(XERCES)/lib -L$(CLIB_PATH)
LIBS=-lxerces-c -lfortress

SRC_PUB	 := $(wildcard $(DSRC_PUB)/*.cpp)
SRC_GEN	 := $(wildcard $(DSRC_GEN)/*.cpp)

OBJS_PUB := $(SRC_PUB:$(DSRC_PUB)/%.cpp=$(DOBJ_PUB)/%.o)
OBJS_GEN := $(SRC_GEN:$(DSRC_GEN)/%.cpp=$(DOBJ_GEN)/%.o)
EXE      := $(DEXE)/$(FORTRESS_EXE_NAME)

all: $(EXE)

$(EXE) : $(OBJS_PUB) $(OBJS_GEN)
	mkdir -p $(DEXE)
	$(LD) $(LDFLAGS) $(OBJS_PUB) $(OBJS_GEN) -o $@ $(LIBS) 2>&1 | c++filt
	@echo ""
	@echo "Compilation successful!"

$(OBJS_PUB): $(DOBJ_PUB)/%.o : $(DSRC_PUB)/%.cpp
	mkdir -p $(DOBJ_PUB)
	$(CXX) $(CXXFLAGS) -c -o $@ $<

$(OBJS_GEN): $(DOBJ_GEN)/%.o : $(DSRC_GEN)/%.cpp
	mkdir -p $(DOBJ_GEN)
	$(CXX) $(CXXFLAGS) -c -o $@ $<

.PHONEY: clean
clean:
	-rm -f -r $(DOBJ_PUB)
	-rm -f -r $(DOBJ_GEN)
	-rm -f -r obj
	-rm -f *.txt
	-rm -r -f $(DEXE)

