在日常使用Cocos2d-x的时候,经常遇到XCode和Eclipse混编的情况,如果添加一个功能ccp的时候,XCode很简单,但是Eclipse里面编译的时候,我们需要将该新建的cpp给编译进去。我们一般的做法是,在Android.mk中不停的include新添加的文件,这个办法虽然可行,但是终究是繁琐了点。
在一个博客中看到了一遍关于这个的技巧文章,写的相当的好,抽取其中的最后成果做个记录,方便以后的项目。
关键代码如下:
# 扫描目录下的所有源文件
MY_FILES_PATH := $(LOCAL_PATH) \
$(LOCAL_PATH)/../../Classes
MY_FILES_SUFFIX := %.cpp %.c %.cc
My_All_Files := $(foreach src_path,$(MY_FILES_PATH), $(shell find $(src_path) -type f) )
My_All_Files := $(My_All_Files:$(MY_CPP_PATH)/./%=$(MY_CPP_PATH)%)
MY_SRC_LIST := $(filter $(MY_FILES_SUFFIX),$(My_All_Files))
MY_SRC_LIST := $(MY_SRC_LIST:$(LOCAL_PATH)/%=%)
LOCAL_SRC_FILES := $(MY_SRC_LIST)
将该代码添加到Android.mk文件中,并且替换掉原来的LOCAL_SRC_FILES := XXXXX.
原文链接: [编写Android.mk中的LOCAL_SRC_FILES的终极技巧]