applications.mk 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  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_POWER_OBSERVER = 1
  19. SRV_RPC = 1
  20. SRV_STORAGE = 1
  21. # Apps
  22. SRV_DESKTOP = 1
  23. APP_ARCHIVE = 1
  24. APP_GPIO = 1
  25. APP_IBUTTON = 1
  26. APP_IRDA = 1
  27. APP_LF_RFID = 1
  28. APP_NFC = 1
  29. APP_SUBGHZ = 1
  30. APP_ABOUT = 1
  31. APP_PASSPORT = 1
  32. # Plugins
  33. APP_MUSIC_PLAYER = 1
  34. APP_SNAKE_GAME = 1
  35. # Debug
  36. APP_ACCESSOR = 1
  37. APP_BLINK = 1
  38. APP_IRDA_MONITOR = 1
  39. APP_KEYPAD_TEST = 1
  40. APP_SD_TEST = 1
  41. APP_VIBRO_TEST = 1
  42. APP_USB_TEST = 1
  43. APP_DISPLAY_TEST = 1
  44. APP_BLE_KEYBOARD = 1
  45. APP_USB_MOUSE = 1
  46. APP_BAD_USB = 1
  47. APP_UART_ECHO = 1
  48. endif
  49. # Applications
  50. # that will be shown in menu
  51. # Prefix with APP_*
  52. APP_IRDA_MONITOR ?= 0
  53. ifeq ($(APP_IRDA_MONITOR), 1)
  54. CFLAGS += -DAPP_IRDA_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_IRDA ?= 0
  98. ifeq ($(APP_IRDA), 1)
  99. CFLAGS += -DAPP_IRDA
  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_USB_MOUSE ?= 0
  123. ifeq ($(APP_USB_MOUSE), 1)
  124. CFLAGS += -DAPP_USB_MOUSE
  125. SRV_GUI = 1
  126. endif
  127. APP_BAD_USB ?= 0
  128. ifeq ($(APP_BAD_USB), 1)
  129. CFLAGS += -DAPP_BAD_USB
  130. SRV_GUI = 1
  131. endif
  132. APP_BLE_KEYBOARD ?=0
  133. ifeq ($(APP_BLE_KEYBOARD), 1)
  134. CFLAGS += -DAPP_BLE_KEYBOARD
  135. SRV_GUI = 1
  136. endif
  137. APP_KEYPAD_TEST ?= 0
  138. ifeq ($(APP_KEYPAD_TEST), 1)
  139. CFLAGS += -DAPP_KEYPAD_TEST
  140. SRV_GUI = 1
  141. endif
  142. APP_ACCESSOR ?= 0
  143. ifeq ($(APP_ACCESSOR), 1)
  144. CFLAGS += -DAPP_ACCESSOR
  145. SRV_GUI = 1
  146. endif
  147. APP_GPIO ?= 0
  148. ifeq ($(APP_GPIO), 1)
  149. CFLAGS += -DAPP_GPIO
  150. SRV_GUI = 1
  151. endif
  152. APP_MUSIC_PLAYER ?= 0
  153. ifeq ($(APP_MUSIC_PLAYER), 1)
  154. CFLAGS += -DAPP_MUSIC_PLAYER
  155. SRV_GUI = 1
  156. endif
  157. APP_SNAKE_GAME ?= 0
  158. ifeq ($(APP_SNAKE_GAME), 1)
  159. CFLAGS += -DAPP_SNAKE_GAME
  160. SRV_GUI = 1
  161. endif
  162. APP_IBUTTON ?= 0
  163. ifeq ($(APP_IBUTTON), 1)
  164. CFLAGS += -DAPP_IBUTTON
  165. SRV_GUI = 1
  166. endif
  167. # Services
  168. # that will start with OS
  169. # Prefix with SRV_*
  170. SRV_BT ?= 0
  171. ifeq ($(SRV_BT), 1)
  172. CFLAGS += -DSRV_BT
  173. SRV_CLI = 1
  174. endif
  175. SRV_DESKTOP ?= 0
  176. ifeq ($(SRV_DESKTOP), 1)
  177. CFLAGS += -DSRV_DESKTOP
  178. SRV_DOLPHIN = 1
  179. SRV_STORAGE = 1
  180. SRV_GUI = 1
  181. endif
  182. SRV_DOLPHIN ?= 0
  183. ifeq ($(SRV_DOLPHIN), 1)
  184. CFLAGS += -DSRV_DOLPHIN
  185. SRV_DOLPHIN_STATE_DEBUG ?= 0
  186. ifeq ($(SRV_DOLPHIN_STATE_DEBUG), 1)
  187. CFLAGS += -DSRV_DOLPHIN_STATE_DEBUG
  188. endif
  189. endif
  190. SRV_POWER_OBSERVER ?= 0
  191. ifeq ($(SRV_POWER_OBSERVER), 1)
  192. CFLAGS += -DSRV_POWER_OBSERVER
  193. SRV_POWER = 1
  194. endif
  195. SRV_POWER ?= 0
  196. ifeq ($(SRV_POWER), 1)
  197. CFLAGS += -DSRV_POWER
  198. SRV_GUI = 1
  199. SRV_CLI = 1
  200. endif
  201. SRV_RPC ?= 0
  202. ifeq ($(SRV_RPC), 1)
  203. CFLAGS += -DSRV_RPC
  204. ifeq ($(SRV_RPC_DEBUG), 1)
  205. CFLAGS += -DSRV_RPC_DEBUG
  206. endif
  207. SRV_CLI = 1
  208. endif
  209. SRV_LOADER ?= 0
  210. ifeq ($(SRV_LOADER), 1)
  211. CFLAGS += -DSRV_LOADER
  212. SRV_GUI = 1
  213. # Loader autostart hook
  214. LOADER_AUTOSTART ?= ""
  215. ifneq ($(strip $(LOADER_AUTOSTART)), "")
  216. CFLAGS += -DLOADER_AUTOSTART="\"$(LOADER_AUTOSTART)\""
  217. endif
  218. # Loader autostart hook END
  219. endif
  220. SRV_DIALOGS ?= 0
  221. ifeq ($(SRV_DIALOGS), 1)
  222. CFLAGS += -DSRV_DIALOGS
  223. SRV_GUI = 1
  224. endif
  225. SRV_GUI ?= 0
  226. ifeq ($(SRV_GUI), 1)
  227. CFLAGS += -DSRV_GUI
  228. SRV_INPUT = 1
  229. endif
  230. SRV_INPUT ?= 0
  231. ifeq ($(SRV_INPUT), 1)
  232. CFLAGS += -DSRV_INPUT
  233. endif
  234. SRV_CLI ?= 0
  235. ifeq ($(SRV_CLI), 1)
  236. CFLAGS += -DSRV_CLI
  237. endif
  238. SRV_NOTIFICATION ?= 0
  239. ifeq ($(SRV_NOTIFICATION), 1)
  240. CFLAGS += -DSRV_NOTIFICATION
  241. endif
  242. SRV_STORAGE ?= 0
  243. ifeq ($(SRV_STORAGE), 1)
  244. CFLAGS += -DSRV_STORAGE
  245. endif