一次搞定cocos2d-x的 Android.mk 文件
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 文件
https://gist.github.com/andyque/6060595
一次搞定cocos2d-x的 Android.mk 文件的更多相关文章
- Android.mk 文件语法详解
0. Android.mk简介: Android.mk文件用来告知NDK Build 系统关于Source的信息. Android.mk将是GNU Makefile的一部分,且将被Build Syst ...
- Android.mk 文件语法详解 转:http://blog.sina.com.cn/s/blog_602f8770010148ce.html
0. Android.mk简介: Android.mk文件用来告知NDK Build 系统关于Source的信息. Android.mk将是GNU Makefile的一部分,且将被Build Syst ...
- Android JNI的Android.mk文件语法详解
Android.mk简介: Android.mk文件用来告知NDK Build 系统关于Source的信息. Android.mk将是GNU Makefile的一部分,且将被Build System解 ...
- 使用cocostudio 需要在Android.mk文件的配置
直接贴上Android.mk文件吧. 对了,是cocos2d3.0的,不知道2.x是否一样. LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LO ...
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
cocos2d-x 3.0 中.假设你须要使用CocosStudio.Extensions扩展库 等等.都须要自己手动加入. 加入过程例如以下:(比方说如今我要加入libExtensions,libC ...
- cocos2d-x避免手动修改android.mk文件来编译
编辑android.mk文件,替换为如下内容 LOCAL_PATH := $(call my-dir) LOCAL_PATH := $(call my-dir) include $(CLEAR_VAR ...
- android.mk文件里的通配符
比方你有如下目录,要编译Classes目录和Code目录下所有cpp src |-android.mk |-Classes |-A.cpp |-B.cpp |-....cpp |-Code |-E.c ...
- Android.mk文件语法规范 原文
序言:------------- 此文档旨在描述Android.mk文件的语法,Android.mk文件为Android NDK(原生开发)描述了你C/C++源文件.为了明白下面的内容,你必须已经阅读 ...
- Android NDK开发之Android.mk文件
Android NDK开发指南---Android.mk文件 博客分类: Android NDK开发指南 Android.mk文件语法详述 介绍: ------------ 这篇文档是用来描述你的 ...
随机推荐
- table边框不显示
今日在做报表的时候发现,最后一行隐藏后整个报表的下边框会不显示,猜测是td的边框隐藏后但table并未设置边框,导致下边框没有出现.因此设置了table边框后问题解决.table和td的边框关系如下实 ...
- ##DAY6 UIScrollView
##DAY6 UIScrollView #pragma mark ———————UIScrollView——————————— 属性: contentSize 内容滚动范围 contentOffset ...
- 1028: C语言程序设计教程(第三版)课后习题8.2
Description求方程 的根,用三个函数分别求当b^2-4ac大于0.等于0.和小于0时的根,并输出结果.从主函数输入a.b.c的值.Inputa b cOutputx1=? x2=?Sampl ...
- A Byte of Python 笔记(8)
第10章 解决问题——编写一个 python 脚本 程序功能:为所有重要文件创建备份 设计: 1.需要备份的文件和目录由一个列表指定 2.备份应该保存在主备份目录中 3.文件备份称一个 zip 文件 ...
- awk的用法(转)
awk 用法:awk ' pattern {action} ' 变量名 含义 ARGC 命令行变元个数 ARGV 命令行变元数组 FILENAME 当前输入文件名 FNR 当前文件中的记录号 FS 输 ...
- LATEX使用之字体颜色深浅不一
今天用Ctex写论文,发现出来的pdf在屏幕上会出现字体颜色深浅不一的现象. google一下之后,在饮水思源bbs上找到了解决方法,用latex+dvitopdf来编译就不会有这个现象了. 另外,对 ...
- 射频识别技术漫谈(19)——Desfire的3次握手认证和段密码生成
3次握手认证并生成临时的通讯密钥在通讯技术中的应用非常普遍,Mifare Desfire也使用了这种成熟的认证加密方法.Desfire在卡片数据传输前使用DES或3DES进行3次握手认证,认证成功一方 ...
- Angulajs 定时器使用
在Angulajs的control中,不能利用 window.setInterval和 setTimeout 来操作定时器,因为这样做,虽然设置定时器会成功,但对$scope中的数据进行设置时,不会自 ...
- 高性能Mysql主从架构的复制原理及配置详解(转)
温习<高性能MySQL>的复制篇. 1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台 ...
- Python type类具体的三大分类:metaclasses,classes,instance
Python type类视角中的对象体系需要我们不断的学习,其中我们使用的时候需要注意.下面我们就看看如何才能更好的运用Python type类.下面的文章希望大家有所收获. 在单纯的Python t ...