-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathMakefile
More file actions
executable file
·57 lines (44 loc) · 2.01 KB
/
Makefile
File metadata and controls
executable file
·57 lines (44 loc) · 2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
include $(OUTPUT_DIR)/../cache/using.config
COMPILE_PREX ?=
CC = $(COMPILE_PREX)gcc
LOCAL_SRC_FILES := $(shell find tuyaos_adapter/include/utilities -name "*.c" -o -name "*.cpp" -o -name "*.cc")
LOCAL_SRC_FILES += $(shell find tuyaos_adapter/src -maxdepth 1 -name "*.c" -o -name "*.cpp" -o -name "*.cc" )
LOCAL_SRC_FILES += tuyaos_adapter/include/init/src/tkl_init_common.c
ifeq ($(CONFIG_ENABLE_WIFI), y)
LOCAL_SRC_FILES += $(shell find tuyaos_adapter/src/tkl_wifi -name "*.c" -o -name "*.cpp" -o -name "*.cc")
LOCAL_SRC_FILES += tuyaos_adapter/include/init/src/tkl_init_wifi.c
endif
ifeq ($(CONFIG_ENABLE_BLUETOOTH), y)
LOCAL_SRC_FILES += $(shell find tuyaos_adapter/src/tkl_bt -name "*.c" -o -name "*.cp p" -o -name "*.cc")
endif
ifeq ($(CONFIG_ENABLE_WIRED), y)
LOCAL_SRC_FILES += tuyaos_adapter/include/init/src/tkl_init_wired.c
endif
LOCAL_CFLAGS := $(addprefix -I, $(shell find tuyaos_adapter -type d))
LOCAL_CFLAGS += $(addprefix -I, $(shell find tuyaos_adapter/include -type d))
LOCAL_CFLAGS += $(foreach base_dir, $(HEADER_DIR), $(addprefix -I , $(base_dir)))
# -fsanitize=address -fno-omit-frame-pointer
LOCAL_CFLAGS += -g
LOCAL_OUTPUT_DIR = $(OUTPUT_DIR)
LOCAL_OUTPUT_DIR_OBJS = $(LOCAL_OUTPUT_DIR)/.objs
LOCAL_OBJS = $(addsuffix .o, $(LOCAL_SRC_FILES))
LOCAL_OBJS_OUT = $(addprefix $(LOCAL_OUTPUT_DIR_OBJS)/, $(LOCAL_OBJS))
DEP_FILES = $(patsubst %.o,%.d,$(LOCAL_OBJS_OUT))
$(LOCAL_OUTPUT_DIR_OBJS)/%.c.o: %.c
@echo "CC $<"
@mkdir -p $(dir $@);
$(CC) $(LOCAL_CFLAGS) -o $@ -c -MMD $<
-include $(DEP_FILES)
TUYAOS_LIB_DIR = $(LIBS_DIR)
#链接选项
# -lasan
LINKFLAGS = -L$(TUYAOS_LIB_DIR) $(addprefix -l, $(LIBS)) -pthread -lm -lsystemd
all: app_excute
app_excute: $(LOCAL_OBJS_OUT)
@mkdir -p $(LOCAL_OUTPUT_DIR_OBJS)
$(CC) $(LOCAL_OBJS_OUT) $(LINKFLAGS) -o $(LOCAL_OUTPUT_DIR)/$(EXAMPLE_NAME)_$(EXAMPLE_VER)
@cp $(LOCAL_OUTPUT_DIR)/$(EXAMPLE_NAME)_$(EXAMPLE_VER) $(LOCAL_OUTPUT_DIR)/$(EXAMPLE_NAME)_QIO_$(EXAMPLE_VER).bin
@echo "Build APP Finish"
.PHONY: all clean SHOWARGS app_excute pack
clean:
rm -rf $(LOCAL_OUTPUT_DIR)