• 一次搞定cocos2d-x的 Android.mk 文件


    cocos2d-x 打 android 包时要修改 Android.mk 文件,但每次修改很麻烦,如果源文件很多的话就坑死了,也可以写一个脚本来自动生成这个文件,但每次还要重新生成一下,将其修改下面的的样子可以一劳永逸

    原来的:

     

    [plain] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. LOCAL_PATH := $(call my-dir)  
    2.   
    3. include $(CLEAR_VARS)  
    4.   
    5. $(call import-add-path,$(LOCAL_PATH)/../../cocos2d)  
    6. $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)  
    7. $(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)  
    8.   
    9. LOCAL_MODULE := cocos2dcpp_shared  
    10.   
    11. LOCAL_MODULE_FILENAME := libcocos2dcpp  
    12.   
    13. LOCAL_SRC_FILES := hellocpp/main.cpp   
    14.                    ../../Classes/AppDelegate.cpp   
    15.                    ../../Classes/HelloWorldScene.cpp  
    16.   
    17. LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes  
    18.   
    19. LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static  
    20. LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static  
    21.   
    22. # LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static  
    23. # LOCAL_WHOLE_STATIC_LIBRARIES += cocosbuilder_static  
    24. # LOCAL_WHOLE_STATIC_LIBRARIES += spine_static  
    25. # LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static  
    26. # LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static  
    27. # LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static  
    28.   
    29.   
    30. include $(BUILD_SHARED_LIBRARY)  
    31.   
    32. $(call import-module,.)  
    33. $(call import-module,audio/android)  
    34.   
    35. # $(call import-module,Box2D)  
    36. # $(call import-module,editor-support/cocosbuilder)  
    37. # $(call import-module,editor-support/spine)  
    38. # $(call import-module,editor-support/cocostudio)  
    39. # $(call import-module,network)  
    40. # $(call import-module,extensions)  


    修改后的

     

     

    [plain] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. LOCAL_PATH := $(call my-dir)  
    2.   
    3. include $(CLEAR_VARS)  
    4.   
    5. LOCAL_MODULE := cocos2djs_shared  
    6.   
    7. LOCAL_MODULE_FILENAME := libcocos2djs  
    8.   
    9.   
    10.   
    11. #traverse all the directory and subdirectory  
    12. define walk  
    13.   $(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))  
    14. endef  
    15.    
    16. #traverse Classes Directory  
    17. ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)  
    18.    
    19. FILE_LIST := hellojavascript/main.cpp   
    20. FILE_LIST += $(filter %.cpp, $(ALLFILES))  
    21.    
    22. FILE_INCLUDES := $(shell find $(LOCAL_PATH)/../../Classes -type d)  
    23.   
    24.   
    25.   
    26. LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)  
    27.   
    28.   
    29. LOCAL_C_INCLUDES := $(FILE_INCLUDES)   
    30.   
    31.   
    32. LOCAL_WHOLE_STATIC_LIBRARIES := cocos_jsb_static  
    33. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_chipmunk_static  
    34. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_extension_static  
    35. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_localstorage_static  
    36. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_ui_static  
    37. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_studio_static  
    38. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_network_static  
    39. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_builder_static  
    40. LOCAL_WHOLE_STATIC_LIBRARIES += jsb_spine_static  
    41.   
    42. LOCAL_EXPORT_CFLAGS := -DCOCOS2D_DEBUG=2 -DCOCOS2D_JAVASCRIPT  
    43.   
    44. include $(BUILD_SHARED_LIBRARY)  
    45.   
    46.   
    47. $(call import-module,bindings)  
    48. $(call import-module,bindings/manual/chipmunk)  
    49. $(call import-module,bindings/manual/extension)  
    50. $(call import-module,bindings/manual/localstorage)  
    51. $(call import-module,bindings/manual/network)  
    52. $(call import-module,bindings/manual/cocosbuilder)  
    53. $(call import-module,bindings/manual/ui)  
    54. $(call import-module,bindings/manual/cocostudio)  
    55. $(call import-module,bindings/manual/spine)  

    Windows 下要安装 CYWin

     

    参考子龙大大的 Android.mk 文件

    https://gist.github.com/andyque/6060595

  • 相关阅读:
    JVM(二)-运行时数据区
    JVM(一)-JVM入门
    java设计模式之观察者模式
    开散列表
    闭散列表
    VTWORAY 常用配置
    kubernetes 提示1 node(s) had taints that the pod didn't tolerate
    SOCKS5转PPTP VTWORAY配置文件与IPTables配置文件
    【Docker】多阶段构建
    【Docker】容器内存扩容
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/4502428.html
Copyright © 2020-2023  润新知