Makefile 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. #
  2. # Makefile
  3. #
  4. # my_rtrm
  5. #
  6. ifeq ($(PLATFORM),SCC)
  7. CFLAGS = -Wall -g
  8. SHELL=sh
  9. RCCEROOT=./RCCE_V2.0
  10. include $(RCCEROOT)/common/symbols
  11. PLATFORM_INCLUDES = $(RCCEINCLUDE)/RCCE.h
  12. MY_FLAGS += -DPLAT_SCC
  13. else
  14. CCOMPILE = gcc
  15. CFLAGS = -O0 -Wall -g #-O0 -Wextra
  16. MY_FLAGS += -DPLAT_LINUX
  17. #PLATFORM_INCLUDES = variables.h structs.h macros.h
  18. endif
  19. C_FILES_DIR = ./src
  20. H_FILES_DIR = ./src/include
  21. PLATFORM_INCLUDES += $(H_FILES_DIR)/variables.h $(H_FILES_DIR)/structs.h $(H_FILES_DIR)/macros.h
  22. OBJS=my_rtrm.o libfun.o nocfun.o sigaux.o controller.o common_node.o signal_handlers.o scc_signals.o idag_defs.o paxos_signal_handlers.o apps.o resource_negotiation.o $(ARCHIVE)
  23. exec_name=my_rtrm
  24. #
  25. #PAXOS OBJECTS
  26. #
  27. ifeq ($(SCEN),BASIC_PAXOS)
  28. MY_FLAGS += -DBASIC_PAXOS
  29. else
  30. MY_FLAGS += -DPLAIN
  31. endif
  32. ifeq ($(FAILURE),CONTROLLER)
  33. MY_FLAGS += -DCONTROLLER
  34. else ifeq ($(FAILURE),MANAGER)
  35. MY_FLAGS += -DMANAGER
  36. else ifeq ($(FAILURE),WORKER)
  37. MY_FLAGS += -DWORKER
  38. endif
  39. ifeq ($(DETECTOR), PFD)
  40. MY_FLAGS += -DPFD
  41. else ifeq ($(DETECTOR), EPFD)
  42. MY_FLAGS += -DEPFD
  43. else ifeq ($(DETECTOR), tPFD)
  44. MY_FLAGS += -DtPFD
  45. else ifeq ($(DETECTOR), tEPFD)
  46. MY_FLAGS += -DtEPFD
  47. endif
  48. #
  49. #
  50. #
  51. #
  52. #PAXOS SCENARIA
  53. #
  54. ifeq ($(IDAG_CONF),PAXOS_1)
  55. MY_FLAGS += -DPAXOS_CONF_1 -DIDAGS_4
  56. endif
  57. #
  58. #
  59. #
  60. ifeq ($(RESOURCE_ALGO), ORIGINAL)
  61. MY_FLAGS += -DRESOURCE_ALGO_ORIG
  62. else ifeq ($(RESOURCE_ALGO), UPDATED)
  63. MY_FLAGS += -DRESOURCE_ALGO_UPDATED
  64. else ifeq ($(RESOURCE_ALGO), UPDATED_GENEROUS)
  65. MY_FLAGS += -DRESOURCE_ALGO_UPDATED_GENEROUS
  66. else
  67. MY_FLAGS += -DRESOURCE_ALGO_ORIG
  68. endif
  69. ifeq ($(SINGLE_WORKER),1)
  70. MY_FLAGS += -DSINGLE_WORKER
  71. endif
  72. ifeq ($(ADAM_SIM),1)
  73. MY_FLAGS += -DADAM_SIM
  74. ifneq ($(SINGLE_IDAG),1)
  75. MY_FLAGS += -DSINGLE_IDAG
  76. endif
  77. exec_name=my_rtrm_adam
  78. endif
  79. ifeq ($(APPS_SIM),1)
  80. MY_FLAGS += -DARTIFICIAL_APPS_SIM
  81. endif
  82. ifeq ($(SINGLE_IDAG),1)
  83. MY_FLAGS += -DSINGLE_IDAG
  84. endif
  85. ifeq ($(VERBOSE_WORKER),1)
  86. MY_FLAGS += -DVERBOSE_WORKER
  87. endif
  88. ifeq ($(EXTRA_DELAY),1)
  89. MY_FLAGS += -DEXTRA_DELAY
  90. endif
  91. ifeq ($(IDAG_SLEEP),1)
  92. MY_FLAGS += -DIDAG_SLEEP
  93. exec_name=my_rtrm.idag_sleep
  94. endif
  95. ifeq ($(LOW_VOLTAGE),0)
  96. MY_FLAGS += -DLOW_VOLTAGE_0
  97. endif
  98. ifeq ($(LOW_VOLTAGE),1)
  99. MY_FLAGS += -DLOW_VOLTAGE_1
  100. endif
  101. ifeq ($(LOW_VOLTAGE),2)
  102. MY_FLAGS += -DLOW_VOLTAGE_2
  103. endif
  104. ifeq ($(LOW_VOLTAGE),3)
  105. MY_FLAGS += -DLOW_VOLTAGE_3
  106. endif
  107. ifeq ($(LOW_VOLTAGE),4)
  108. MY_FLAGS += -DLOW_VOLTAGE_4
  109. endif
  110. ifeq ($(LOW_VOLTAGE),5)
  111. MY_FLAGS += -DLOW_VOLTAGE_5
  112. endif
  113. ifeq ($(GREEDY_MANAGER),1)
  114. MY_FLAGS += -DGREEDY_MANAGER
  115. endif
  116. $(exec_name):$(OBJS)
  117. cd ./bin && $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o $(exec_name) $(OBJS) -pthread -lrt -lm
  118. nocfun.o: $(C_FILES_DIR)/noc_functions.c $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/idag_defs.h $(PLATFORM_INCLUDES)
  119. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/nocfun.o -c $(C_FILES_DIR)/noc_functions.c
  120. libfun.o: $(C_FILES_DIR)/libfunctions.c $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(PLATFORM_INCLUDES)
  121. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/libfun.o -c $(C_FILES_DIR)/libfunctions.c
  122. sigaux.o: $(C_FILES_DIR)/sig_aux.c $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/paxos_signal_handlers.h $(PLATFORM_INCLUDES)
  123. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/sigaux.o -c $(C_FILES_DIR)/sig_aux.c
  124. scc_signals.o: $(C_FILES_DIR)/scc_signals.c $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/paxos_signal_handlers.h $(PLATFORM_INCLUDES)
  125. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/scc_signals.o -c $(C_FILES_DIR)/scc_signals.c
  126. controller.o: $(C_FILES_DIR)/controller_core.c $(H_FILES_DIR)/controller_core.h $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/paxos_signal_handlers.h $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/idag_defs.h $(PLATFORM_INCLUDES)
  127. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/controller.o -c $(C_FILES_DIR)/controller_core.c
  128. common_node.o: $(C_FILES_DIR)/common_core.c $(H_FILES_DIR)/common_core.h $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/paxos_signal_handlers.h $(H_FILES_DIR)/apps.h $(PLATFORM_INCLUDES)
  129. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/common_node.o -c $(C_FILES_DIR)/common_core.c
  130. my_rtrm.o: $(C_FILES_DIR)/my_rtrm.c $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/controller_core.h $(H_FILES_DIR)/common_core.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/paxos_signal_handlers.h $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/idag_defs.h $(PLATFORM_INCLUDES)
  131. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/my_rtrm.o -c $(C_FILES_DIR)/my_rtrm.c
  132. signal_handlers.o: $(C_FILES_DIR)/signal_handlers.c $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/resource_negotiation.h $(PLATFORM_INCLUDES)
  133. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/signal_handlers.o -c $(C_FILES_DIR)/signal_handlers.c
  134. paxos_signal_handlers.o: $(C_FILES_DIR)/paxos_signal_handlers.c $(H_FILES_DIR)/libfunctions.h $(H_FILES_DIR)/my_rtrm.h $(H_FILES_DIR)/noc_functions.h $(H_FILES_DIR)/sig_aux.h $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/signal_handlers.h $(H_FILES_DIR)/sig_aux.h $(PLATFORM_INCLUDES)
  135. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/paxos_signal_handlers.o -c $(C_FILES_DIR)/paxos_signal_handlers.c
  136. idag_defs.o: $(C_FILES_DIR)/idag_defs.c $(H_FILES_DIR)/idag_defs.h $(H_FILES_DIR)/my_rtrm.h $(PLATFORM_INCLUDES)
  137. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/idag_defs.o -c $(C_FILES_DIR)/idag_defs.c
  138. apps.o: $(C_FILES_DIR)/apps.c $(H_FILES_DIR)/apps.h $(H_FILES_DIR)/scc_signals.h $(H_FILES_DIR)/libfunctions.h $(PLATFORM_INCLUDES)
  139. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/apps.o -c $(C_FILES_DIR)/apps.c
  140. resource_negotiation.o: $(C_FILES_DIR)/resource_negotiation.c $(H_FILES_DIR)/resource_negotiation.h $(H_FILES_DIR)/apps.h $(H_FILES_DIR)/noc_functions.h $(PLATFORM_INCLUDES)
  141. $(CCOMPILE) $(CFLAGS) $(MY_FLAGS) -o ./bin/resource_negotiation.o -c $(C_FILES_DIR)/resource_negotiation.c
  142. clean:
  143. rm -f ./bin/my_rtrm ./bin/my_rtrm_adam ./bin/*.o
  144. rm -rf ./../scenaria/6x6/paxos_log_files/*
  145. rm -rf ./../scenaria/6x6/log_files/*
  146. rm -rf ./../scenaria/6x6/app_logs/*