android makefile分析(大概)

来源:互联网 发布:蝉知企业门户系统 编辑:程序博客网 时间:2024/04/29 11:06

主要分析各种版本需要编译的模块都有哪些,有其他需求的话,可以找到对应模块下面的android.mk,看其具体需要编译哪些文件
1. 根下的makefile
   指向include build/core/main.mk

2.build/core/main.mk           确定SDK版本和真机版各需要编译的文件
#确定是SDK版本
ifeq ($(HOST_OS),windows)
SDK_ONLY := true
endif

ifeq ($(SDK_ONLY),true)
include $(TOPDIR)sdk/build/sdk_only_whitelist.mk
include $(TOPDIR)development/build/sdk_only_whitelist.mk

# Exclude tools/acp when cross-compiling windows under linux
ifeq ($(findstring Linux,$(UNAME)),)
subdirs += build/tools/acp
endif

else # !SDK_ONLY
ifeq ($(BUILD_TINY_ANDROID), true)

# TINY_ANDROID is a super-minimal build configuration, handy for board
# bringup and very low level debugging
#最小化编译真机
subdirs := \
 bionic \
 system/core \
 system/extras/ext4_utils \
 system/extras/su \
 build/libs \
 build/target \
 build/tools/acp \
 external/mksh \
 external/yaffs2 \
 external/zlib
else # !BUILD_TINY_ANDROID

#
# Typical build; include any Android.mk files we can find.
#
subdirs := $(TOP)                #编译根目录下所有的目录,全功能的

FULL_BUILD := true

endif # !BUILD_TINY_ANDROID

endif # !SDK_ONLY

原创粉丝点击