3、hispark_taurus产品解决方案-Vendor
产品解决方案为基于开发板的完整产品,主要包含产品对OS的适配、组件拼装配置、启动配置和文件系统配置等。产品解决方案的源码路径规则为:vendor/{产品解决方案厂商}/{产品名称}_。_产品解决方案也是一个特殊的组件。
hispark_taurus对应的产品解决方案目录在vendor\hisilicon\hispark_taurus,主要包含init进程启动配置init_configs(可选,仅linux内核需要)、产品解决方案OS适配hals、产品编译脚本BUILD.gn、产品配置文件config.json、文件系统打包配置fs.yml、hb构建配置文件ohos.build、内核特性裁剪配置文件kernel_configs。当前的文件树如下:
vendor\hisilicon\hispark_taurus
├── BUILD.gn
├── config.json
├── fs.yml
├── hals
├── hdf_config
├── init_configs
├── kernel_configs
│ ├── debug.config
│ ├── debug_tee.config
│ ├── release.config
│ └── release_tee.config
└── ohos.build
3.1 产品编译脚本BUILD.gn
产品编译的入口,主要用于编译解决方案厂商源码和拷贝启动配置文件。如果某个产品被选择为要编译的产品,那么对应产品目录下的BUILD.gn会默认编译。文件vendor\hisilicon\hispark_taurus\BUILD.gn的内容如下。group[ target名称hispark_taurus需要为所在目录的名称。
文件中依赖init_configs目录下BUILD.gn里定义的targets。
# Copyright (C) 2020 Hisilicon (Shanghai) Technologies Co., Ltd. All rights reserved.
group("hispark_taurus") {
deps = [
"init_configs:init_configs",
"init_configs:init_configs_mksh",
]
}
3.2 产品配置文件config.json
config.json为编译构建的主入口,包含了开发板、OS组件和内核等配置信息。文件vendor\hisilicon\hispark_taurus\config.json的内容如下。
- “product_name”: “ipcamera”, # 产品名称,h b set时会显示这个名称
- “version”: “3.0”, # config.json的版本号, 固定"3.0"
- “type”: “small”, # 系统类型, 可选[mini, small, standard]
- “ohos_version”: “OpenHarmony 1.0”, # 选择的OS版本
- “device_company”: “hisilicon”, # 芯