MODULES = ../modules/
RLSDIRECTORY  = ../rls/
OPT     = -O3 -Wall -I. -I$(MODULES) -I$(RLSDIRECTORY)
LINKOPT = -lm 

PRGNAME = cbrand

all: $(PRGNAME)

cbrand: cbrand.o cbrand.fac $(MODULES)memctrl.o $(MODULES)cb.o $(MODULES)interfc.o $(MODULES)file.o $(MODULES)owntypes.h $(MODULES)random.o $(MODULES)reporting.o $(MODULES)rls.o
	gcc $(OPT) $(LINKOPT) cbrand.o $(MODULES)memctrl.o $(MODULES)cb.o $(MODULES)interfc.o $(MODULES)file.o $(MODULES)random.o $(MODULES)reporting.o $(MODULES)rls.o -o cbrand
            
cbrand.o: cbrand.c cbrand.fac $(MODULES)parametr.c $(MODULES)parametr.h $(MODULES)memctrl.h $(MODULES)file.h $(MODULES)cb.h $(MODULES)interfc.h $(MODULES)random.h $(MODULES)random.c $(RLSDIRECTORY)reporting.h $(RLSDIRECTORY)reporting.c $(RLSDIRECTORY)rls.c $(RLSDIRECTORY)rls.h
	gcc $(OPT) -c cbrand.c



#   M O D U L E S

$(MODULES)cb.o: $(MODULES)cb.c
	gcc $(OPT) -c $(MODULES)cb.c -o $(MODULES)cb.o

$(MODULES)memctrl.o: $(MODULES)memctrl.c
	gcc $(OPT) -c $(MODULES)memctrl.c -o $(MODULES)memctrl.o

$(MODULES)file.o: $(MODULES)file.c
	gcc -c $(OPT) $(MODULES)file.c -o $(MODULES)file.o

$(MODULES)interfc.o: $(MODULES)interfc.c
	gcc -c $(OPT) $(MODULES)interfc.c -o $(MODULES)interfc.o

$(MODULES)random.o: $(MODULES)random.c
	gcc -c $(OPT) $(MODULES)random.c -o $(MODULES)random.o

# R L S   M O D U L E S

$(MODULES)reporting.o: $(RLSDIRECTORY)reporting.c
	gcc -c $(OPT) $(RLSDIRECTORY)reporting.c -o $(MODULES)reporting.o

$(MODULES)rls.o: $(RLSDIRECTORY)rls.c
	gcc -c $(OPT) $(RLSDIRECTORY)rls.c -o $(MODULES)rls.o
