APP_DIR = $(PROJECT_ROOT)/applications LIB_DIR = $(PROJECT_ROOT)/lib CFLAGS += -I$(APP_DIR) C_SOURCES += $(shell find $(APP_DIR) -name "*.c") CPP_SOURCES += $(shell find $(APP_DIR) -name "*.cpp") RAM_EXEC ?= 0 ifeq ($(RAM_EXEC), 1) APP_RELEASE = 0 SRV_GUI = 1 SRV_INPUT = 1 SRV_NOTIFICATION = 1 SRV_STORAGE = 1 SRV_UPDATER = 1 APP_UPDATER = 0 endif APP_RELEASE ?= 1 ifeq ($(APP_RELEASE), 1) # Services SRV_BT = 1 SRV_CLI = 1 SRV_DIALOGS = 1 SRV_DOLPHIN = 1 SRV_GUI = 1 SRV_INPUT = 1 SRV_LOADER = 1 SRV_NOTIFICATION = 1 SRV_POWER = 1 SRV_RPC = 1 SRV_STORAGE = 1 # Apps SRV_DESKTOP = 1 APP_ARCHIVE = 1 APP_GPIO = 1 APP_IBUTTON = 1 APP_INFRARED = 1 APP_LF_RFID = 1 APP_NFC = 1 APP_SUBGHZ = 1 APP_UNIVERSALRF = 1 APP_JUKEBOX = 1 APP_ABOUT = 1 APP_PASSPORT = 1 APP_UPDATER = 1 # Plugins APP_MUSIC_PLAYER = 1 APP_SNAKE_GAME = 1 APP_TETRIS_GAME = 1 # APP_RAYCAST_GAME = 1 APP_CLOCK = 1 APP_SPECTRUM_ANALYZER = 1 APP_FLAPPY_GAME = 1 # Debug APP_ACCESSOR = 1 APP_BLINK = 1 APP_INFRARED_MONITOR = 1 APP_KEYPAD_TEST = 1 APP_SD_TEST = 1 APP_VIBRO_TEST = 1 APP_USB_TEST = 1 APP_DISPLAY_TEST = 1 APP_BLE_HID = 1 APP_USB_MOUSE = 1 APP_BAD_USB = 1 APP_U2F = 1 APP_UART_ECHO = 1 APP_FILE_BROWSER_TEST = 1 endif # Applications # that will be shown in menu # Prefix with APP_* APP_INFRARED_MONITOR ?= 0 ifeq ($(APP_INFRARED_MONITOR), 1) CFLAGS += -DAPP_INFRARED_MONITOR SRV_GUI = 1 endif APP_UNIT_TESTS ?= 0 ifeq ($(APP_UNIT_TESTS), 1) CFLAGS += -DAPP_UNIT_TESTS endif APP_ARCHIVE ?= 0 ifeq ($(APP_ARCHIVE), 1) CFLAGS += -DAPP_ARCHIVE SRV_GUI = 1 endif APP_BLINK ?= 0 ifeq ($(APP_BLINK), 1) CFLAGS += -DAPP_BLINK SRV_GUI = 1 endif APP_SUBGHZ ?= 0 ifeq ($(APP_SUBGHZ), 1) CFLAGS += -DAPP_SUBGHZ SRV_GUI = 1 SRV_CLI = 1 endif APP_UNIVERSALRF ?= 0 ifeq ($(APP_UNIVERSALRF), 1) CFLAGS += -DAPP_UNIVERSALRF SRV_GUI = 1 SRV_CLI = 1 endif APP_JUKEBOX ?= 0 ifeq ($(APP_JUKEBOX), 1) CFLAGS += -DAPP_JUKEBOX SRV_GUI = 1 SRV_CLI = 1 endif APP_ABOUT ?= 0 ifeq ($(APP_ABOUT), 1) CFLAGS += -DAPP_ABOUT SRV_GUI = 1 endif APP_PASSPORT ?= 0 ifeq ($(APP_PASSPORT), 1) CFLAGS += -DAPP_PASSPORT SRV_GUI = 1 endif APP_LF_RFID ?= 0 ifeq ($(APP_LF_RFID), 1) CFLAGS += -DAPP_LF_RFID SRV_GUI = 1 endif APP_NFC ?= 0 ifeq ($(APP_NFC), 1) CFLAGS += -DAPP_NFC SRV_GUI = 1 endif APP_INFRARED ?= 0 ifeq ($(APP_INFRARED), 1) CFLAGS += -DAPP_INFRARED SRV_GUI = 1 endif APP_VIBRO_TEST ?= 0 ifeq ($(APP_VIBRO_TEST), 1) CFLAGS += -DAPP_VIBRO_TEST SRV_GUI = 1 endif APP_USB_TEST ?= 0 ifeq ($(APP_USB_TEST), 1) CFLAGS += -DAPP_USB_TEST SRV_GUI = 1 endif APP_UART_ECHO ?= 0 ifeq ($(APP_UART_ECHO), 1) CFLAGS += -DAPP_UART_ECHO SRV_GUI = 1 endif APP_DISPLAY_TEST ?= 0 ifeq ($(APP_DISPLAY_TEST), 1) CFLAGS += -DAPP_DISPLAY_TEST SRV_GUI = 1 endif APP_TEXT_BOX_TEST ?= 0 ifeq ($(APP_TEXT_BOX_TEST), 1) CFLAGS += -DAPP_TEXT_BOX_TEST SRV_GUI = 1 endif APP_BATTERY_TEST ?= 0 ifeq ($(APP_BATTERY_TEST), 1) CFLAGS += -DAPP_BATTERY_TEST SRV_GUI = 1 endif APP_USB_MOUSE ?= 0 ifeq ($(APP_USB_MOUSE), 1) CFLAGS += -DAPP_USB_MOUSE SRV_GUI = 1 endif APP_BAD_USB ?= 0 ifeq ($(APP_BAD_USB), 1) CFLAGS += -DAPP_BAD_USB SRV_GUI = 1 endif APP_U2F ?= 0 ifeq ($(APP_U2F), 1) CFLAGS += -DAPP_U2F SRV_GUI = 1 endif APP_BLE_HID ?=0 ifeq ($(APP_BLE_HID), 1) CFLAGS += -DAPP_BLE_HID SRV_GUI = 1 endif APP_KEYPAD_TEST ?= 0 ifeq ($(APP_KEYPAD_TEST), 1) CFLAGS += -DAPP_KEYPAD_TEST SRV_GUI = 1 endif APP_FILE_BROWSER_TEST ?= 0 ifeq ($(APP_FILE_BROWSER_TEST), 1) CFLAGS += -DAPP_FILE_BROWSER_TEST SRV_GUI = 1 endif APP_ACCESSOR ?= 0 ifeq ($(APP_ACCESSOR), 1) CFLAGS += -DAPP_ACCESSOR SRV_GUI = 1 endif APP_GPIO ?= 0 ifeq ($(APP_GPIO), 1) CFLAGS += -DAPP_GPIO SRV_GUI = 1 endif APP_MUSIC_PLAYER ?= 0 ifeq ($(APP_MUSIC_PLAYER), 1) CFLAGS += -DAPP_MUSIC_PLAYER SRV_GUI = 1 endif APP_FLAPPY_GAME ?= 0 ifeq ($(APP_FLAPPY_GAME), 1) CFLAGS += -DAPP_FLAPPY_GAME SRV_GUI = 1 endif APP_SNAKE_GAME ?= 0 ifeq ($(APP_SNAKE_GAME), 1) CFLAGS += -DAPP_SNAKE_GAME SRV_GUI = 1 endif APP_SPECTRUM_ANALYZER ?= 0 ifeq ($(APP_SPECTRUM_ANALYZER), 1) CFLAGS += -DAPP_SPECTRUM_ANALYZER SRV_GUI = 1 endif APP_TETRIS_GAME ?= 0 ifeq ($(APP_TETRIS_GAME), 1) CFLAGS += -DAPP_TETRIS_GAME SRV_GUI = 1 endif # APP_RAYCAST_GAME ?= 0 # ifeq ($(APP_RAYCAST_GAME), 1) # CFLAGS += -DAPP_RAYCAST_GAME # SRV_GUI = 1 # endif APP_CLOCK ?= 0 ifeq ($(APP_CLOCK), 1) CFLAGS += -DAPP_CLOCK SRV_GUI = 1 endif APP_IBUTTON ?= 0 ifeq ($(APP_IBUTTON), 1) CFLAGS += -DAPP_IBUTTON SRV_GUI = 1 endif APP_UPDATER ?= 0 ifeq ($(APP_UPDATER), 1) CFLAGS += -DAPP_UPDATER SRV_GUI = 1 SRV_STORAGE = 1 SRV_NOTIFICATION = 1 SRV_INPUT = 1 endif # Services # that will start with OS # Prefix with SRV_* SRV_BT ?= 0 ifeq ($(SRV_BT), 1) CFLAGS += -DSRV_BT SRV_CLI = 1 endif SRV_DESKTOP ?= 0 ifeq ($(SRV_DESKTOP), 1) CFLAGS += -DSRV_DESKTOP SRV_DOLPHIN = 1 SRV_STORAGE = 1 SRV_GUI = 1 endif SRV_UPDATER ?= 0 ifeq ($(SRV_UPDATER), 1) CFLAGS += -DSRV_UPDATER SRV_STORAGE = 1 SRV_GUI = 1 endif SRV_DOLPHIN ?= 0 ifeq ($(SRV_DOLPHIN), 1) CFLAGS += -DSRV_DOLPHIN SRV_DOLPHIN_STATE_DEBUG ?= 0 ifeq ($(SRV_DOLPHIN_STATE_DEBUG), 1) CFLAGS += -DSRV_DOLPHIN_STATE_DEBUG endif endif SRV_POWER ?= 0 ifeq ($(SRV_POWER), 1) CFLAGS += -DSRV_POWER SRV_GUI = 1 SRV_CLI = 1 endif SRV_RPC ?= 0 ifeq ($(SRV_RPC), 1) CFLAGS += -DSRV_RPC ifeq ($(SRV_RPC_DEBUG), 1) CFLAGS += -DSRV_RPC_DEBUG endif SRV_CLI = 1 endif SRV_LOADER ?= 0 ifeq ($(SRV_LOADER), 1) CFLAGS += -DSRV_LOADER SRV_GUI = 1 # Loader autostart hook LOADER_AUTOSTART ?= "" ifneq ($(strip $(LOADER_AUTOSTART)), "") CFLAGS += -DLOADER_AUTOSTART="\"$(LOADER_AUTOSTART)\"" endif # Loader autostart hook END endif SRV_DIALOGS ?= 0 ifeq ($(SRV_DIALOGS), 1) CFLAGS += -DSRV_DIALOGS SRV_GUI = 1 endif SRV_GUI ?= 0 ifeq ($(SRV_GUI), 1) CFLAGS += -DSRV_GUI SRV_INPUT = 1 SRV_NOTIFICATION = 1 endif SRV_INPUT ?= 0 ifeq ($(SRV_INPUT), 1) CFLAGS += -DSRV_INPUT endif SRV_CLI ?= 0 ifeq ($(SRV_CLI), 1) CFLAGS += -DSRV_CLI endif SRV_NOTIFICATION ?= 0 ifeq ($(SRV_NOTIFICATION), 1) CFLAGS += -DSRV_NOTIFICATION endif SRV_STORAGE ?= 0 ifeq ($(SRV_STORAGE), 1) CFLAGS += -DSRV_STORAGE endif