Makefile 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. #topee imx6ull
  2. #CC=/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
  3. #htnice
  4. #CC=/usr/local/arm/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
  5. #mrzy
  6. #CC=/usr/local/arm/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-
  7. #am335x
  8. #CC=aarch64-htnice-linux-gnu-
  9. CC=arm-linux-gnueabihf-gcc
  10. # CC=arm-none-linux-gnueabihf-gcc-13.1.0
  11. #CC=arm-none-linux-gnueabihf-gcc --sysroot=/opt/cross/arm-none-linux-gnueabihf/sys-root/
  12. #CC=/home/lxl/usr/local/arm/4.8.3/bin/arm-none-linux-gnueabi-
  13. #CC=arm-poky-linux-gnueabi-gcc -march=armv7-a -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi
  14. #ubuntu
  15. #CC=
  16. #t3
  17. #. /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
  18. #CC=/root/t3/lichee/out/sun8iw11p1/linux/common/buildroot/host/usr/bin/arm-linux-gnueabihf-
  19. #LIBPATHS += -Lcomponent/goahead/build/linux-arm-default/lib
  20. #LIBS += -lgoahead
  21. # ifdef DEBUGBUILD
  22. # CFLAGS = -std=c99 -Wall -Werror -Wextra -fsanitize=address,undefined
  23. # LDFLAGS = -g3
  24. # else
  25. # CFLAGS = -std=c99 -Wall -Werror -Wextra -Os
  26. # LDFLAGS = -g
  27. # endif
  28. # CFLAGS=-flto -w -Wfatal-errors -Wall -Wextra -Wno-implicit-function-declaration -Wno-int-conversion -Wno-unused-parameter -Wno-unused-variable -Werror=format -Werror=incompatible-pointer-types
  29. # CFLAGS=-flto -Wfatal-errors -Wall -Wextra -Wno-implicit-function-declaration -Wno-int-conversion -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-comment -Werror=format -Werror=incompatible-pointer-types
  30. # CFLAGS=-flto -Wfatal-errors -Wno-implicit-function-declaration -Wno-int-conversion -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-comment -Werror=format -Werror=incompatible-pointer-types -Werror=implicit-int -Werror=lto-type-mismatch -Werror=return-type -Werror=conversion
  31. # CFLAGS=-Wfatal-errors -Wno-implicit-function-declaration -Wno-int-conversion -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-comment -Werror=format -Werror=incompatible-pointer-types -Werror=implicit-int
  32. LDFLAGS = -lpthread -lm -lrt -ldl -ggdb3
  33. CFLAGS=-flto -Wfatal-errors -Wno-implicit-function-declaration -Wno-int-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-unused-parameter -Wno-unused-variable -Wno-comment -Werror=format -Werror=incompatible-pointer-types -Werror=implicit-int
  34. SRCFILES = appl/main.c \
  35. appl/appl.c \
  36. appl/cloud/cloud.c \
  37. appl/tb/tb.c \
  38. appl/ems/ems_sm.c \
  39. appl/ems/ems.c \
  40. appl/ems/timeseg.c \
  41. appl/ems/estats.c \
  42. appl/ems/pcurv.c \
  43. appl/event/event.c \
  44. appl/power/power.c \
  45. platform/abs/plt.c\
  46. platform/abs/ctn.c\
  47. platform/abs/ess.c\
  48. platform/abs/pcs.c\
  49. platform/abs/pack.c\
  50. platform/abs/meter.c\
  51. platform/abs/ac.c\
  52. platform/abs/dehumi.c\
  53. platform/abs/env.c\
  54. platform/abs/plc.c\
  55. platform/abs/ups.c\
  56. platform/abs/fe.c\
  57. platform/abs/dido.c\
  58. platform/abs/fa.c\
  59. platform/util/misc/misc.c\
  60. platform/util/log/log.c\
  61. platform/util/tool/tool.c\
  62. platform/util/shm/shm.c\
  63. platform/util/mqtt/mqtt_sm.c\
  64. platform/util/mqtt/mqtt.c\
  65. platform/util/mqtt/mqtt_ringbuffer.c\
  66. platform/util/mqtt/mqtt_cache.c\
  67. platform/util/tbmqtt/tbmqtt_sm.c\
  68. platform/util/tbmqtt/tbmqtt.c\
  69. platform/util/tbmqtt/tbmqtt_ringbuffer.c\
  70. platform/util/tbmqtt/tbmqtt_cache.c\
  71. platform/util/comm/comm.c\
  72. platform/util/statemachine/sm.c\
  73. platform/device/chan/chan.c\
  74. platform/device/chan/chan_serial_ringbuffer.c\
  75. platform/device/chan/chan_socketcan_ringbuffer.c\
  76. platform/device/chan/chan_tcpservcan_ringbuffer.c\
  77. platform/device/chan/chan_checking.c\
  78. platform/device/chan/mbs.c\
  79. platform/device/ctn/cess2000_sm.c\
  80. platform/device/ctn/cess2000.c\
  81. platform/device/ctn/cell280_sm.c\
  82. platform/device/ctn/cell280.c\
  83. platform/device/ctn/zh200_sm.c\
  84. platform/device/ctn/zh200.c\
  85. platform/device/pcs/ies/ies1000_comm.c\
  86. platform/device/pcs/ies/ies1000_sm.c\
  87. platform/device/pcs/ies/ies1000.c\
  88. platform/device/pcs/itech/it6000_comm.c\
  89. platform/device/pcs/itech/it6000_sm.c\
  90. platform/device/pcs/itech/it6000.c\
  91. platform/device/pack/catl280a/catl280a_comm.c\
  92. platform/device/pack/catl280a/catl280a_sm.c\
  93. platform/device/pack/catl280a/catl280a.c\
  94. platform/device/pack/KL/KL_level2/KL_CommunicationIf_level2.c\
  95. platform/device/pack/KL/KL_level3/KL_CommunicationIf_level3.c\
  96. platform/device/pack/gt/gt_comm.c\
  97. platform/device/pack/gt/gt_sm.c\
  98. platform/device/pack/gt/gt.c\
  99. platform/device/pack/KL/KL_CommunicationIf.c\
  100. platform/device/pack/KL/KL_Function.c\
  101. platform/device/pack/KL/KL_StateMachine.c\
  102. platform/device/ac/tf_comm.c\
  103. platform/device/ac/tf_sm.c\
  104. platform/device/ac/tf.c\
  105. platform/device/ac/mc90hdnc1a_comm.c\
  106. platform/device/ac/mc90hdnc1a_sm.c\
  107. platform/device/ac/mc90hdnc1a.c\
  108. platform/device/ac/mc0051gs_comm.c\
  109. platform/device/ac/mc0051gs_sm.c\
  110. platform/device/ac/mc0051gs.c\
  111. platform/device/meter/abb_b23_4_comm.c\
  112. platform/device/meter/abb_b23_4_sm.c\
  113. platform/device/meter/abb_b23_4.c\
  114. platform/device/meter/dtsd1352_comm.c\
  115. platform/device/meter/dtsd1352_sm.c\
  116. platform/device/meter/dtsd1352.c\
  117. platform/device/meter/dlt645_comm.c\
  118. platform/device/meter/dlt645_sm.c\
  119. platform/device/meter/dlt645.c\
  120. platform/device/meter/dlt645_api_07.c\
  121. platform/device/meter/adl200_comm.c\
  122. platform/device/meter/adl200_sm.c\
  123. platform/device/meter/adl200.c\
  124. platform/device/env/rs_ws_n/rs_ws_n_comm.c\
  125. platform/device/env/rs_ws_n/rs_ws_n_sm.c\
  126. platform/device/env/rs_ws_n/rs_ws_n.c\
  127. platform/device/env/rh811ad053f/rh811ad053f_comm.c\
  128. platform/device/env/rh811ad053f/rh811ad053f_sm.c\
  129. platform/device/env/rh811ad053f/rh811ad053f.c\
  130. platform/device/env/cd1f3300/cd1f3300_comm.c\
  131. platform/device/env/cd1f3300/cd1f3300_sm.c\
  132. platform/device/env/cd1f3300/cd1f3300.c\
  133. platform/device/env/sga500e/sga500e_comm.c\
  134. platform/device/env/sga500e/sga500e_sm.c\
  135. platform/device/env/sga500e/sga500e.c\
  136. platform/device/plc/simatic_s7_comm.c\
  137. platform/device/plc/simatic_s7_sm.c\
  138. platform/device/plc/simatic_s7.c\
  139. platform/device/ups/e3ks_s_comm.c\
  140. platform/device/ups/e3ks_sm.c\
  141. platform/device/ups/e3ks.c\
  142. platform/device/mac/mac.c\
  143. appl/ctn_cal/ctn_cal.c\
  144. platform/device/pcs/sh/pws1_comm.c\
  145. platform/device/pcs/sh/pws1_sm.c\
  146. platform/device/pcs/sh/pws1.c\
  147. platform/device/pcs/n9/n9_comm.c\
  148. platform/device/pcs/n9/n9_sm.c\
  149. platform/device/pcs/n9/n9.c\
  150. platform/device/fe/yf2825/yf2825_comm.c\
  151. platform/device/fe/yf2825/yf2825_sm.c\
  152. platform/device/fe/yf2825/yf2825.c\
  153. platform/device/fe/rs311/rs311_comm.c\
  154. platform/device/fe/rs311/rs311_sm.c\
  155. platform/device/fe/rs311/rs311.c\
  156. platform/device/dehumi/sdcs_comm.c\
  157. platform/device/dehumi/sdcs_sm.c\
  158. platform/device/dehumi/sdcs.c \
  159. platform/device/dido/dido_zlgmcu_comm.c\
  160. platform/device/dido/dido_zlgmcu_sm.c\
  161. platform/device/dido/dido_zlgmcu.c\
  162. platform/device/fa/cw1310_comm.c\
  163. platform/device/fa/cw1310_sm.c\
  164. platform/device/fa/cw1310.c\
  165. platform/device/ac/evc/evc.c\
  166. platform/device/ac/evc/evc_sm.c\
  167. platform/device/ac/evc/evc_comm.c\
  168. COMPONENTS = component/freemodbus/modbus/ascii/mbascii.c \
  169. component/freemodbus/modbus/functions/mbfunccoils.c \
  170. component/freemodbus/modbus/functions/mbfuncdiag.c \
  171. component/freemodbus/modbus/functions/mbfuncdisc.c \
  172. component/freemodbus/modbus/functions/mbfuncholding.c \
  173. component/freemodbus/modbus/functions/mbfuncinput.c \
  174. component/freemodbus/modbus/functions/mbfuncother.c \
  175. component/freemodbus/modbus/functions/mbutils.c \
  176. component/freemodbus/modbus/rtu/mbcrc.c \
  177. component/freemodbus/modbus/rtu/mbrtu.c \
  178. component/freemodbus/modbus/tcp/mbtcp.c \
  179. component/freemodbus/modbus/mb.c \
  180. component/freemodbus/port/portevent.c \
  181. component/freemodbus/port/portother.c \
  182. component/freemodbus/port/portserial.c \
  183. component/freemodbus/port/porttcp.c \
  184. component/freemodbus/port/porttimer.c \
  185. component/libmodbus/src/modbus.c \
  186. component/libmodbus/src/modbus-data.c \
  187. component/libmodbus/src/modbus-rtu.c \
  188. component/libmodbus/src/modbus-tcp.c \
  189. component/sqlite/sqlite3.c \
  190. component/zlog/buf.c \
  191. component/zlog/category.c \
  192. component/zlog/category_table.c \
  193. component/zlog/conf.c \
  194. component/zlog/event.c \
  195. component/zlog/format.c \
  196. component/zlog/level.c \
  197. component/zlog/level_list.c \
  198. component/zlog/mdc.c \
  199. component/zlog/record.c \
  200. component/zlog/record_table.c \
  201. component/zlog/rotater.c \
  202. component/zlog/rule.c \
  203. component/zlog/spec.c \
  204. component/zlog/thread.c \
  205. component/zlog/zc_arraylist.c \
  206. component/zlog/zc_hashtable.c \
  207. component/zlog/zc_profile.c \
  208. component/zlog/zc_util.c \
  209. component/zlog/zlog.c \
  210. component/cJSON/cJSON.c \
  211. component/paho.mqtt.c-1.3.9/src/Base64.c \
  212. component/paho.mqtt.c-1.3.9/src/Clients.c \
  213. component/paho.mqtt.c-1.3.9/src/Heap.c \
  214. component/paho.mqtt.c-1.3.9/src/LinkedList.c \
  215. component/paho.mqtt.c-1.3.9/src/Log.c \
  216. component/paho.mqtt.c-1.3.9/src/Messages.c \
  217. component/paho.mqtt.c-1.3.9/src/MQTTClient.c \
  218. component/paho.mqtt.c-1.3.9/src/MQTTPacket.c \
  219. component/paho.mqtt.c-1.3.9/src/MQTTPacketOut.c \
  220. component/paho.mqtt.c-1.3.9/src/MQTTPersistence.c \
  221. component/paho.mqtt.c-1.3.9/src/MQTTPersistenceDefault.c \
  222. component/paho.mqtt.c-1.3.9/src/MQTTProperties.c \
  223. component/paho.mqtt.c-1.3.9/src/MQTTProtocolClient.c \
  224. component/paho.mqtt.c-1.3.9/src/MQTTProtocolOut.c \
  225. component/paho.mqtt.c-1.3.9/src/MQTTReasonCodes.c \
  226. component/paho.mqtt.c-1.3.9/src/MQTTTime.c \
  227. component/paho.mqtt.c-1.3.9/src/OsWrapper.c \
  228. component/paho.mqtt.c-1.3.9/src/SHA1.c \
  229. component/paho.mqtt.c-1.3.9/src/Socket.c \
  230. component/paho.mqtt.c-1.3.9/src/SocketBuffer.c \
  231. component/paho.mqtt.c-1.3.9/src/SSLSocket.c \
  232. component/paho.mqtt.c-1.3.9/src/StackTrace.c \
  233. component/paho.mqtt.c-1.3.9/src/Thread.c \
  234. component/paho.mqtt.c-1.3.9/src/Tree.c \
  235. component/paho.mqtt.c-1.3.9/src/utf-8.c \
  236. component/paho.mqtt.c-1.3.9/src/WebSocket.c\
  237. component/snowid/snowid.c \
  238. component/snowid/snowid_util.c \
  239. component/snowid/snowid_checkpoint.c \
  240. component/uuid4/src/uuid4.c \
  241. SRC = $(shell find platform/ -name "*.c") $(shell find appl/ -name "*.c") $(COMPONENTS)
  242. INCLUDES = $(addprefix -I,$(shell find appl/ -type d -print)) $(addprefix -I,$(shell find platform/ -type d -print)) \
  243. $(addprefix -I,$(shell find component/ -type d -print)) $(addprefix -I,$(shell find include/ -type d -print))
  244. all:
  245. mkdir -p ./bin/
  246. $(CC) $(CFLAGS) $(SRC) $(INCLUDES) -o bin/ctnd $(LDFLAGS)
  247. debug_mqtt:
  248. $(CC) $(CFLAGS) $(SRC) $(INCLUDES) -o bin/ctnd -DDEBUG_MQTT -lpthread -lm -lrt -ldl -ggdb3
  249. debug:
  250. $(CC) $(CFLAGS) $(SRC) $(INCLUDES) -o bin/ctnd -DDEBUG -lpthread -lm -lrt -ldl -ggdb3
  251. clean:
  252. rm ./bin/ctnd