BUILD_ROOT = $(shell pwd)/..
include $(BUILD_ROOT)/Make.defines

LOCAL_PATH=$(BUILD_ROOT)/mbtk_adbd

INC_DIR += \
		-I$(LOCAL_PATH)/inc

LIB_DIR +=

LIBS += -lmbtk_lib -lprop2uci -lmtel -laudio-apu -lcutils -ltinyalsa -lacm

CFLAGS +=

DEFINE +=

MY_FILES_PATH:=$(LOCAL_PATH)/src
#ifeq ($(CONFIG_MBTK_QL_SUPPORT),y)
#MY_FILES_PATH += $(LOCAL_PATH)/ql
#endif

#ifeq ($(CONFIG_MBTK_PLATFORM),linux)
#MY_FILES_PATH += $(LOCAL_PATH)/platform/linux
#endif

MY_FILES_SUFFIX:=%.c %.cpp
My_All_Files := $(foreach src_path,$(MY_FILES_PATH), $(shell find "$(src_path)" -type f))
MY_SRC_LIST  := $(filter $(MY_FILES_SUFFIX),$(My_All_Files))
MY_SRC_LIST  := $(MY_SRC_LIST:$(LOCAL_PATH)/%=%)
LOCAL_SRC_FILES += $(MY_SRC_LIST)
$(info LOCAL_SRC_FILES = $(LOCAL_SRC_FILES))

dtarget := $(OUT_DIR)/bin/mbtk_adbd

all: $(dtarget)

$(dtarget):
	$(CC) $(CFLAGS) $(LOCAL_SRC_FILES) -o $@ $(DEFINE) $(INC_DIR) $(LIB_DIR) $(LIBS)

clean:

