2020-10-07 09:37:43 +00:00
|
|
|
LIB_DIR = $(PROJECT_ROOT)/lib
|
|
|
|
|
Display and UI implementation (#169)
* Menu app. Lib: add mlib submodule.
* Menu: new startup lib dependency definition
* Menu: hierarchy in menu. Cube: fix heap1/4 inconsistency, stack protection.
* GUI: rendering pipeline initial version.
* GUI: layered widget composing, FURI record. Menu: FURI record, api.
* GUI: input dispatching. Menu: switch to input from GUI.
* GUI, MENU: code style cleanup, fix type conversion warnings.
* GUI, Menu: syntax check.
* Makefile: check and reinit submodules, format.
* Menu: lock on event processing. Makefile: proper submodule initialization.
* Menu: fix stack corruption by queue.
* GUI: refactor.
* Makefile: format rule fix, st-util pid.
* GUI, Menu, FURI: format with clang-format.
* GUI, MENU: locks in critical sections, fix stack corruption, ready signaling.
* Makefile: clang format rule cleanup.
* GUI,MENU: migrate to new API.
* Applications: PRODUCTION_HW variable, skip drivers build on local target.
* refactor production build
* add git to dockerfile
* GUI: uncomment lock block
Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
2020-10-14 10:21:55 +00:00
|
|
|
# TODO: some places use lib/header.h includes, is it ok?
|
2020-10-07 09:37:43 +00:00
|
|
|
CFLAGS += -I$(LIB_DIR)
|
|
|
|
|
2020-10-13 08:22:43 +00:00
|
|
|
# Mlib containers
|
2022-05-11 09:45:01 +00:00
|
|
|
CFLAGS += -I$(LIB_DIR)/mlib -D'M_MEMORY_FULL(x)=abort()'
|
2020-10-13 08:22:43 +00:00
|
|
|
|
|
|
|
# U8G2 display library
|
2020-10-07 09:37:43 +00:00
|
|
|
U8G2_DIR = $(LIB_DIR)/u8g2
|
|
|
|
CFLAGS += -I$(U8G2_DIR)
|
2021-10-17 20:34:36 +00:00
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_glue.c
|
2020-10-07 09:37:43 +00:00
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_intersection.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_setup.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_d_memory.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_cad.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_byte.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_gpio.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_display.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_setup.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_hvline.c
|
2020-10-26 17:00:17 +00:00
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_line.c
|
2020-10-07 09:37:43 +00:00
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_ll_hvline.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_circle.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_box.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_buffer.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_font.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_fonts.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8x8_8x8.c
|
|
|
|
C_SOURCES += $(U8G2_DIR)/u8g2_bitmap.c
|
2020-10-08 14:37:19 +00:00
|
|
|
|
|
|
|
FATFS_DIR = $(LIB_DIR)/fatfs
|
|
|
|
C_SOURCES += $(FATFS_DIR)/ff.c
|
|
|
|
C_SOURCES += $(FATFS_DIR)/ff_gen_drv.c
|
|
|
|
C_SOURCES += $(FATFS_DIR)/diskio.c
|
2020-10-18 22:09:48 +00:00
|
|
|
C_SOURCES += $(FATFS_DIR)/option/unicode.c
|
|
|
|
|
2021-06-29 21:19:20 +00:00
|
|
|
# Little FS
|
2021-05-11 08:29:44 +00:00
|
|
|
LITTLEFS_DIR = $(LIB_DIR)/littlefs
|
2021-11-04 17:26:41 +00:00
|
|
|
CFLAGS += -I$(LITTLEFS_DIR) -DLFS_CONFIG=lfs_config.h
|
2021-05-11 08:29:44 +00:00
|
|
|
C_SOURCES += $(LITTLEFS_DIR)/lfs.c
|
|
|
|
C_SOURCES += $(LITTLEFS_DIR)/lfs_util.c
|
|
|
|
|
2020-10-18 22:09:48 +00:00
|
|
|
ST25RFAL002_DIR = $(LIB_DIR)/ST25RFAL002
|
|
|
|
CFLAGS += -I$(ST25RFAL002_DIR)
|
|
|
|
CFLAGS += -I$(ST25RFAL002_DIR)/include
|
|
|
|
CFLAGS += -I$(ST25RFAL002_DIR)/source/st25r3916
|
|
|
|
C_SOURCES += $(wildcard $(ST25RFAL002_DIR)/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(ST25RFAL002_DIR)/source/*.c)
|
2020-10-18 22:49:21 +00:00
|
|
|
C_SOURCES += $(wildcard $(ST25RFAL002_DIR)/source/st25r3916/*.c)
|
2021-05-18 18:12:01 +00:00
|
|
|
|
|
|
|
CFLAGS += -I$(LIB_DIR)/nfc_protocols
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/nfc_protocols/*.c)
|
2020-11-12 11:13:29 +00:00
|
|
|
|
|
|
|
# callback connector (C to CPP) library
|
|
|
|
CFLAGS += -I$(LIB_DIR)/callback-connector
|
|
|
|
|
|
|
|
# app template library
|
2020-11-14 16:24:38 +00:00
|
|
|
CFLAGS += -I$(LIB_DIR)/app-template
|
|
|
|
|
2021-06-30 17:43:29 +00:00
|
|
|
# add C scene template
|
|
|
|
CFLAGS += -I$(LIB_DIR)/app_scene_template
|
|
|
|
|
2020-11-14 16:24:38 +00:00
|
|
|
# fnv1a hash library
|
|
|
|
CFLAGS += -I$(LIB_DIR)/fnv1a-hash
|
2020-11-25 07:25:13 +00:00
|
|
|
C_SOURCES += $(LIB_DIR)/fnv1a-hash/fnv1a-hash.c
|
|
|
|
|
2021-01-11 14:52:35 +00:00
|
|
|
# common apps api
|
|
|
|
CFLAGS += -I$(LIB_DIR)/common-api
|
|
|
|
|
2020-12-02 10:47:13 +00:00
|
|
|
# drivers
|
|
|
|
CFLAGS += -I$(LIB_DIR)/drivers
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/drivers/*.c)
|
2021-04-19 16:30:25 +00:00
|
|
|
|
2021-12-21 12:16:25 +00:00
|
|
|
# IR lib
|
2022-02-25 15:22:58 +00:00
|
|
|
CFLAGS += -I$(LIB_DIR)/infrared/encoder_decoder
|
|
|
|
CFLAGS += -I$(LIB_DIR)/infrared/worker
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/infrared/encoder_decoder/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/infrared/encoder_decoder/*/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/infrared/worker/*.c)
|
2021-06-10 11:53:59 +00:00
|
|
|
|
2021-06-29 21:19:20 +00:00
|
|
|
# SubGhz
|
2021-07-18 18:09:00 +00:00
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/subghz/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/subghz/*/*.c)
|
2021-06-29 21:19:20 +00:00
|
|
|
|
2021-06-15 11:01:56 +00:00
|
|
|
#scened app template lib
|
|
|
|
CFLAGS += -I$(LIB_DIR)/app-scened-template
|
2021-06-30 12:02:46 +00:00
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/app-scened-template/*.c)
|
2021-06-15 11:01:56 +00:00
|
|
|
CPP_SOURCES += $(wildcard $(LIB_DIR)/app-scened-template/*.cpp)
|
2021-07-16 16:43:54 +00:00
|
|
|
CPP_SOURCES += $(wildcard $(LIB_DIR)/app-scened-template/*/*.cpp)
|
2021-07-25 11:34:54 +00:00
|
|
|
|
|
|
|
# Toolbox
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/toolbox/*.c)
|
2022-02-18 19:53:46 +00:00
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/toolbox/*/*.c)
|
2021-10-06 09:40:28 +00:00
|
|
|
CPP_SOURCES += $(wildcard $(LIB_DIR)/toolbox/*.cpp)
|
2022-02-18 19:53:46 +00:00
|
|
|
CPP_SOURCES += $(wildcard $(LIB_DIR)/toolbox/*/*.cpp)
|
2021-10-06 09:24:09 +00:00
|
|
|
|
|
|
|
# USB Stack
|
|
|
|
CFLAGS += -I$(LIB_DIR)/libusb_stm32/inc
|
2022-04-27 15:53:48 +00:00
|
|
|
C_SOURCES += $(LIB_DIR)/libusb_stm32/src/usbd_stm32wb55_devfs.c
|
|
|
|
C_SOURCES += $(LIB_DIR)/libusb_stm32/src/usbd_core.c
|
2021-10-12 11:48:34 +00:00
|
|
|
|
|
|
|
# protobuf
|
|
|
|
CFLAGS += -I$(LIB_DIR)/nanopb
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/nanopb/*.c)
|
2021-10-21 14:46:36 +00:00
|
|
|
|
|
|
|
# heatshrink
|
|
|
|
CFLAGS += -I$(LIB_DIR)/heatshrink
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/heatshrink/*.c)
|
2021-11-04 10:06:13 +00:00
|
|
|
|
|
|
|
# Toolbox
|
|
|
|
CFLAGS += -I$(LIB_DIR)/flipper_file
|
2021-12-21 12:16:25 +00:00
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/flipper_file/*.c)
|
2021-12-22 20:04:08 +00:00
|
|
|
|
2022-02-18 19:53:46 +00:00
|
|
|
# Flipper format
|
|
|
|
CFLAGS += -I$(LIB_DIR)/flipper_format
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/flipper_format/*.c)
|
|
|
|
|
2021-12-22 20:04:08 +00:00
|
|
|
# Micro-ECC
|
|
|
|
CFLAGS += -I$(LIB_DIR)/micro-ecc
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/micro-ecc/*.c)
|
2022-03-29 13:01:56 +00:00
|
|
|
|
|
|
|
# iButton and OneWire
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/one_wire/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/one_wire/*/*.c)
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/one_wire/*/*/*.c)
|
2022-04-13 20:50:25 +00:00
|
|
|
|
|
|
|
# microtar
|
|
|
|
CFLAGS += -I$(LIB_DIR)/microtar/src
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/microtar/src/*.c)
|
|
|
|
|
|
|
|
# Update-related common code
|
|
|
|
C_SOURCES += $(wildcard $(LIB_DIR)/update_util/*.c)
|