Makefile 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. ifeq ($(v),1)
  2. Q =
  3. else
  4. Q = @
  5. endif
  6. # we only use the local default cross-compilation tool
  7. CC = aarch64-none-linux-gnu-gcc
  8. IFLAGS = -idirafter dummyinc
  9. # CFLAGS = -O0 -g -Wshadow -Wformat -w -W -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-date-time
  10. CFLAGS = -O2 -g -Wshadow -Wformat -w -W -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-date-time
  11. CPUFLAGS = -mcpu=cortex-a55
  12. #FPFLAGS = -mfdivdu -mfloat-abi=hard -mhard-float -mdouble-float
  13. UI_SRC_DIR := tmp/app/ui
  14. UI_SRCS := \
  15. $(wildcard $(UI_SRC_DIR)/data/*.c) \
  16. $(wildcard $(UI_SRC_DIR)/data/menu/*.c) \
  17. $(wildcard $(UI_SRC_DIR)/app/*.c) \
  18. $(wildcard $(UI_SRC_DIR)/app/*/*.c) \
  19. $(wildcard $(UI_SRC_DIR)/comm/*.c) \
  20. $(wildcard $(UI_SRC_DIR)/service/*.c) \
  21. $(wildcard $(UI_SRC_DIR)/*.c) \
  22. $(wildcard $(UI_SRC_DIR)/ui/*.c) \
  23. $(wildcard $(UI_SRC_DIR)/ui/ui_common/*.c) \
  24. $(wildcard $(UI_SRC_DIR)/ui/ui_pages/*.c) \
  25. $(wildcard $(UI_SRC_DIR)/ui/ui_components/*.c) \
  26. $(wildcard $(UI_SRC_DIR)/ui/ui_theme/*.c)
  27. UI_OBJS := $(patsubst $(UI_SRC_DIR)/%.c,$(UI_SRC_DIR)/%.o,$(UI_SRCS))
  28. CFLAGS += -I$(FUXI_RT_LITE_PWD)/include
  29. CFLAGS += -I$(FUXI_BSP_PWD)/include
  30. CFLAGS += -I$(BSP_SHARE_PWD)
  31. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/get_keyword
  32. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/gps
  33. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/xdljd
  34. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/sys_api
  35. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/bluetooth
  36. CFLAGS += -I$(PRJ_PWD)/tmp/app_public/wavelib
  37. CFLAGS += -I$(PRJ_PWD)/tmp/xenomai/include
  38. CFLAGS += -I$(PRJ_PWD)/tmp/xenomai/include/xenomai
  39. CFLAGS += -I$(PRJ_PWD)/tmp/xenomai/include/xenomai/cobalt
  40. CFLAGS += -I$(PRJ_PWD)/tmp/xenomai/include/xenomai/trank
  41. CFLAGS += -I$(PRJ_PWD)/app
  42. CFLAGS += -I$(PRJ_PWD)
  43. CFLAGS += -I$(PRJ_PWD)/app/ui \
  44. -I$(PRJ_PWD)/app/ui/core \
  45. -I$(PRJ_PWD)/app/ui/core/lvgl \
  46. -I$(PRJ_PWD)/app/ui/core/lvgl/src \
  47. -I$(PRJ_PWD)/app/ui/core/lvgl_driver \
  48. -I$(PRJ_PWD)/app/ui/ui \
  49. -I$(PRJ_PWD)/app/ui/comm \
  50. -I$(PRJ_PWD)/app/ui/data \
  51. -I$(PRJ_PWD)/app/ui/app \
  52. -I$(PRJ_PWD)/app/ui/app/components \
  53. -I$(PRJ_PWD)/app/ui/service \
  54. -I$(PRJ_PWD)/app/ui/ui/ui_common \
  55. -I$(PRJ_PWD)/app/ui/ui/ui_pages \
  56. -I$(PRJ_PWD)/app/ui/ui/ui_theme \
  57. -I$(PRJ_PWD)/app/ui/ui/ui_components
  58. CFLAGS += $(GD_AREA)
  59. CFLAGS += $(CPU_TYPE)
  60. CFLAGS += $(MACHINE_TYPE)
  61. CFLAGS += -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__ -D__COBALT_WRAP__
  62. LDFLAGS += -Wl,--no-as-needed -Wl,@$(PRJ_PWD)/tmp/xenomai/lib/cobalt.wrappers -Wl,@$(PRJ_PWD)/tmp/xenomai/lib/modechk.wrappers -Wl,--wrap=main -Wl,--dynamic-list=$(PRJ_PWD)/tmp/xenomai/lib/dynlist.ld
  63. LIBDIRS = -L$(PRJ_PWD)/tmp/xenomai/lib
  64. LIBS = -lpthread -lm -lrt -lcobalt -lmodechk -lcopperplate -lalchemy
  65. LDFLAGS += -L$(PRJ_PWD)/app/ui/core -L$(PRJ_PWD)/app/ui
  66. LIBS += -llvgl
  67. OBJS = main_mod.o \
  68. tmp/rt_lite/source/rt.o \
  69. tmp/rt_lite/source/rt_clib_snprintf.o \
  70. tmp/rt_lite/source/rt_console.o \
  71. tmp/rt_lite/source/rt_env.o \
  72. tmp/rt_lite/source/rt_error.o \
  73. tmp/rt_lite/source/rt_fifo.o \
  74. tmp/rt_lite/source/rt_file.o \
  75. tmp/rt_lite/source/rt_log.o \
  76. tmp/rt_lite/source/rt_printf.o \
  77. tmp/rt_lite/source/rt_socket.o \
  78. tmp/rt_lite/source/rt_stat.o \
  79. tmp/rt_lite/source/rt_clib.o \
  80. \
  81. tmp/fuxi_bsp/source/ad7616.o \
  82. tmp/fuxi_bsp/source/bsp.o \
  83. tmp/fuxi_bsp/source/dido.o \
  84. \
  85. tmp/fuxi_bsp/source/mb.o \
  86. tmp/fuxi_bsp/source/dspi.o \
  87. tmp/fuxi_bsp/source/e2prom_emu.o \
  88. tmp/fuxi_bsp/source/equ_fuxi.o \
  89. tmp/fuxi_bsp/source/factor.o \
  90. tmp/fuxi_bsp/source/freq.o \
  91. tmp/fuxi_bsp/source/gpio.o \
  92. tmp/fuxi_bsp/source/gps.o \
  93. tmp/fuxi_bsp/source/i2c.o \
  94. tmp/fuxi_bsp/source/led_ftu.o \
  95. tmp/fuxi_bsp/source/pit.o \
  96. tmp/fuxi_bsp/source/rtc_rx8025.o \
  97. tmp/fuxi_bsp/source/uart.o \
  98. tmp/fuxi_bsp/source/ustimer.o \
  99. tmp/fuxi_bsp/source/watchdog.o \
  100. tmp/fuxi_bsp/source/fourier.o \
  101. tmp/fuxi_bsp/source/flexcan.o \
  102. tmp/fuxi_bsp/source/can_app.o \
  103. tmp/fuxi_bsp/source/aht20.o \
  104. tmp/fuxi_bsp/source/ch423s.o \
  105. tmp/fuxi_bsp/source/bsp_boardcheck.o \
  106. \
  107. tmp/bsp_share/bsp_shm.o \
  108. tmp/bsp_share/bsp_share.o \
  109. tmp/bsp_share/bsp_packet.o \
  110. tmp/bsp_share/bsp_ccu.o \
  111. tmp/bsp_share/bsp_ustimer.o \
  112. \
  113. tmp/app/history_db.o\
  114. tmp/app/app.o\
  115. tmp/app/Appconfig.o\
  116. tmp/app/ASCII.o\
  117. tmp/app/at_cmd.o\
  118. tmp/app/battery.o\
  119. tmp/app/channel.o\
  120. tmp/app/CommPowerModule.o\
  121. tmp/app/csv_rw.o\
  122. tmp/app/dcfactor.o\
  123. tmp/app/down_panel_prog.o\
  124. tmp/app/Down.o\
  125. tmp/app/encrypt_core.o\
  126. tmp/app/equ.o\
  127. tmp/app/fft.o\
  128. tmp/app/floatspc.o\
  129. tmp/app/Fmt.o\
  130. tmp/app/func.o\
  131. tmp/app/gen.o\
  132. tmp/app/gprs_aux.o\
  133. tmp/app/gprs_proc.o\
  134. tmp/app/gprs_vs_func.o\
  135. tmp/app/history_file.o\
  136. tmp/app/history_rcd.o\
  137. tmp/app/IEC101.o\
  138. tmp/app/IEC101_FILE.o\
  139. tmp/app/IEC104.o\
  140. tmp/app/IECComm.o\
  141. tmp/app/IECLINK.o\
  142. tmp/app/Modbus.o\
  143. tmp/app/iectable.o\
  144. tmp/app/MmiData.o\
  145. tmp/app/LcdComm.o\
  146. tmp/app/led.o\
  147. tmp/app/main.o\
  148. tmp/app/Maintain.o\
  149. tmp/app/mea.o\
  150. tmp/app/Menu2c.o\
  151. tmp/app/MmiDrv.o\
  152. tmp/app/myconf.o\
  153. tmp/app/net_104.o\
  154. tmp/app/net_debug.o\
  155. tmp/app/net_104link.o\
  156. tmp/app/net_maintain.o\
  157. tmp/app/oc.o\
  158. tmp/app/fsx.o\
  159. tmp/app/offtime.o\
  160. tmp/app/pda.o\
  161. tmp/app/PDA_FILE.o\
  162. tmp/app/plc.o\
  163. tmp/app/protect.o\
  164. tmp/app/protocol.o\
  165. tmp/app/ptl_pwrm.o\
  166. tmp/app/reclose.o\
  167. tmp/app/record.o\
  168. tmp/app/run_status.o\
  169. tmp/app/samint.o\
  170. tmp/app/sc1161y.o\
  171. tmp/app/serial_stat.o\
  172. tmp/app/set.o\
  173. tmp/app/SM2.o\
  174. tmp/app/sm2_dev.o\
  175. tmp/app/sntp.o\
  176. tmp/app/SOE.o\
  177. tmp/app/switch.o\
  178. tmp/app/Sys.o\
  179. tmp/app/sysTime.o\
  180. tmp/app/timer.o\
  181. tmp/app/uart_comm.o\
  182. tmp/app/UnitsLib.o\
  183. tmp/app/vol.o\
  184. tmp/app/FA.o\
  185. tmp/app/bzt.o\
  186. tmp/app/x509.o\
  187. tmp/app/FA_g.o\
  188. tmp/app/modify.o\
  189. tmp/app/xdljd.o\
  190. tmp/app/auth.o\
  191. tmp/app/lib61850.o\
  192. tmp/app/read_id.o\
  193. tmp/app/base64.o\
  194. tmp/app/can_board.o\
  195. tmp/app/others.o \
  196. \
  197. tmp/app/printf_e907.o\
  198. tmp/app/fuxi_shm_app.o\
  199. \
  200. tmp/app_public/xdljd/jdxx.o\
  201. tmp/app_public/get_keyword/get_keyword.o \
  202. tmp/app_public/gps/gps_uart.o \
  203. tmp/app_public/sys_api/sys_api.o\
  204. tmp/app_public/bluetooth/bluetooth.o\
  205. tmp/app_public/wavelib/wavelib.o\
  206. \
  207. tmp/xenomai/lib/xenomai/bootstrap.o\
  208. tmp/fuxi_bsp/source/shmem.o \
  209. tmp/fuxi_bsp/source/pps_sync.o \
  210. $(UI_OBJS)
  211. # tmp/lib61850.o\
  212. all:$(app_name)
  213. %.o:%.c
  214. @echo -e " CC $<"
  215. $(Q)$(CC) -c $< $(CFLAGS) $(IFLAGS) $(CPUFLAGS) $(FPFLAGS) $(LIBDIRS) -o $@
  216. $(app_name): $(OBJS)
  217. @echo -e " CC $@"
  218. $(Q)$(CC) -o $(app_name) $(OBJS) $(LIBDIRS) $(LIBS) $(LDFLAGS) $(CPUFLAGS) $(FPFLAGS)
  219. # %.o:%.c
  220. # @echo -e " CC $<"
  221. # @$(CC) -c $< $(CFLAGS) $(IFLAGS) $(CPUFLAGS) $(FPFLAGS) -o $@
  222. # $(app_name): $(OBJS)
  223. # @echo -e " CC $@"
  224. # @$(CC) -o $(app_name) $(OBJS) $(LINK) $(LIBS) $(LDFLAGS) $(CPUFLAGS) $(FPFLAGS)
  225. clean:
  226. echo "start cleaning..."
  227. rm -rf ../../tmp/
  228. rm -f ../../*.o
  229. rm -f ../../*.swp
  230. rm -rf ../../ko/*
  231. rm -rf ../../ko/*
  232. rm -rf ../../dtu_t536
  233. echo "remaining files:"
  234. ls -la ../../
  235. # rm -rf ../../tmp/ ../../*.o ../../*.swp ../../ko/*