美文网首页
envsetup.mk

envsetup.mk

作者: gbmaotai | 来源:发表于2018-08-29 16:54 被阅读0次
1.缺省值 包含:include$(BUILD_SYSTEM)/version_defaults.mk

设置那些我们需要设置的变量的缺省值。这个文件我们不因该改动,改动应该在build_id.mk里。

VAR VALUE
PLATFORM_VERSION 2.2.1
PLATFORM_SDK_VERSION 8
PLATFORM_VERSION_CODENAME REL
DEFAULT_APP_TARGET_SDK PLATFORM_SDK_VERSION
BUILD_ID MASTER
BUILD_NUMBER eng.(USER).(date)
2.设置在文件buildspec.mk里或通过envsetup.sh设置的变量的缺省值。
VAR VALUE
TARGET_PRODUCT generic(TARGET_SIMULATOR := false)sim(TARGET_SIMULATOR:=false)
TARGET_BUILD_VARIANT eng
HOST_OS windows/linux/darwin
HOST_ARCH x86/ppc
HOST_BUILD_TYPE release
TARGET_OS linux
TARGET_ARCH arm
TARGET_BUILD_TYPE release
3.包含:include$(BUILD_SYSTEM)/product_config.mk。

1)定义两种命令形式:

make PRODUCT-<prodname>-<goal> 
  TARGET_PRODUCT := prodname  TARGET_BUILD_VARIANT := goal
make APP-<appnames>
  TARGET_BUILD_APPS := appnames

2)包含:include(BUILD_SYSTEM)/node_fns.mk include(BUILD_SYSTEM)/product.mk
include $(BUILD_SYSTEM)/device.mk
这三个文件主要是定义了一些函数来相互调用或供product_config.mk文件调用

  1. 根据要编译的目标TARGET_PRODUCT,通过调用resolve-short-product-name得到mk文件,结果存放在INTERNAL_PRODUCT变量里。再将PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_xxx的值赋值给PRODUCT_xxx。ADDITIONAL_BUILD_PROPERTIES追加PRODUCT_PROPERTY_OVERRIDES。这些PRODUCT_变量都在product下的mk文件里定义。如下:
 TARGET_DEVICE,PRODUCT_LOCALES ,PRODUCT_BRAND, PRODUCT_MODEL, PRODUCT_MANUFACTURER, PRODUCT_DEFAULT_WIFI_CHANNELS, PRODUCT_POLICY,PRODUCT_COPY_FILES, PRODUCT_PROPERTY_OVERRIDES, PRODUCT_PACKAGE_OVERLAYS,  DEVICE_PACKAGE_OVERLAYS,  PRODUCT_TAGS,PRODUCT_OTA_PUBLIC_KEYS
4.设置一些列路径变量。

主机路径以HOST_OUT_* 或HOST_OUT形式,目标机路径以TARGET_OUT_* 或TARGET_OUT形式。

5.打印

生成一个以dumpvar-%或dumpvar-abs-%命名的make目标。实现是打印出%所表示的变量的值。这个变量必须要在这之前已经定义了,后一种在前面还打印出当前的路径。这两种情况必须要先设置CALLED_FROM_SETUP=true。

相关文章

  • envsetup.mk

    1.缺省值 包含:include$(BUILD_SYSTEM)/version_defaults.mk 设置那些我...

  • android源码随笔记

    一、编译源码目录使用内置宏,定义在build/core/envsetup.mk里面有定义,如果只是拷贝文件使用pr...

网友评论

      本文标题:envsetup.mk

      本文链接:https://www.haomeiwen.com/subject/pbskwftx.html