1、封装 usr_le_code 为静态库,并增加 Release 客户包自动生成工具
2、将 BLE 协议实现收敛为 libusr_le_code.a + 公开头文件,应用侧通过 usr_le_api / usr_le_product 对接;新增 package_release.py,按 version.txt 3、生成去除协议源码的客户交付包,开发工程继续保留完整源码。
This commit is contained in:
@@ -245,6 +245,11 @@ INCLUDES := \
|
||||
-Iinclude_lib/media/aispeech/enc/include \
|
||||
-Icpu/br28/audio_hearing \
|
||||
-Iinclude_lib/media/cvp \
|
||||
-Iapps/usr_le_code \
|
||||
-Iapps/usr_le_code/thirdpart \
|
||||
-Iapps/usr_le_code/thirdpart/mjson \
|
||||
-Iapps/usr_jb_proto/Protocol \
|
||||
-Iapps/usr_jb_proto/Utils \
|
||||
-I$(SYS_INC_DIR) \
|
||||
|
||||
|
||||
@@ -479,6 +484,7 @@ c_SRC_FILES := \
|
||||
apps/earphone/bt_emitter.c \
|
||||
apps/earphone/bt_tws.c \
|
||||
apps/earphone/default_event_handler.c \
|
||||
apps/earphone/dual_update_demo.c \
|
||||
apps/earphone/earphone.c \
|
||||
apps/earphone/eartch_event_deal.c \
|
||||
apps/earphone/font/fontinit.c \
|
||||
@@ -608,6 +614,24 @@ c_SRC_FILES := \
|
||||
cpu/br28/tws_audio.c \
|
||||
cpu/br28/uart_dev.c \
|
||||
cpu/br28/umidigi_chargestore.c \
|
||||
apps/usr_jb_proto/Protocol/jb_product.c \
|
||||
apps/usr_jb_proto/Protocol/jb_protocol.c \
|
||||
apps/usr_jb_proto/Utils/jb_common.c \
|
||||
apps/usr_jb_proto/Utils/jb_ringbuffer.c \
|
||||
apps/usr_jb_proto/usr_jb_main.c \
|
||||
|
||||
|
||||
# usr_le_code 静态库(协议编解码 + 广播/收发)
|
||||
USR_LE_LIB := apps/usr_le_code/lib/libusr_le_code.a
|
||||
USR_LE_SRC_FILES := \
|
||||
apps/usr_le_code/ble_proto.c \
|
||||
apps/usr_le_code/bleproto.c \
|
||||
apps/usr_le_code/bleproto_packer.c \
|
||||
apps/usr_le_code/thirdpart/mjson/mjson.c \
|
||||
apps/usr_le_code/usr_le_adv.c \
|
||||
apps/usr_le_code/usr_le_recieve.c
|
||||
|
||||
USR_LE_OBJS := $(addprefix $(BUILD_DIR)/, $(USR_LE_SRC_FILES:%.c=%.c.o))
|
||||
|
||||
|
||||
# 需要编译的 .S 文件
|
||||
@@ -711,6 +735,7 @@ LFLAGS := \
|
||||
cpu/br28/liba/libllns.a \
|
||||
cpu/br28/liba/libkwscommon.a \
|
||||
apps/common/third_party_profile/tuya_protocol/sdk/lib/libtuya_lib.a \
|
||||
apps/usr_le_code/lib/libusr_le_code.a \
|
||||
cpu/br28/liba/lib_icsd_adt.a \
|
||||
cpu/br28/liba/lib_diafx.a \
|
||||
cpu/br28/liba/libFFT_pi32v2_OnChip.a \
|
||||
@@ -769,16 +794,25 @@ LINK_AT ?= 1
|
||||
# 表示下面的不是一个文件的名字,无论是否存在 all, clean, pre_build 这样的文件
|
||||
# 还是要执行命令
|
||||
# see: https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html
|
||||
.PHONY: all clean pre_build
|
||||
.PHONY: all clean pre_build lib_usr_le
|
||||
|
||||
# 不要使用 make 预设置的规则
|
||||
# see: https://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html
|
||||
.SUFFIXES:
|
||||
|
||||
all: pre_build $(OUT_ELF)
|
||||
all: pre_build $(USR_LE_LIB) $(OUT_ELF)
|
||||
$(info +POST-BUILD)
|
||||
$(QUITE) $(RUN_POST_SCRIPT) sdk
|
||||
|
||||
# 单独编译 usr_le_code 静态库: make lib_usr_le
|
||||
lib_usr_le: $(USR_LE_LIB)
|
||||
|
||||
$(USR_LE_LIB): $(USR_LE_OBJS)
|
||||
$(info +AR $@)
|
||||
$(shell $(MKDIR) $(@D))
|
||||
$(QUITE) $(RM) $@
|
||||
$(QUITE) $(AR) rcs $@ $(USR_LE_OBJS)
|
||||
|
||||
pre_build:
|
||||
$(info +PRE-BUILD)
|
||||
$(QUITE) $(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -D__LD__ -E -P cpu/br28/sdk_used_list.c -o cpu/br28/sdk_used_list.used
|
||||
@@ -794,13 +828,13 @@ clean:
|
||||
|
||||
|
||||
ifeq ($(LINK_AT), 1)
|
||||
$(OUT_ELF): $(OBJS)
|
||||
$(OUT_ELF): $(OBJS) $(USR_LE_LIB)
|
||||
$(info +LINK $@)
|
||||
$(shell $(MKDIR) $(@D))
|
||||
$(file >$(OBJ_FILE), $(OBJS))
|
||||
$(QUITE) $(LD) -o $(OUT_ELF) @$(OBJ_FILE) $(LFLAGS) $(LIBPATHS) $(LIBS)
|
||||
else
|
||||
$(OUT_ELF): $(OBJS)
|
||||
$(OUT_ELF): $(OBJS) $(USR_LE_LIB)
|
||||
$(info +LINK $@)
|
||||
$(shell $(MKDIR) $(@D))
|
||||
$(QUITE) $(LD) -o $(OUT_ELF) $(OBJS) $(LFLAGS) $(LIBPATHS) $(LIBS)
|
||||
|
||||
Reference in New Issue
Block a user