applications.mk 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. APP_DIR = $(PROJECT_ROOT)/applications
  2. LIB_DIR = $(PROJECT_ROOT)/lib
  3. CFLAGS += -I$(APP_DIR)
  4. C_SOURCES += $(shell find $(APP_DIR) -name *.c)
  5. CPP_SOURCES += $(shell find $(APP_DIR) -name *.cpp)
  6. # Use SRV_* for autostart app
  7. # Use APP_* for add app to build
  8. APP_RELEASE ?= 1
  9. ifeq ($(APP_RELEASE), 1)
  10. # Main services
  11. SRV_MENU = 1
  12. SRV_POWER = 1
  13. SRV_BT = 1
  14. SRV_CLI = 1
  15. SRV_SD_FILESYSTEM = 1
  16. SRV_INTERNAL_STORAGE = 1
  17. SRV_DOLPHIN = 1
  18. SRV_NOTIFICATION = 1
  19. # Main Apps
  20. APP_IRDA = 1
  21. APP_SUBGHZ = 1
  22. APP_LF_RFID = 1
  23. APP_NFC = 1
  24. APP_GPIO_DEMO = 1
  25. APP_MUSIC_PLAYER = 1
  26. APP_FLOOPPER_BLOOPPER = 1
  27. APP_IBUTTON = 1
  28. APP_ARCHIVE = 1
  29. # Debug and misc
  30. APP_GUI_TEST = 1
  31. APP_KEYPAD_TEST = 1
  32. APP_ACCESSOR = 1
  33. APP_SD_TEST = 1
  34. APP_VIBRO_DEMO = 1
  35. APP_SPEAKER_DEMO = 1
  36. APP_EXAMPLE_BLINK = 1
  37. APP_EXAMPLE_UART_WRITE = 1
  38. APP_EXAMPLE_INPUT_DUMP = 1
  39. APP_UNIT_TESTS = 1
  40. APP_IRDA_MONITOR = 1
  41. APP_VERTICAL_SCREEN = 1
  42. endif
  43. SRV_DOLPHIN ?= 0
  44. ifeq ($(SRV_DOLPHIN), 1)
  45. SRV_MENU = 1
  46. CFLAGS += -DSRV_DOLPHIN
  47. endif
  48. SRV_POWER ?= 0
  49. ifeq ($(SRV_POWER), 1)
  50. SRV_GUI = 1
  51. SRV_CLI = 1
  52. CFLAGS += -DSRV_POWER
  53. endif
  54. SRV_BT ?= 0
  55. ifeq ($(SRV_BT), 1)
  56. SRV_CLI = 1
  57. CFLAGS += -DSRV_BT
  58. endif
  59. SRV_MENU ?= 0
  60. ifeq ($(SRV_MENU), 1)
  61. CFLAGS += -DSRV_MENU
  62. APP_MENU = 1
  63. endif
  64. APP_MENU ?= 0
  65. ifeq ($(APP_MENU), 1)
  66. SRV_INPUT = 1
  67. SRV_GUI = 1
  68. CFLAGS += -DAPP_MENU
  69. endif
  70. APP_VERTICAL_SCREEN ?= 0
  71. ifeq ($(APP_VERTICAL_SCREEN), 1)
  72. CFLAGS += -DAPP_VERTICAL_SCREEN
  73. endif
  74. APP_IRDA_MONITOR ?= 0
  75. ifeq ($(APP_IRDA_MONITOR), 1)
  76. CFLAGS += -DAPP_IRDA_MONITOR
  77. endif
  78. APP_UNIT_TESTS ?= 0
  79. ifeq ($(APP_UNIT_TESTS), 1)
  80. CFLAGS += -DAPP_UNIT_TESTS
  81. endif
  82. APP_ARCHIVE ?= 0
  83. ifeq ($(APP_NFC), 1)
  84. CFLAGS += -DAPP_ARCHIVE
  85. APP_ARCHIVE = 1
  86. endif
  87. SRV_EXAMPLE_BLINK ?= 0
  88. ifeq ($(SRV_EXAMPLE_BLINK), 1)
  89. CFLAGS += -DSRV_EXAMPLE_BLINK
  90. APP_EXAMPLE_BLINK = 1
  91. endif
  92. APP_EXAMPLE_BLINK ?= 0
  93. ifeq ($(APP_EXAMPLE_BLINK), 1)
  94. CFLAGS += -DAPP_EXAMPLE_BLINK
  95. SRV_INPUT = 1
  96. endif
  97. SRV_EXAMPLE_UART_WRITE ?= 0
  98. ifeq ($(SRV_EXAMPLE_UART_WRITE), 1)
  99. CFLAGS += -DSRV_EXAMPLE_UART_WRITE
  100. APP_EXAMPLE_UART_WRITE = 1
  101. endif
  102. APP_EXAMPLE_UART_WRITE ?= 0
  103. ifeq ($(APP_EXAMPLE_UART_WRITE), 1)
  104. CFLAGS += -DAPP_EXAMPLE_UART_WRITE
  105. endif
  106. SRV_EXAMPLE_IPC ?= 0
  107. ifeq ($(SRV_EXAMPLE_IPC), 1)
  108. CFLAGS += -DSRV_EXAMPLE_IPC
  109. APP_EXAMPLE_IPC = 1
  110. endif
  111. APP_EXAMPLE_IPC ?= 0
  112. ifeq ($(APP_EXAMPLE_IPC), 1)
  113. CFLAGS += -DAPP_EXAMPLE_IPC
  114. endif
  115. SRV_EXAMPLE_INPUT_DUMP ?= 0
  116. ifeq ($(SRV_EXAMPLE_INPUT_DUMP), 1)
  117. CFLAGS += -DSRV_EXAMPLE_INPUT_DUMP
  118. APP_EXAMPLE_INPUT_DUMP = 1
  119. endif
  120. APP_EXAMPLE_INPUT_DUMP ?= 0
  121. ifeq ($(APP_EXAMPLE_INPUT_DUMP), 1)
  122. CFLAGS += -DAPP_EXAMPLE_INPUT_DUMP
  123. SRV_INPUT = 1
  124. endif
  125. SRV_EXAMPLE_QRCODE ?= 0
  126. ifeq ($(SRV_EXAMPLE_QRCODE), 1)
  127. CFLAGS += -DSRV_EXAMPLE_QRCODE
  128. APP_EXAMPLE_QRCODE = 1
  129. endif
  130. APP_EXAMPLE_QRCODE ?= 0
  131. ifeq ($(APP_EXAMPLE_QRCODE), 1)
  132. CFLAGS += -DAPP_EXAMPLE_QRCODE
  133. endif
  134. ifeq ($(APP_SUBGHZ), 1)
  135. CFLAGS += -DAPP_SUBGHZ
  136. SRV_INPUT = 1
  137. SRV_GUI = 1
  138. SRV_CLI = 1
  139. endif
  140. SRV_LF_RFID ?= 0
  141. ifeq ($(SRV_LF_RFID), 1)
  142. CFLAGS += -DSRV_LF_RFID
  143. APP_LF_RFID = 1
  144. endif
  145. APP_LF_RFID ?= 0
  146. ifeq ($(APP_LF_RFID), 1)
  147. CFLAGS += -DAPP_LF_RFID
  148. SRV_INPUT = 1
  149. SRV_GUI = 1
  150. endif
  151. APP_NFC ?= 0
  152. ifeq ($(APP_NFC), 1)
  153. CFLAGS += -DAPP_NFC
  154. SRV_MENU = 1
  155. SRV_INPUT = 1
  156. SRV_GUI = 1
  157. endif
  158. SRV_IRDA ?= 0
  159. ifeq ($(SRV_IRDA), 1)
  160. CFLAGS += -DSRV_IRDA
  161. APP_IRDA = 1
  162. endif
  163. APP_IRDA ?= 0
  164. ifeq ($(APP_IRDA), 1)
  165. CFLAGS += -DAPP_IRDA
  166. SRV_INPUT = 1
  167. SRV_GUI = 1
  168. endif
  169. SRV_SD_TEST ?= 0
  170. ifeq ($(SRV_SD_TEST), 1)
  171. CFLAGS += -DSRV_SD_TEST
  172. APP_SD_TEST = 1
  173. endif
  174. APP_SD_TEST ?= 0
  175. ifeq ($(APP_SD_TEST), 1)
  176. CFLAGS += -DAPP_SD_TEST
  177. SRV_INPUT = 1
  178. SRV_GUI = 1
  179. SRV_SD_FILESYSTEM = 1
  180. endif
  181. SRV_SPEAKER_DEMO ?= 0
  182. ifeq ($(SRV_SPEAKER_DEMO), 1)
  183. CFLAGS += -DSRV_SPEAKER_DEMO
  184. APP_SPEAKER_DEMO = 1
  185. endif
  186. APP_SPEAKER_DEMO ?= 0
  187. ifeq ($(APP_SPEAKER_DEMO), 1)
  188. CFLAGS += -DAPP_SPEAKER_DEMO
  189. SRV_INPUT = 1
  190. SRV_GUI = 1
  191. endif
  192. APP_VIBRO_DEMO ?= 0
  193. ifeq ($(APP_VIBRO_DEMO), 1)
  194. CFLAGS += -DAPP_VIBRO_DEMO
  195. SRV_INPUT = 1
  196. endif
  197. SRV_KEYPAD_TEST ?= 0
  198. ifeq ($(SRV_KEYPAD_TEST), 1)
  199. CFLAGS += -DSRV_KEYPAD_TEST
  200. APP_KEYPAD_TEST = 1
  201. endif
  202. APP_KEYPAD_TEST ?= 0
  203. ifeq ($(APP_KEYPAD_TEST), 1)
  204. CFLAGS += -DAPP_KEYPAD_TEST
  205. APP_KEYPAD_TEST = 1
  206. endif
  207. SRV_ACCESSOR ?= 0
  208. ifeq ($(SRV_ACCESSOR), 1)
  209. CFLAGS += -DSRV_ACCESSOR
  210. APP_ACCESSOR = 1
  211. endif
  212. APP_ACCESSOR ?= 0
  213. ifeq ($(APP_ACCESSOR), 1)
  214. CFLAGS += -DAPP_ACCESSOR
  215. APP_ACCESSOR = 1
  216. endif
  217. SRV_GPIO_DEMO ?= 0
  218. ifeq ($(SRV_GPIO_DEMO), 1)
  219. CFLAGS += -DSRV_GPIO_DEMO
  220. APP_GPIO_DEMO = 1
  221. endif
  222. APP_GPIO_DEMO ?= 0
  223. ifeq ($(APP_GPIO_DEMO), 1)
  224. CFLAGS += -DAPP_GPIO_DEMO
  225. endif
  226. SRV_MUSIC_PLAYER ?= 0
  227. ifeq ($(SRV_MUSIC_PLAYER), 1)
  228. CFLAGS += -DSRV_MUSIC_PLAYER
  229. APP_MUSIC_PLAYER = 1
  230. endif
  231. APP_MUSIC_PLAYER ?= 0
  232. ifeq ($(APP_MUSIC_PLAYER), 1)
  233. CFLAGS += -DAPP_MUSIC_PLAYER
  234. endif
  235. SRV_FLOOPPER_BLOOPPER ?= 0
  236. ifeq ($(SRV_FLOOPPER_BLOOPPER), 1)
  237. CFLAGS += -DSRV_FLOOPPER_BLOOPPER
  238. APP_FLOOPPER_BLOOPPER = 1
  239. endif
  240. APP_FLOOPPER_BLOOPPER ?= 0
  241. ifeq ($(APP_FLOOPPER_BLOOPPER), 1)
  242. CFLAGS += -DAPP_FLOOPPER_BLOOPPER
  243. endif
  244. SRV_IBUTTON ?= 0
  245. ifeq ($(SRV_IBUTTON), 1)
  246. CFLAGS += -DSRV_IBUTTON
  247. APP_IBUTTON = 1
  248. endif
  249. APP_IBUTTON ?= 0
  250. ifeq ($(APP_IBUTTON), 1)
  251. CFLAGS += -DAPP_IBUTTON
  252. endif
  253. SRV_GUI_TEST ?= 0
  254. ifeq ($(SRV_GUI_TEST), 1)
  255. CFLAGS += -DSRV_GUI_TEST
  256. APP_GUI_TEST = 1
  257. endif
  258. APP_GUI_TEST ?= 0
  259. ifeq ($(APP_GUI_TEST), 1)
  260. CFLAGS += -DAPP_GUI_TEST
  261. endif
  262. SRV_SDNFC ?= 0
  263. ifeq ($(SRV_SDNFC), 1)
  264. CFLAGS += -DSRV_SDNFC
  265. APP_SDNFC = 1
  266. endif
  267. APP_SDNFC ?= 0
  268. ifeq ($(APP_SDNFC), 1)
  269. CFLAGS += -DAPP_SDNFC
  270. endif
  271. # device drivers
  272. SRV_GUI ?= 0
  273. ifeq ($(SRV_GUI), 1)
  274. CFLAGS += -DSRV_GUI
  275. endif
  276. SRV_SD_FILESYSTEM ?= 0
  277. ifeq ($(SRV_SD_FILESYSTEM), 1)
  278. CFLAGS += -DSRV_SD_FILESYSTEM
  279. endif
  280. SRV_INTERNAL_STORAGE ?= 0
  281. ifeq ($(SRV_INTERNAL_STORAGE), 1)
  282. CFLAGS += -DSRV_INTERNAL_STORAGE
  283. endif
  284. SRV_INPUT ?= 0
  285. ifeq ($(SRV_INPUT), 1)
  286. CFLAGS += -DSRV_INPUT
  287. endif
  288. SRV_CLI ?= 0
  289. ifeq ($(SRV_CLI), 1)
  290. SRV_GUI = 1
  291. CFLAGS += -DSRV_CLI
  292. endif
  293. SRV_NOTIFICATION ?= 0
  294. ifeq ($(SRV_NOTIFICATION), 1)
  295. CFLAGS += -DSRV_NOTIFICATION
  296. endif