LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := cocos2dcpp_shared
LOCAL_MODULE_FILENAME := libcocos2dcpp
遍历目录及子目录的函数
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)/=)
这里输出一下所有文件,看哪些扩展名需要过滤掉才是include目录
(info (ALLFILES))
从所有文件中排除所有.cpp .h .def文件(剩下的就是Classes下的所有子目录了)
LOCAL_C_INCLUDES := (filter-out %.cpp %.h %.def, (ALLFILES))
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
include $(BUILD_SHARED_LIBRARY)
(call import-module,2d)
(call import-module,audio/android)
$(call import-module,Box2D)
备注:
查找目录不好弄
shell find -type d 不知道为什么不能用!!
有更好方法可提出交流!
以上在3.0 BETA2 测试通过!
不用每次都修改 Android.mk文件了!!