终极Android.mk模板,遍历头文件和源文件目录

来源:互联网 发布:淘宝卖家id 编辑:程序博客网 时间:2024/06/05 15:17

结构简洁、条理清晰的代码结构,是一个项目便于管理,代码模块化的前提。
梳理代码结构发现代码所使用的android.mk各种各样,混乱不堪,遂整理出一个基础模板,供大家使用。其中包含了常见的一些功能,还有头文件路径遍历和源文件指定目录遍历等。

LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)PROJECT_PATH = $(LOCAL_PATH)/..LOCAL_MODULE    := libmoduleLOCAL_LDFLAGS += -shared#添加模块使用宏定义LOCAL_CFLAGS += -DMODULE_FLAG#添加需要包含的头文件路径,会依次遍历向下所有目录,MY_HEADER_PATH += $(PROJECT_PATH)#添加需要包含的头文件路径,不会向下遍历,最后一个不要加\号LOCAL_C_INCLUDES += $(PROJECT_PATH)../includeLOCAL_C_INCLUDES += $(shell find $(MY_HEADER_PATH) -type d)                              $(warning "$(LOCAL_MODULE): LOCAL_C_INCLUDES =$(LOCAL_C_INCLUDES)")   # 扫描目录下的所有源文件,会向下依次遍历MY_FILES_PATH  := $(PROJECT_PATH)# 添加指定C/CPP文件,只添加某个LOCAL_SRC_FILES += $(LOCAL_PATH)/test.cMY_FILES_SUFFIX := %.cpp %.c %.ccMy_All_Files := $(foreach src_path,$(MY_FILES_PATH), $(shell find "$(src_path)" -type f) ) My_All_Files := $(My_All_Files:$(MY_CPP_PATH)/./%=$(MY_CPP_PATH)%)MY_SRC_LIST  := $(filter $(MY_FILES_SUFFIX),$(My_All_Files)) MY_SRC_LIST  := $(MY_SRC_LIST:$(LOCAL_PATH)/%=%)LOCAL_SRC_FILES += $(MY_SRC_LIST)$(warning "$(LOCAL_MODULE): LOCAL_SRC_FILES =$(LOCAL_SRC_FILES)")   #添加需要链接的静态库LOCAL_STATIC_LIBRARIES  := #添加需要链接的动态库LOCAL_SHARED_LIBRARIES  := $(warning "$(LOCAL_MODULE): LOCAL_SHARED_LIBRARIES=$(LOCAL_SHARED_LIBRARIES)") #添加需要链接的系统库,如ndk编译,需要链接的log/android等LOCAL_LDLIBS    += -llog -landroid -lc#指定编译目标,这边编译动态库include $(BUILD_SHARED_LIBRARY)
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 隐形袜船袜 同桌逼我穿隐形震动裤 隐形符号复制 隐形守护者攻略 隐形符号大全 隐形守护者破解版 隐形眼镜哪个牌子好 隐形防护网价格 女用隐形避孕套 隐形内衣怎么穿 隐形防护栏价格 隐形纱窗图片 儿童隐形防护网 智能隐形防护网 隐形眼镜润滑液 隐形眼镜怎么戴 隐形墨水配方 隐形眼镜护理液什么牌子好 怎么摘隐形眼镜 隐形防盗网价格 隐形眼镜品牌 隐形眼镜注意事项 隐形无痕补发 隐形眼镜价位 隐形眼镜排行榜 隐形防盗窗品牌 隐形眼镜在哪买 隐形眼镜正反面 隐形眼镜戴法 隐形眼镜戴反了 隐形眼镜含水量 rgp隐形眼镜的危害 博士伦隐形眼镜多少钱 隐形纱窗好吗 隐形眼镜怎么配 隐形窗户防盗网 隐形车衣的好处 保视宁隐形眼镜 隐形眼镜直径 隐形避孕套哪里买 隐形眼镜月抛价格