cocos2d-x 避免手打输入项目cpp文件到android.mk里面编译

3.终极解决方案

上边的解决方案用到了wildcard这个关键子,虽然不明白这是神马东西,但肯定可这个有关!于是经过一番google之后,便有了下面的这个:

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/HelloWorldScene.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

替换为:

# 遍历目录及子目录的函数   
define walk  
   $(wildcard $(1)) $(foreach e,$(wildcard $(1)/*),$(call walk,$(e)))  
endef  
   
# 遍历Classes目录   
ALLFILES = $(call walk,$(LOCAL_PATH)/../../Classes)  
  
FILE_LIST := hellocpp/main.cpp  
# 从所有文件中提取出所有.cpp文件   
FILE_LIST += $(filter %.cpp,$(ALLFILES))  
 
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)  
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

哈哈哈,这样我们只用在项目最开始的时候改变Android.mk文件就以后再也不用碰啦!

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...