cocos2d-x 打 android 包时要修改 Android.mk 文件,但每次修改很麻烦,如果源文件很多的话就坑死了,也可以写一个脚本来自动生成这个文件,但每次还要重新生成一下,将其修改下面的的样子可以一劳永逸
原来的:
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) $(call import-add-path,$(LOCAL_PATH)/../../cocos2d) $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external) $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos) LOCAL_MODULE := cocos2dcpp_shared LOCAL_MODULE_FILENAME := libcocos2dcpp LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cpp LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static # LOCAL_WHOLE_STATIC_LIBRARIES += Box2d_static # LOCAL_WHOLE_STATIC_LIBRARIES += cocosbuilder_static # LOCAL_WHOLE_STATIC_LIBRARIES += spine_static # LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static # LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static # LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static include $(BUILD_SHARED_LIBRARY) $(call import-module,.) $(call import-module,audio/android) # $(call import-module,Box2D) # $(call import-module,editor-support/cocosbuilder) # $(call import-module,editor-support/spine) # $(call import-module,editor-support/cocostudio) # $(call import-module,network) # $(call import-module,extensions)
修改后的
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := cocos2djs_shared LOCAL_MODULE_FILENAME := libcocos2djs #traverse all the directory and subdirectory define walk $(wildcard $(1)) $(foreach e,$(wildcard $(1)/*),$(call walk,$(e))) endef #traverse Classes Directory ALLFILES = $(call walk,$(LOCAL_PATH)/../../Classes) FILE_LIST := hellojavascript/main.cpp \ FILE_LIST += $(filter %.cpp,$(ALLFILES)) FILE_INCLUDES := $(shell find $(LOCAL_PATH)/../../Classes -type d) LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%) LOCAL_C_INCLUDES := $(FILE_INCLUDES) \ LOCAL_WHOLE_STATIC_LIBRARIES := cocos_jsb_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_chipmunk_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_extension_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_localstorage_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_ui_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_studio_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_network_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_builder_static LOCAL_WHOLE_STATIC_LIBRARIES += jsb_spine_static LOCAL_EXPORT_CFLAGS := -DCOCOS2D_DEBUG=2 -DCOCOS2D_JAVASCRIPT include $(BUILD_SHARED_LIBRARY) $(call import-module,bindings) $(call import-module,bindings/manual/chipmunk) $(call import-module,bindings/manual/extension) $(call import-module,bindings/manual/localstorage) $(call import-module,bindings/manual/network) $(call import-module,bindings/manual/cocosbuilder) $(call import-module,bindings/manual/ui) $(call import-module,bindings/manual/cocostudio) $(call import-module,bindings/manual/spine)
Windows 下要安装 CYWin
参考子龙大大的Android.mk 文件