applications.mk 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  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. APP_RELEASE ?= 1
  7. ifeq ($(APP_RELEASE), 1)
  8. # Services
  9. SRV_BT = 1
  10. SRV_CLI = 1
  11. SRV_DIALOGS = 1
  12. SRV_DOLPHIN = 1
  13. SRV_GUI = 1
  14. SRV_INPUT = 1
  15. SRV_LOADER = 1
  16. SRV_NOTIFICATION = 1
  17. SRV_POWER = 1
  18. SRV_RPC = 1
  19. SRV_STORAGE = 1
  20. # Apps
  21. SRV_DESKTOP = 1
  22. APP_ARCHIVE = 1
  23. APP_GPIO = 1
  24. APP_IBUTTON = 1
  25. APP_INFRARED = 1
  26. APP_LF_RFID = 1
  27. APP_NFC = 1
  28. APP_SUBGHZ = 1
  29. APP_ABOUT = 1
  30. APP_PASSPORT = 1
  31. # Plugins
  32. APP_MUSIC_PLAYER = 1
  33. APP_SNAKE_GAME = 1
  34. # Debug
  35. APP_ACCESSOR = 1
  36. APP_BLINK = 1
  37. APP_INFRARED_MONITOR = 1
  38. APP_KEYPAD_TEST = 1
  39. APP_SD_TEST = 1
  40. APP_VIBRO_TEST = 1
  41. APP_USB_TEST = 1
  42. APP_DISPLAY_TEST = 1
  43. APP_BLE_HID = 1
  44. APP_USB_MOUSE = 1
  45. APP_BAD_USB = 1
  46. APP_U2F = 1
  47. APP_UART_ECHO = 1
  48. endif
  49. # Applications
  50. # that will be shown in menu
  51. # Prefix with APP_*
  52. APP_INFRARED_MONITOR ?= 0
  53. ifeq ($(APP_INFRARED_MONITOR), 1)
  54. CFLAGS += -DAPP_INFRARED_MONITOR
  55. SRV_GUI = 1
  56. endif
  57. APP_UNIT_TESTS ?= 0
  58. ifeq ($(APP_UNIT_TESTS), 1)
  59. CFLAGS += -DAPP_UNIT_TESTS
  60. endif
  61. APP_ARCHIVE ?= 0
  62. ifeq ($(APP_ARCHIVE), 1)
  63. CFLAGS += -DAPP_ARCHIVE
  64. SRV_GUI = 1
  65. endif
  66. APP_BLINK ?= 0
  67. ifeq ($(APP_BLINK), 1)
  68. CFLAGS += -DAPP_BLINK
  69. SRV_GUI = 1
  70. endif
  71. APP_SUBGHZ ?= 0
  72. ifeq ($(APP_SUBGHZ), 1)
  73. CFLAGS += -DAPP_SUBGHZ
  74. SRV_GUI = 1
  75. SRV_CLI = 1
  76. endif
  77. APP_ABOUT ?= 0
  78. ifeq ($(APP_ABOUT), 1)
  79. CFLAGS += -DAPP_ABOUT
  80. SRV_GUI = 1
  81. endif
  82. APP_PASSPORT ?= 0
  83. ifeq ($(APP_PASSPORT), 1)
  84. CFLAGS += -DAPP_PASSPORT
  85. SRV_GUI = 1
  86. endif
  87. APP_LF_RFID ?= 0
  88. ifeq ($(APP_LF_RFID), 1)
  89. CFLAGS += -DAPP_LF_RFID
  90. SRV_GUI = 1
  91. endif
  92. APP_NFC ?= 0
  93. ifeq ($(APP_NFC), 1)
  94. CFLAGS += -DAPP_NFC
  95. SRV_GUI = 1
  96. endif
  97. APP_INFRARED ?= 0
  98. ifeq ($(APP_INFRARED), 1)
  99. CFLAGS += -DAPP_INFRARED
  100. SRV_GUI = 1
  101. endif
  102. APP_VIBRO_TEST ?= 0
  103. ifeq ($(APP_VIBRO_TEST), 1)
  104. CFLAGS += -DAPP_VIBRO_TEST
  105. SRV_GUI = 1
  106. endif
  107. APP_USB_TEST ?= 0
  108. ifeq ($(APP_USB_TEST), 1)
  109. CFLAGS += -DAPP_USB_TEST
  110. SRV_GUI = 1
  111. endif
  112. APP_UART_ECHO ?= 0
  113. ifeq ($(APP_UART_ECHO), 1)
  114. CFLAGS += -DAPP_UART_ECHO
  115. SRV_GUI = 1
  116. endif
  117. APP_DISPLAY_TEST ?= 0
  118. ifeq ($(APP_DISPLAY_TEST), 1)
  119. CFLAGS += -DAPP_DISPLAY_TEST
  120. SRV_GUI = 1
  121. endif
  122. APP_BATTERY_TEST ?= 0
  123. ifeq ($(APP_BATTERY_TEST), 1)
  124. CFLAGS += -DAPP_BATTERY_TEST
  125. SRV_GUI = 1
  126. endif
  127. APP_USB_MOUSE ?= 0
  128. ifeq ($(APP_USB_MOUSE), 1)
  129. CFLAGS += -DAPP_USB_MOUSE
  130. SRV_GUI = 1
  131. endif
  132. APP_BAD_USB ?= 0
  133. ifeq ($(APP_BAD_USB), 1)
  134. CFLAGS += -DAPP_BAD_USB
  135. SRV_GUI = 1
  136. endif
  137. APP_U2F ?= 0
  138. ifeq ($(APP_U2F), 1)
  139. CFLAGS += -DAPP_U2F
  140. SRV_GUI = 1
  141. endif
  142. APP_BLE_HID ?=0
  143. ifeq ($(APP_BLE_HID), 1)
  144. CFLAGS += -DAPP_BLE_HID
  145. SRV_GUI = 1
  146. endif
  147. APP_KEYPAD_TEST ?= 0
  148. ifeq ($(APP_KEYPAD_TEST), 1)
  149. CFLAGS += -DAPP_KEYPAD_TEST
  150. SRV_GUI = 1
  151. endif
  152. APP_ACCESSOR ?= 0
  153. ifeq ($(APP_ACCESSOR), 1)
  154. CFLAGS += -DAPP_ACCESSOR
  155. SRV_GUI = 1
  156. endif
  157. APP_GPIO ?= 0
  158. ifeq ($(APP_GPIO), 1)
  159. CFLAGS += -DAPP_GPIO
  160. SRV_GUI = 1
  161. endif
  162. APP_MUSIC_PLAYER ?= 0
  163. ifeq ($(APP_MUSIC_PLAYER), 1)
  164. CFLAGS += -DAPP_MUSIC_PLAYER
  165. SRV_GUI = 1
  166. endif
  167. APP_SNAKE_GAME ?= 0
  168. ifeq ($(APP_SNAKE_GAME), 1)
  169. CFLAGS += -DAPP_SNAKE_GAME
  170. SRV_GUI = 1
  171. endif
  172. APP_IBUTTON ?= 0
  173. ifeq ($(APP_IBUTTON), 1)
  174. CFLAGS += -DAPP_IBUTTON
  175. SRV_GUI = 1
  176. endif
  177. # Services
  178. # that will start with OS
  179. # Prefix with SRV_*
  180. SRV_BT ?= 0
  181. ifeq ($(SRV_BT), 1)
  182. CFLAGS += -DSRV_BT
  183. SRV_CLI = 1
  184. endif
  185. SRV_DESKTOP ?= 0
  186. ifeq ($(SRV_DESKTOP), 1)
  187. CFLAGS += -DSRV_DESKTOP
  188. SRV_DOLPHIN = 1
  189. SRV_STORAGE = 1
  190. SRV_GUI = 1
  191. endif
  192. SRV_DOLPHIN ?= 0
  193. ifeq ($(SRV_DOLPHIN), 1)
  194. CFLAGS += -DSRV_DOLPHIN
  195. SRV_DOLPHIN_STATE_DEBUG ?= 0
  196. ifeq ($(SRV_DOLPHIN_STATE_DEBUG), 1)
  197. CFLAGS += -DSRV_DOLPHIN_STATE_DEBUG
  198. endif
  199. endif
  200. SRV_POWER ?= 0
  201. ifeq ($(SRV_POWER), 1)
  202. CFLAGS += -DSRV_POWER
  203. SRV_GUI = 1
  204. SRV_CLI = 1
  205. endif
  206. SRV_RPC ?= 0
  207. ifeq ($(SRV_RPC), 1)
  208. CFLAGS += -DSRV_RPC
  209. ifeq ($(SRV_RPC_DEBUG), 1)
  210. CFLAGS += -DSRV_RPC_DEBUG
  211. endif
  212. SRV_CLI = 1
  213. endif
  214. SRV_LOADER ?= 0
  215. ifeq ($(SRV_LOADER), 1)
  216. CFLAGS += -DSRV_LOADER
  217. SRV_GUI = 1
  218. # Loader autostart hook
  219. LOADER_AUTOSTART ?= ""
  220. ifneq ($(strip $(LOADER_AUTOSTART)), "")
  221. CFLAGS += -DLOADER_AUTOSTART="\"$(LOADER_AUTOSTART)\""
  222. endif
  223. # Loader autostart hook END
  224. endif
  225. SRV_DIALOGS ?= 0
  226. ifeq ($(SRV_DIALOGS), 1)
  227. CFLAGS += -DSRV_DIALOGS
  228. SRV_GUI = 1
  229. endif
  230. SRV_GUI ?= 0
  231. ifeq ($(SRV_GUI), 1)
  232. CFLAGS += -DSRV_GUI
  233. SRV_INPUT = 1
  234. SRV_NOTIFICATION = 1
  235. endif
  236. SRV_INPUT ?= 0
  237. ifeq ($(SRV_INPUT), 1)
  238. CFLAGS += -DSRV_INPUT
  239. endif
  240. SRV_CLI ?= 0
  241. ifeq ($(SRV_CLI), 1)
  242. CFLAGS += -DSRV_CLI
  243. endif
  244. SRV_NOTIFICATION ?= 0
  245. ifeq ($(SRV_NOTIFICATION), 1)
  246. CFLAGS += -DSRV_NOTIFICATION
  247. endif
  248. SRV_STORAGE ?= 0
  249. ifeq ($(SRV_STORAGE), 1)
  250. CFLAGS += -DSRV_STORAGE
  251. endif