Android系统10 RK3399 init进程启动(十四) 产品配置各种变量

 配套系列教学视频链接:

      安卓系列教程之ROM系统开发-百问100ask

说明

系统:Android10.0

设备: FireFly RK3399 (ROC-RK3399-PC-PLUS)

前言

         本章重点介绍在device.mk, BoardConfig.mk, 产品名.mk中出现各种变量的意思。


一,包含

1,  inherit-product函数

表示继承另外一个文件:

$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_x86_64.mk)

$(call inherit-product-if-exists, device/mediatek/mt2712/device.mk)

2, include 文件

-include development/build/product_sdk.mk

include device/rockchip/common/BoardConfig.mk

        在Makefile中可使用“-include”来代替“include”,来忽略由于包含文件不存在或者无法创建时的错误提示(“-”的意思是告诉make,忽略此操作的错误。make继续执行),不加-,当include的文件出错或者不存在的时候, make会报错并退出。 

3, include和 inherit-product的区别

假设您PRODUCT_VAR := a在 A.mk 中,PRODUCT_VAR := b在 B.mk 中。

如果你在 A.mk 中include  B.mk,你最终会得到PRODUCT_VAR := b。

但是如果你inherit-product在 A.mk 中 B.mk,你会得到PRODUCT_VAR := a b.

并inherit-product确保您不会两次包含 makefile,因为它Records that we've visited this node, in ALL_PRODUCTS.

二, 变量

通用变量: 表示在各个平台上都会用到, 如

PRODUCT_BRAND := Android

PRODUCT_NAME := sdk_phone_x86_64

PRODUCT_DEVICE := generic_x86_64

PRODUCT_MODEL := Android SDK built for x86_64

自定义变量:表示该变量如何使用, 取决于自己,如

BOARD_DDR_VAR_ENABLED := true

功能变量:表示改变量有特殊功能

1, PRODUCT_COPY_FILES: 用于完成拷贝,例如

PRODUCT_COPY_FILES += vendor/rockchip/common/phone/etc/spn-conf.xml:system/etc/spn-conf.xml

2,PRODUCT_PROPERTY_OVERRIDES: 用于设置系统属性(覆盖),例如

PRODUCT_PROPERTY_OVERRIDES += \

    ro.product.version = 1.0.0 \

总结

通过理解文件中各个变量的意思, 方便大家对产品客制化的东西有一个初步的理解。

         

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旗浩QH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值